From 04b180f7f25d73d002df31085cf1c352e075d4e5 Mon Sep 17 00:00:00 2001 From: Samuel Gaist Date: Thu, 7 Dec 2017 09:46:30 +0100 Subject: Improve std::tuple handling in tests Currently when doing comparison with std::tuple the fallback toString method is called which returns a Q_NULLPTR thus not allowing proper diagnostic of the values that triggered an error. This patch adds support for std::tuple to improve the tests output readability. [ChangeLog][QtTest][QCOMPARE] Now outputs contents of std::tuple on failure. Change-Id: I046a55e2ce44c3f7728d51e4745120d38aa5e007 Reviewed-by: Thiago Macieira --- .../selftests/expected_tuplediagnostics.tap | 33 ++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 tests/auto/testlib/selftests/expected_tuplediagnostics.tap (limited to 'tests/auto/testlib/selftests/expected_tuplediagnostics.tap') diff --git a/tests/auto/testlib/selftests/expected_tuplediagnostics.tap b/tests/auto/testlib/selftests/expected_tuplediagnostics.tap new file mode 100644 index 0000000000..9e007c14e1 --- /dev/null +++ b/tests/auto/testlib/selftests/expected_tuplediagnostics.tap @@ -0,0 +1,33 @@ +TAP version 13 +# tst_TupleDiagnostics +ok 1 - initTestCase() +ok 2 - testEmptyTuple() +not ok 3 - testSimpleTuple() + --- + type: QCOMPARE + message: Compared values are not the same + wanted: std::tuple(2) (std::tuple{2}) + found: std::tuple(1) (std::tuple{1}) + expected: std::tuple(2) (std::tuple{2}) + actual: std::tuple(1) (std::tuple{1}) + at: tst_TupleDiagnostics::testSimpleTuple() (/localqtbase/tests/auto/testlib/selftests/tuplediagnostics/tst_tuplediagnostics.cpp:53) + file: /localqtbase/tests/auto/testlib/selftests/tuplediagnostics/tst_tuplediagnostics.cpp + line: 53 + ... +not ok 4 - testTuple() + --- + type: QCOMPARE + message: Compared values are not the same + wanted: std::tuple(42, 'Y', "tuple2") (tuple2) + found: std::tuple(42, 'Y', "tuple1") (tuple1) + expected: std::tuple(42, 'Y', "tuple2") (tuple2) + actual: std::tuple(42, 'Y', "tuple1") (tuple1) + at: tst_TupleDiagnostics::testTuple() (/localqtbase/tests/auto/testlib/selftests/tuplediagnostics/tst_tuplediagnostics.cpp:60) + file: /localqtbase/tests/auto/testlib/selftests/tuplediagnostics/tst_tuplediagnostics.cpp + line: 60 + ... +ok 5 - cleanupTestCase() +1..5 +# tests 5 +# pass 3 +# fail 2 -- cgit v1.2.3