From c3ee2d06bac45ef4f0fadcbbcda5086613b6941c Mon Sep 17 00:00:00 2001 From: Eike Ziller Date: Tue, 9 Aug 2016 14:36:10 +0200 Subject: Algorithm: Allow sorting container of pointers with member (function) Change-Id: I2928081750f86b66e969ec2f7ade9e67ce19a825 Reviewed-by: Orgad Shaneh --- tests/auto/algorithm/tst_algorithm.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'tests/auto/algorithm/tst_algorithm.cpp') diff --git a/tests/auto/algorithm/tst_algorithm.cpp b/tests/auto/algorithm/tst_algorithm.cpp index 768309a64f..ca45200c36 100644 --- a/tests/auto/algorithm/tst_algorithm.cpp +++ b/tests/auto/algorithm/tst_algorithm.cpp @@ -136,6 +136,16 @@ void tst_Algorithm::sort() QList s4({4, 3, 2, 1}); Utils::sort(s4, &Struct::member); QCOMPARE(s4, QList({1, 2, 3, 4})); + // member function with pointers + QList arr1({"12345", "3333", "22"}); + QList s5({&arr1[0], &arr1[1], &arr1[2]}); + Utils::sort(s5, &QString::size); + QCOMPARE(s5, QList({&arr1[2], &arr1[1], &arr1[0]})); + // member with pointers + QList arr2({4, 1, 3}); + QList s6({&arr2[0], &arr2[1], &arr2[2]}); + Utils::sort(s6, &Struct::member); + QCOMPARE(s6, QList({&arr2[1], &arr2[2], &arr2[0]})); } QTEST_MAIN(tst_Algorithm) -- cgit v1.2.1