diff options
author | Jesper K. Pedersen <jesper.pedersen@kdab.com> | 2013-05-14 10:44:09 +0200 |
---|---|---|
committer | Jesper K. Pedersen <jesper.pedersen@kdab.com> | 2013-05-14 19:33:07 +0200 |
commit | b52c0d5d00ee100eddd0215ad4c891f8067df76e (patch) | |
tree | 2c732ccdef0a38ab6edf6dc7e2008c5e85c5cce9 /utils | |
parent | 8020bb26e2ad7c2d9ee60d644f81a20830f0b7f1 (diff) |
the birth of a unit testing framework
Change-Id: Ibb634bce4db330167b1492bc7ce13f7af53a18c7
Reviewed-by: Jesper K. Pedersen <jesper.pedersen@kdab.com>
Reviewed-by: Nicolas Arnaud-Cormos <nicolas@kdab.com>
Diffstat (limited to 'utils')
-rw-r--r-- | utils/utils.cpp | 64 | ||||
-rw-r--r-- | utils/utils.h | 56 |
2 files changed, 120 insertions, 0 deletions
diff --git a/utils/utils.cpp b/utils/utils.cpp new file mode 100644 index 0000000..8ecf7ca --- /dev/null +++ b/utils/utils.cpp @@ -0,0 +1,64 @@ +/************************************************************************** +** +** This file is part of Qt Creator +** +** Copyright (C) 2013 Kläralvdalens Datakonsult AB, a KDAB Group company. +** +** Contact: Kläralvdalens Datakonsult AB (info@kdab.com) +** +** +** GNU Lesser General Public License Usage +** +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this file. +** Please review the following information to ensure the GNU Lesser General +** Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** Other Usage +** +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** If you have questions regarding the use of this file, please contact +** Nokia at info@qt.nokia.com. +** +**************************************************************************/ + +#include "utils.h" +#include <QDir> +#include "scriptrunner.h" + +namespace Scripting { +namespace Internal { + +Utils::Utils(QObject *parent) : + QObject(parent) +{ +} + +QStringList Utils::subDirectories(const QString &directory) const +{ + QDir dir(ScriptRunner::absolutePath(directory)); + return dir.entryList(QDir::Dirs | QDir::NoDotAndDotDot); +} + +QStringList Utils::backtrace() const +{ + QStringList result; + foreach ( const QString& str, ScriptRunner::instance()->scriptEngine()->currentContext()->backtrace() ) { + // Remove internal calls that is of no use to the script side + if ( !str.startsWith(QLatin1String("<"))) + result.append(QLatin1String("\t") + str); + } + return result; +} + + +} // namespace Internal +} // namespace Scripting diff --git a/utils/utils.h b/utils/utils.h new file mode 100644 index 0000000..09044c9 --- /dev/null +++ b/utils/utils.h @@ -0,0 +1,56 @@ +/************************************************************************** +** +** This file is part of Qt Creator +** +** Copyright (C) 2013 Kläralvdalens Datakonsult AB, a KDAB Group company. +** +** Contact: Kläralvdalens Datakonsult AB (info@kdab.com) +** +** +** GNU Lesser General Public License Usage +** +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this file. +** Please review the following information to ensure the GNU Lesser General +** Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** Other Usage +** +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** If you have questions regarding the use of this file, please contact +** Nokia at info@qt.nokia.com. +** +**************************************************************************/ + +#ifndef SCRIPTING_INTERNAL_UTILS_H +#define SCRIPTING_INTERNAL_UTILS_H + +#include <QObject> +#include <QStringList> + +namespace Scripting { +namespace Internal { + +class Utils : public QObject +{ + Q_OBJECT +public: + explicit Utils(QObject *parent = 0); + +public slots: + QStringList subDirectories(const QString& directory) const; + QStringList backtrace() const; +}; + +} // namespace Internal +} // namespace Scripting + +#endif // SCRIPTING_INTERNAL_UTILS_H |