From fbecf2f3fd4f81e751a63c16121b5e4dd796c08a Mon Sep 17 00:00:00 2001 From: Orgad Shaneh <orgad.shaneh@audiocodes.com> Date: Sat, 28 Dec 2013 21:48:41 +0200 Subject: [PATCH] CppTools: Add tests for nested enums Discarded during merge from 3.0 Task-number: QTCREATORBUG-5456 Change-Id: I0bb4756e3cdf3c87a4c2b0fbfe6953faaa5e1c52 Reviewed-by: Przemyslaw Gorszkowski <pgorszkowski@gmail.com> Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com> --- src/plugins/cpptools/cppcompletion_test.cpp | 39 +++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/src/plugins/cpptools/cppcompletion_test.cpp b/src/plugins/cpptools/cppcompletion_test.cpp index da0ef9fa3e3..7b78ac901a5 100644 --- a/src/plugins/cpptools/cppcompletion_test.cpp +++ b/src/plugins/cpptools/cppcompletion_test.cpp @@ -303,6 +303,7 @@ void CppToolsPlugin::test_completion() actualCompletions.sort(); expectedCompletions.sort(); + QEXPECT_FAIL("enum_in_function_in_struct_in_function", "doesn't work", Abort); QCOMPARE(actualCompletions, expectedCompletions); } @@ -1678,6 +1679,44 @@ void CppToolsPlugin::test_completion_data() << QLatin1String("e2") << QLatin1String("e3")); + QTest::newRow("enum_inside_function") << _( + "void foo()\n" + "{\n" + " enum E { val1, val2, val3 };\n" + " @\n" + "}\n" + ) << _("val") << (QStringList() + << QLatin1String("val1") + << QLatin1String("val2") + << QLatin1String("val3")); + + QTest::newRow("anon_enum_inside_function") << _( + "void foo()\n" + "{\n" + " enum { val1, val2, val3 };\n" + " @\n" + "}\n" + ) << _("val") << (QStringList() + << QLatin1String("val1") + << QLatin1String("val2") + << QLatin1String("val3")); + + QTest::newRow("enum_in_function_in_struct_in_function") << _( + "void foo()\n" + "{\n" + " struct S {\n" + " void fun()\n" + " {\n" + " enum E { val1, val2, val3 };\n" + " @\n" + " }\n" + " };\n" + "}\n" + ) << _("val") << (QStringList() + << QLatin1String("val1") + << QLatin1String("val2") + << QLatin1String("val3")); + QTest::newRow("enum_inside_function_cxx11_QTCREATORBUG5456") << _( "void foo()\n" "{\n" -- GitLab