summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorOlivier Goffart <ogoffart@woboq.com>2016-07-26 20:01:57 +0200
committerOlivier Goffart (Woboq GmbH) <ogoffart@woboq.com>2016-07-26 22:49:31 +0000
commitc5a4b093d051680bf7f34bb5acff16eea9d4979f (patch)
treeafc893b216ac8459a9b93bf5d4b0ccae4fd07cd2 /tests
parentb27065014fb42c8f52b7d16d2436146421a51c33 (diff)
Add QMetaEnum::isScoped to be able to destinguish C++11 enum class
Change-Id: I67b1dbd069fa57bd60e50690abb5d876edc0d1d2 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'tests')
-rw-r--r--tests/auto/tools/moc/tst_moc.cpp19
1 files changed, 11 insertions, 8 deletions
diff --git a/tests/auto/tools/moc/tst_moc.cpp b/tests/auto/tools/moc/tst_moc.cpp
index 8f1fde4f35..d9a0a6ad60 100644
--- a/tests/auto/tools/moc/tst_moc.cpp
+++ b/tests/auto/tools/moc/tst_moc.cpp
@@ -2094,18 +2094,19 @@ void tst_Moc::cxx11Enums_data()
QTest::addColumn<const QMetaObject *>("meta");
QTest::addColumn<QByteArray>("enumName");
QTest::addColumn<char>("prefix");
+ QTest::addColumn<bool>("isScoped");
const QMetaObject *meta1 = &CXX11Enums::staticMetaObject;
const QMetaObject *meta2 = &CXX11Enums2::staticMetaObject;
- QTest::newRow("EnumClass") << meta1 << QByteArray("EnumClass") << 'A';
- QTest::newRow("EnumClass 2") << meta2 << QByteArray("EnumClass") << 'A';
- QTest::newRow("TypedEnum") << meta1 << QByteArray("TypedEnum") << 'B';
- QTest::newRow("TypedEnum 2") << meta2 << QByteArray("TypedEnum") << 'B';
- QTest::newRow("TypedEnumClass") << meta1 << QByteArray("TypedEnumClass") << 'C';
- QTest::newRow("TypedEnumClass 2") << meta2 << QByteArray("TypedEnumClass") << 'C';
- QTest::newRow("NormalEnum") << meta1 << QByteArray("NormalEnum") << 'D';
- QTest::newRow("NormalEnum 2") << meta2 << QByteArray("NormalEnum") << 'D';
+ QTest::newRow("EnumClass") << meta1 << QByteArray("EnumClass") << 'A' << true;
+ QTest::newRow("EnumClass 2") << meta2 << QByteArray("EnumClass") << 'A' << true;
+ QTest::newRow("TypedEnum") << meta1 << QByteArray("TypedEnum") << 'B' << false;
+ QTest::newRow("TypedEnum 2") << meta2 << QByteArray("TypedEnum") << 'B' << false;
+ QTest::newRow("TypedEnumClass") << meta1 << QByteArray("TypedEnumClass") << 'C' << true;
+ QTest::newRow("TypedEnumClass 2") << meta2 << QByteArray("TypedEnumClass") << 'C' << true;
+ QTest::newRow("NormalEnum") << meta1 << QByteArray("NormalEnum") << 'D' << false;
+ QTest::newRow("NormalEnum 2") << meta2 << QByteArray("NormalEnum") << 'D' << false;
}
void tst_Moc::cxx11Enums()
@@ -2115,6 +2116,7 @@ void tst_Moc::cxx11Enums()
QFETCH(QByteArray, enumName);
QFETCH(char, prefix);
+ QFETCH(bool, isScoped);
int idx;
idx = meta->indexOfEnumerator(enumName);
@@ -2128,6 +2130,7 @@ void tst_Moc::cxx11Enums()
QCOMPARE(meta->enumerator(idx).keyToValue(v), i);
QCOMPARE(meta->enumerator(idx).valueToKey(i), v.constData());
}
+ QCOMPARE(meta->enumerator(idx).isScoped(), isScoped);
}
void tst_Moc::returnRefs()