diff options
author | Orgad Shaneh <orgad.shaneh@audiocodes.com> | 2017-05-04 23:55:07 +0300 |
---|---|---|
committer | hjk <hjk@qt.io> | 2017-08-11 10:12:04 +0200 |
commit | ea4b5429bbc1281394d5d1aac82f9fdebc5b2d90 (patch) | |
tree | 30f3467eabd6d5c76f0da649e69fa259d7b60f78 | |
parent | 62133696750624d16ef729da6f0528da4b2690a8 (diff) | |
download | qt-creator-drafts/for/4.3.tar.gz |
Dumpers: Add a failing test for string display()drafts/for/masterdrafts/for/4.3
Change-Id: Ib70761ffcd76bdfed7879c222d471b50a8b32c0b
-rw-r--r-- | share/qtcreator/debugger/misctypes.py | 8 | ||||
-rw-r--r-- | tests/auto/debugger/tst_dumpers.cpp | 19 |
2 files changed, 27 insertions, 0 deletions
diff --git a/share/qtcreator/debugger/misctypes.py b/share/qtcreator/debugger/misctypes.py index 30c5985e5e..f19debfe4a 100644 --- a/share/qtcreator/debugger/misctypes.py +++ b/share/qtcreator/debugger/misctypes.py @@ -381,3 +381,11 @@ def qdump__QtcDumperTest_BufArray(d, value): for i in d.childRange(): d.putSubItem(i, (buffer + (i * objsize)).dereference().cast(valueType)) + +def qdump__QtcDumperTest_String(d, value): + with Children(d): + first = d.hexdecode(d.putSubItem('first', value['first']).value) + second = d.hexdecode(d.putSubItem('second', value['second']).value) + third = d.hexdecode(d.putSubItem('third', value['third']).value)[:-1] + d.putValue(first + ', ' + second + ', ' + third) + diff --git a/tests/auto/debugger/tst_dumpers.cpp b/tests/auto/debugger/tst_dumpers.cpp index 6fe3d99bdd..8f2f9087af 100644 --- a/tests/auto/debugger/tst_dumpers.cpp +++ b/tests/auto/debugger/tst_dumpers.cpp @@ -6846,6 +6846,25 @@ void tst_Dumpers::dumper_data() + Check("arr.2.baz", "5", "int"); + QTest::newRow("StringDisplay") + << Data("#include <string.h>\n" + "struct QtcDumperTest_String" + "{\n" + " char *first;\n" + " const char *second = \"second\";\n" + " const char third[6] = \"third\";\n" + " QtcDumperTest_String()\n" + " {\n" + " first = new char[6];\n" + " strcpy(first, \"first\");\n" + " }\n" + " ~QtcDumperTest_String() { delete[] first; }\n" + "};\n\n", + "QtcDumperTest_String str; unused(&str);\n") + + Cxx11Profile() + + Check("str", "first, second, third", "QtcDumperTest_String"); + + QTest::newRow("UndefinedStaticMembers") << Data("struct Foo { int a = 15; static int b; }; \n", "Foo f; unused(&f);\n") |