| 19 | using namespace GammaRay; |
| 20 | |
| 21 | class ProbeABITest : public QObject |
| 22 | { |
| 23 | Q_OBJECT |
| 24 | private slots: |
| 25 | static void testIsValid() |
| 26 | { |
| 27 | ProbeABI abi; |
| 28 | QVERIFY(!abi.isValid()); |
| 29 | |
| 30 | abi.setQtVersion(5, 2); |
| 31 | QVERIFY(!abi.isValid()); |
| 32 | |
| 33 | abi.setArchitecture(QStringLiteral("x86_64")); |
| 34 | #ifndef Q_OS_WIN |
| 35 | QVERIFY(abi.isValid()); |
| 36 | #else |
| 37 | QVERIFY(!abi.isValid()); |
| 38 | #endif |
| 39 | |
| 40 | abi.setCompiler(QStringLiteral("MSVC")); |
| 41 | abi.setCompilerVersion(QStringLiteral("140")); |
| 42 | QVERIFY(abi.isValid()); |
| 43 | } |
| 44 | |
| 45 | static void testToString_data() |
| 46 | { |
| 47 | QTest::addColumn<QString>("id", nullptr); |
| 48 | QTest::addColumn<int>("majorVersion", nullptr); |
| 49 | QTest::addColumn<int>("minorVersion", nullptr); |
| 50 | QTest::addColumn<bool>("isDebug", nullptr); |
| 51 | QTest::addColumn<QString>("arch", nullptr); |
| 52 | QTest::addColumn<QString>("compiler", nullptr); |
| 53 | QTest::addColumn<QString>("compilerVersion", nullptr); |
| 54 | |
| 55 | QTest::newRow("invalid") << QString() << -1 << -1 << false << QString() << QString() << QString(); |
| 56 | #ifndef Q_OS_WIN |
| 57 | #if defined(Q_OS_MAC) |
| 58 | QTest::newRow("mac") << "qt5_2-x86_64_debug" << 5 << 2 << true << "x86_64" |
| 59 | << "CLANG" << QString(); |
| 60 | #else |
| 61 | QTest::newRow("unix") << "qt5_2-x86_64" << 5 << 2 << true << "x86_64" |
| 62 | << "GCC" << QString(); |
| 63 | #endif |
| 64 | #else |
| 65 | QTest::newRow("msvc") << "qt5_2-MSVC-140-x86_64d" << 5 << 2 << true << "x86_64" |
| 66 | << "MSVC" |
| 67 | << "140"; |
| 68 | QTest::newRow("mingw") << "qt5_2-GNU-i686" << 5 << 2 << false << "i686" |
| 69 | << "GNU" << QString(); |
| 70 | #endif |
| 71 | } |
| 72 | |
| 73 | static void testToString() |
| 74 | { |
| 75 | QFETCH(QString, id); |
| 76 | QFETCH(int, majorVersion); |
| 77 | QFETCH(int, minorVersion); |
| 78 | QFETCH(bool, isDebug); |
nothing calls this directly
no test coverage detected