summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOrgad Shaneh <orgad.shaneh@audiocodes.com>2013-11-11 22:38:03 +0200
committerOrgad Shaneh <orgads@gmail.com>2013-12-04 14:46:11 +0100
commite20391ef6e9a8497f95d88fdb73b0fe4b3ab30bc (patch)
treecbfe905bd11c1af065dfdbbcd801d9f7a75ef317
parent49b9cc9883d4074f1c34db80bf7b4ba80550b678 (diff)
downloadqt-creator-e20391ef6e9a8497f95d88fdb73b0fe4b3ab30bc.tar.gz
CppEditor: Add failing tests for virtual destructor lookup
Change-Id: I2fdf1c72b3e5ffe25b5184c1161a803c4427945b Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
-rw-r--r--src/plugins/cppeditor/cppvirtualfunctionassistprovider.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/plugins/cppeditor/cppvirtualfunctionassistprovider.cpp b/src/plugins/cppeditor/cppvirtualfunctionassistprovider.cpp
index 86f802119e..4530a47b98 100644
--- a/src/plugins/cppeditor/cppvirtualfunctionassistprovider.cpp
+++ b/src/plugins/cppeditor/cppvirtualfunctionassistprovider.cpp
@@ -387,6 +387,9 @@ void CppEditorPlugin::test_functionhelper_virtualFunctions()
else
QCOMPARE(virtuality, Virtual);
} else {
+ QEXPECT_FAIL("virtual-dtor-dtor", "Not implemented", Abort);
+ if (allFunctions.size() == 3)
+ QEXPECT_FAIL("dtor-virtual-dtor-dtor", "Not implemented", Abort);
QCOMPARE(virtuality, NotVirtual);
}
if (firstVirtualIndex == -1)
@@ -464,6 +467,19 @@ void CppEditorPlugin::test_functionhelper_virtualFunctions_data()
<< _("struct Base { Base() {} virtual ~Base() {} };\n")
<< (VirtualityList() << NotVirtual << Virtual)
<< (QList<int>() << -1 << 1);
+
+ QTest::newRow("virtual-dtor-dtor")
+ << _("struct Base { virtual ~Base() {} };\n"
+ "struct Derived : Base { ~Derived() {} };\n")
+ << (VirtualityList() << Virtual << Virtual)
+ << (QList<int>() << 0 << 0);
+
+ QTest::newRow("dtor-virtual-dtor-dtor")
+ << _("struct Base { ~Base() {} };\n"
+ "struct Derived : Base { virtual ~Derived() {} };\n"
+ "struct Derived2 : Derived { ~Derived2() {} };\n")
+ << (VirtualityList() << NotVirtual << Virtual << Virtual)
+ << (QList<int>() << -1 << 1 << 1);
}
} // namespace Internal