diff options
Diffstat (limited to 'tests/auto')
6 files changed, 81 insertions, 0 deletions
diff --git a/tests/auto/blackbox/testdata-qt/moc-compiler-defines/main.cpp b/tests/auto/blackbox/testdata-qt/moc-compiler-defines/main.cpp new file mode 100644 index 000000000..d3b8f310e --- /dev/null +++ b/tests/auto/blackbox/testdata-qt/moc-compiler-defines/main.cpp @@ -0,0 +1,7 @@ +#include "object.h" + +int main() +{ + QObject o; + return 0; +} diff --git a/tests/auto/blackbox/testdata-qt/moc-compiler-defines/moc-compiler-defines.qbs b/tests/auto/blackbox/testdata-qt/moc-compiler-defines/moc-compiler-defines.qbs new file mode 100644 index 000000000..e184f554e --- /dev/null +++ b/tests/auto/blackbox/testdata-qt/moc-compiler-defines/moc-compiler-defines.qbs @@ -0,0 +1,3 @@ +QtApplication { + files: ["main.cpp", "object.h", "object.cpp"] +} diff --git a/tests/auto/blackbox/testdata-qt/moc-compiler-defines/object.cpp b/tests/auto/blackbox/testdata-qt/moc-compiler-defines/object.cpp new file mode 100644 index 000000000..7ffcf419b --- /dev/null +++ b/tests/auto/blackbox/testdata-qt/moc-compiler-defines/object.cpp @@ -0,0 +1,6 @@ +#include "object.h" + +Object::Object(QObject *parent) : QObject(parent) +{ + +} diff --git a/tests/auto/blackbox/testdata-qt/moc-compiler-defines/object.h b/tests/auto/blackbox/testdata-qt/moc-compiler-defines/object.h new file mode 100644 index 000000000..3221d1173 --- /dev/null +++ b/tests/auto/blackbox/testdata-qt/moc-compiler-defines/object.h @@ -0,0 +1,58 @@ +/**************************************************************************** +** +** Copyright (C) 2020 Ivan Komissarov (abbapoh@gmail.com) +** Contact: http://www.qt.io/licensing +** +** This file is part of Qbs. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef OBJECT_H +#define OBJECT_H + +#include <QtCore/QObject> + +// These were not defined during the moc run (QBS-1592). +// Do not use Q_OS_UNIX here as it is a fallback value which is defined when nothing else is. +#if defined(Q_OS_DARWIN) || defined(Q_OS_LINUX) || defined(Q_OS_WIN) + +class Object : public QObject +{ + Q_OBJECT +public: + explicit Object(QObject *parent = nullptr); +}; + +#endif + +#endif // OBJECT_H diff --git a/tests/auto/blackbox/tst_blackboxqt.cpp b/tests/auto/blackbox/tst_blackboxqt.cpp index f77509b4d..4fc038923 100644 --- a/tests/auto/blackbox/tst_blackboxqt.cpp +++ b/tests/auto/blackbox/tst_blackboxqt.cpp @@ -266,6 +266,12 @@ void TestBlackboxQt::mocFlags() QVERIFY(runQbs(params) != 0); } +void TestBlackboxQt::mocCompilerDefines() +{ + QDir::setCurrent(testDataDir + "/moc-compiler-defines"); + QCOMPARE(runQbs(), 0); +} + void TestBlackboxQt::mocSameFileName() { QDir::setCurrent(testDataDir + "/moc-same-file-name"); diff --git a/tests/auto/blackbox/tst_blackboxqt.h b/tests/auto/blackbox/tst_blackboxqt.h index 18c9d1a58..820df26d9 100644 --- a/tests/auto/blackbox/tst_blackboxqt.h +++ b/tests/auto/blackbox/tst_blackboxqt.h @@ -55,6 +55,7 @@ private slots: void mixedBuildVariants(); void mocAndCppCombining(); void mocFlags(); + void mocCompilerDefines(); void mocSameFileName(); void pkgconfig(); void pluginMetaData(); |