aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorNikolai Kosjar <nikolai.kosjar@qt.io>2018-12-04 12:53:04 +0100
committerNikolai Kosjar <nikolai.kosjar@qt.io>2018-12-06 08:55:28 +0000
commit6889f4df80d21b2121eef85cac2a6f58dd946106 (patch)
tree7565398db2beaa1f8e6969ca6b097773fc1ea8aa /tests
parent42b38cc957aeb6120cc94e44dfaaad562d448f1b (diff)
Clang: Fix tooltip for pointer to class
Detect and dereference pointer to get to the correct class. Fixes: QTCREATORBUG-21523 Change-Id: I679778b2cfbbce4466294dabdee096686f53f095 Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
Diffstat (limited to 'tests')
-rw-r--r--tests/unit/unittest/clangtooltipinfo-test.cpp12
-rw-r--r--tests/unit/unittest/data/tooltipinfo.cpp5
2 files changed, 17 insertions, 0 deletions
diff --git a/tests/unit/unittest/clangtooltipinfo-test.cpp b/tests/unit/unittest/clangtooltipinfo-test.cpp
index baca6cb623..807618deef 100644
--- a/tests/unit/unittest/clangtooltipinfo-test.cpp
+++ b/tests/unit/unittest/clangtooltipinfo-test.cpp
@@ -584,6 +584,18 @@ TEST_F(ToolTipInfo, AutoTypeBuiltin)
ASSERT_THAT(actual.text, Utf8StringLiteral("int"));
}
+TEST_F(ToolTipInfo, PointerToPointerToClass)
+{
+ ::ToolTipInfo expected(Utf8StringLiteral("Nuu **"));
+ expected.qdocIdCandidates = {Utf8StringLiteral("Nuu")};
+ expected.qdocMark = Utf8StringLiteral("Nuu");
+ expected.qdocCategory = ::ToolTipInfo::ClassOrNamespace;
+
+ const ::ToolTipInfo actual = tooltip(200, 12);
+
+ ASSERT_THAT(actual, IsToolTip(expected));
+}
+
// TODO: Test for qdoc entries, too.
TEST_F(ToolTipInfo, AutoTypeEnum)
{
diff --git a/tests/unit/unittest/data/tooltipinfo.cpp b/tests/unit/unittest/data/tooltipinfo.cpp
index 266d86bc47..bfad1fdd0f 100644
--- a/tests/unit/unittest/data/tooltipinfo.cpp
+++ b/tests/unit/unittest/data/tooltipinfo.cpp
@@ -194,3 +194,8 @@ void constructor()
ExplicitCon();
ExplicitCon(2);
}
+
+Nuu **pointers(Nuu **p1)
+{
+ return p1;
+}