diff --git a/tests/src/unit-comparison.cpp b/tests/src/unit-comparison.cpp index 303ac631b..5c2118c9b 100644 --- a/tests/src/unit-comparison.cpp +++ b/tests/src/unit-comparison.cpp @@ -15,9 +15,12 @@ #include "doctest_compatibility.h" +#include + #include #include #include +#include #include #define JSON_TESTS_PRIVATE @@ -777,19 +780,11 @@ struct unordered_object_t : std::map, Allocator> friend bool operator==(const unordered_object_t& lhs, const unordered_object_t& rhs) { - if (lhs.size() != rhs.size()) - { - return false; - } - for (const auto& entry : lhs) + return lhs.size() == rhs.size() && std::all_of(lhs.begin(), lhs.end(), [&rhs](const std::pair& entry) { const auto it = rhs.find(entry.first); - if (it == rhs.end() || !(it->second == entry.second)) - { - return false; - } - } - return true; + return it != rhs.end() && it->second == entry.second; + }); } friend bool operator!=(const unordered_object_t& lhs, const unordered_object_t& rhs)