summaryrefslogtreecommitdiff
path: root/src/plugins/cpptools/cppcompletion_test.cpp
diff options
context:
space:
mode:
authorOrgad Shaneh <orgad.shaneh@audiocodes.com>2013-12-26 23:56:22 +0200
committerOrgad Shaneh <orgads@gmail.com>2013-12-28 20:35:07 +0100
commita625d9656ce2e453ff5d4ccd20aea91f543ac96c (patch)
tree63aeeaff17df8a2cc8001f4f79c6af710630bb53 /src/plugins/cpptools/cppcompletion_test.cpp
parentf7e6c400945ac47e05819e6bc6828a1f6a29757d (diff)
downloadqt-creator-a625d9656ce2e453ff5d4ccd20aea91f543ac96c.tar.gz
CppTools: Add completion tests for enums inside class/namespace
Change-Id: If088533d0b51d1750e3273d7ab732dffd110ec85 Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
Diffstat (limited to 'src/plugins/cpptools/cppcompletion_test.cpp')
-rw-r--r--src/plugins/cpptools/cppcompletion_test.cpp74
1 files changed, 74 insertions, 0 deletions
diff --git a/src/plugins/cpptools/cppcompletion_test.cpp b/src/plugins/cpptools/cppcompletion_test.cpp
index 4171cc7593..d781a449e0 100644
--- a/src/plugins/cpptools/cppcompletion_test.cpp
+++ b/src/plugins/cpptools/cppcompletion_test.cpp
@@ -1691,6 +1691,80 @@ void CppToolsPlugin::test_completion_data()
<< QLatin1String("e2")
<< QLatin1String("e3"));
+ QTest::newRow("enum_inside_class") << _(
+ "struct Foo\n"
+ "{\n"
+ " enum E { val1, val2, val3 };\n"
+ " @\n"
+ "};\n"
+ "@\n"
+ ) << _("Foo::v") << (QStringList()
+ << QLatin1String("val1")
+ << QLatin1String("val2")
+ << QLatin1String("val3"));
+
+ QTest::newRow("enum_inside_class_cxx11") << _(
+ "struct Foo\n"
+ "{\n"
+ " enum E { val1, val2, val3 };\n"
+ " @\n"
+ "};\n"
+ "@\n"
+ ) << _("Foo::E::") << (QStringList()
+ << QLatin1String("E")
+ << QLatin1String("val1")
+ << QLatin1String("val2")
+ << QLatin1String("val3"));
+
+ QTest::newRow("anon_enum_inside_class") << _(
+ "struct Foo\n"
+ "{\n"
+ " enum { val1, val2, val3 };\n"
+ " @\n"
+ "};\n"
+ "@\n"
+ ) << _("Foo::v") << (QStringList()
+ << QLatin1String("val1")
+ << QLatin1String("val2")
+ << QLatin1String("val3"));
+
+ QTest::newRow("enum_inside_namespace") << _(
+ "namespace Ns\n"
+ "{\n"
+ " enum E { val1, val2, val3 };\n"
+ " @\n"
+ "};\n"
+ "@\n"
+ ) << _("Ns::v") << (QStringList()
+ << QLatin1String("val1")
+ << QLatin1String("val2")
+ << QLatin1String("val3"));
+
+ QTest::newRow("enum_inside_namespace_cxx11") << _(
+ "namespace Ns\n"
+ "{\n"
+ " enum E { val1, val2, val3 };\n"
+ " @\n"
+ "};\n"
+ "@\n"
+ ) << _("Ns::E::") << (QStringList()
+ << QLatin1String("E")
+ << QLatin1String("val1")
+ << QLatin1String("val2")
+ << QLatin1String("val3"));
+
+ QTest::newRow("anon_enum_inside_namespace") << _(
+ "namespace Ns\n"
+ "{\n"
+ " enum { val1, val2, val3 };\n"
+ " @\n"
+ "};\n"
+ "@\n"
+ ) << _("Ns::v") << (QStringList()
+ << QLatin1String("val1")
+ << QLatin1String("val2")
+ << QLatin1String("val3"));
+
QTest::newRow("lambdaCalls_1") << _(
"struct S { int bar; };\n"
"void foo()\n"