diff options
author | Eike Ziller <eike.ziller@qt.io> | 2017-12-06 16:42:06 +0100 |
---|---|---|
committer | Eike Ziller <eike.ziller@qt.io> | 2017-12-07 09:55:42 +0000 |
commit | fb4f7e74205aeda6b5289001c35b018cf9750fc9 (patch) | |
tree | cfc56bdbc9084025d3ba525f6b9f67c39b39f8b3 /tests/auto/algorithm/tst_algorithm.cpp | |
parent | d81c6c7403c64d251a059dda5f81fe72df2e5f37 (diff) | |
download | qt-creator-fb4f7e74205aeda6b5289001c35b018cf9750fc9.tar.gz |
Simplify transform and add support for more input container types
Change-Id: Ib75cfcc7741be686c0117fbb27df869e14db4f69
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
Diffstat (limited to 'tests/auto/algorithm/tst_algorithm.cpp')
-rw-r--r-- | tests/auto/algorithm/tst_algorithm.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/tests/auto/algorithm/tst_algorithm.cpp b/tests/auto/algorithm/tst_algorithm.cpp index 7ae01b91be..ab0a9177cc 100644 --- a/tests/auto/algorithm/tst_algorithm.cpp +++ b/tests/auto/algorithm/tst_algorithm.cpp @@ -28,6 +28,7 @@ #include <array> #include <deque> #include <memory> +#include <unordered_map> #include <valarray> // must get included after the containers above or gcc4.9 will have a problem using @@ -235,6 +236,18 @@ void tst_Algorithm::transform() const std::vector<int> trans = Utils::transform(v, &Struct::member); QCOMPARE(trans, std::vector<int>({1, 2, 3, 4})); } + { + // std::unordered_map -> QList + std::unordered_map<int, double> m; + m.emplace(1, 1.5); + m.emplace(3, 2.5); + m.emplace(5, 3.5); + QList<double> trans = Utils::transform<QList>(m, [](const std::pair<int, double> &in) { + return in.first * in.second; + }); + Utils::sort(trans); + QCOMPARE(trans, QList<double>({1.5, 7.5, 17.5})); + } } void tst_Algorithm::sort() |