mirror of
https://github.com/ETLCPP/etl.git
synced 2026-04-30 19:09:10 +08:00
Fixed lower and upper bound tests for std::less comparator
This commit is contained in:
parent
67dfd5c0dd
commit
9b3d8dc96e
@ -45,13 +45,13 @@ static const size_t MAX_SIZE = 10UL;
|
||||
|
||||
#define TEST_GREATER_THAN
|
||||
#ifdef TEST_GREATER_THAN
|
||||
using Data = etl::multiset<int, MAX_SIZE, std::greater<int>>;
|
||||
using IData = etl::imultiset<int, std::greater<int>>;
|
||||
using Compare_Data = std::multiset<int, std::greater<int>>;
|
||||
using Data = etl::multiset<int, MAX_SIZE, std::greater<int>>;
|
||||
using IData = etl::imultiset<int, std::greater<int>>;
|
||||
using Compare_Data = std::multiset<int, std::greater<int>>;
|
||||
#else
|
||||
using Data = etl::multiset<int, MAX_SIZE, std::less<int>>;
|
||||
using IData = etl::multiset<int, std::less<int>>;
|
||||
using Compare_Data = std::multiset<int, std::less<int>>;
|
||||
using Data = etl::multiset<int, MAX_SIZE, std::less<int>>;
|
||||
using IData = etl::imultiset<int, std::less<int>>;
|
||||
using Compare_Data = std::multiset<int, std::less<int>>;
|
||||
#endif
|
||||
|
||||
using ItemM = TestDataM<int>;
|
||||
@ -1151,30 +1151,17 @@ namespace
|
||||
CHECK_EQUAL(*i_compare, *i_data);
|
||||
|
||||
#ifdef TEST_GREATER_THAN
|
||||
i_compare = compare_data.lower_bound(-1);
|
||||
CHECK(compare_data.end() == i_compare);
|
||||
|
||||
i_data = data.lower_bound(-1);
|
||||
CHECK(data.end() == i_data);
|
||||
|
||||
i_compare = compare_data.lower_bound(99);
|
||||
i_data = data.lower_bound(99);
|
||||
CHECK(i_data != data.end());
|
||||
|
||||
if ((i_data != data.end()) && (i_compare != compare_data.end()))
|
||||
{
|
||||
CHECK(*i_compare == *i_data);
|
||||
}
|
||||
CHECK(i_data == data.begin());
|
||||
#else
|
||||
i_compare = compare_data.lower_bound(-1);
|
||||
i_data = data.lower_bound(-1);
|
||||
CHECK_EQUAL(*i_compare, *i_data);
|
||||
|
||||
i_compare = compare_data.lower_bound(99);
|
||||
CHECK_EQUAL(compare_data.end(), i_compare);
|
||||
CHECK(data.begin() == i_data);
|
||||
|
||||
i_data = data.lower_bound(99);
|
||||
CHECK_EQUAL(data.end(), i_data);
|
||||
CHECK(i_data == data.end());
|
||||
#endif
|
||||
}
|
||||
|
||||
@ -1213,30 +1200,17 @@ namespace
|
||||
CHECK_EQUAL(*i_compare, *i_data);
|
||||
|
||||
#ifdef TEST_GREATER_THAN
|
||||
i_compare = compare_data.lower_bound(-1);
|
||||
CHECK(compare_data.end() == i_compare);
|
||||
|
||||
i_data = data.lower_bound(-1);
|
||||
CHECK(data.end() == i_data);
|
||||
|
||||
i_compare = compare_data.lower_bound(99);
|
||||
i_data = data.lower_bound(99);
|
||||
CHECK(i_data != data.end());
|
||||
|
||||
if ((i_data != data.end()) && (i_compare != compare_data.end()))
|
||||
{
|
||||
CHECK(*i_compare == *i_data);
|
||||
}
|
||||
CHECK(i_data == data.begin());
|
||||
#else
|
||||
i_compare = compare_data.lower_bound(-1);
|
||||
i_data = data.lower_bound(-1);
|
||||
CHECK_EQUAL(*i_compare, *i_data);
|
||||
|
||||
i_compare = compare_data.lower_bound(99);
|
||||
CHECK_EQUAL(compare_data.end(), i_compare);
|
||||
CHECK(data.begin() == i_data);
|
||||
|
||||
i_data = data.lower_bound(99);
|
||||
CHECK_EQUAL(data.end(), i_data);
|
||||
CHECK(i_data == data.end());
|
||||
#endif
|
||||
}
|
||||
|
||||
@ -1275,30 +1249,17 @@ namespace
|
||||
CHECK_EQUAL(*i_compare, *i_data);
|
||||
|
||||
#ifdef TEST_GREATER_THAN
|
||||
i_compare = compare_data.upper_bound(-1);
|
||||
CHECK(compare_data.end() == i_compare);
|
||||
|
||||
i_data = data.upper_bound(-1);
|
||||
CHECK(data.end() == i_data);
|
||||
|
||||
i_compare = compare_data.upper_bound(99);
|
||||
i_data = data.upper_bound(99);
|
||||
CHECK(i_data != data.end());
|
||||
|
||||
if ((i_data != data.end()) && (i_compare != compare_data.end()))
|
||||
{
|
||||
CHECK(*i_compare == *i_data);
|
||||
}
|
||||
CHECK(i_data == data.begin());
|
||||
#else
|
||||
i_compare = compare_data.upper_bound(-1);
|
||||
i_data = data.upper_bound(-1);
|
||||
CHECK_EQUAL(*i_compare, *i_data);
|
||||
|
||||
i_compare = compare_data.upper_bound(99);
|
||||
CHECK_EQUAL(compare_data.end(), i_compare);
|
||||
CHECK(data.begin() == i_data);
|
||||
|
||||
i_data = data.upper_bound(99);
|
||||
CHECK_EQUAL(data.end(), i_data);
|
||||
CHECK(i_data == data.end());
|
||||
#endif
|
||||
}
|
||||
|
||||
@ -1337,30 +1298,17 @@ namespace
|
||||
CHECK_EQUAL(*i_compare, *i_data);
|
||||
|
||||
#ifdef TEST_GREATER_THAN
|
||||
i_compare = compare_data.upper_bound(-1);
|
||||
CHECK(compare_data.end() == i_compare);
|
||||
|
||||
i_data = data.upper_bound(-1);
|
||||
CHECK(data.end() == i_data);
|
||||
|
||||
i_compare = compare_data.upper_bound(99);
|
||||
i_data = data.upper_bound(99);
|
||||
CHECK(i_data != data.end());
|
||||
|
||||
if ((i_data != data.end()) && (i_compare != compare_data.end()))
|
||||
{
|
||||
CHECK(*i_compare == *i_data);
|
||||
}
|
||||
CHECK(i_data == data.begin());
|
||||
#else
|
||||
i_compare = compare_data.upper_bound(-1);
|
||||
i_data = data.upper_bound(-1);
|
||||
CHECK_EQUAL(*i_compare, *i_data);
|
||||
|
||||
i_compare = compare_data.upper_bound(99);
|
||||
CHECK_EQUAL(compare_data.end(), i_compare);
|
||||
CHECK(data.begin() == i_data);
|
||||
|
||||
i_data = data.upper_bound(99);
|
||||
CHECK_EQUAL(data.end(), i_data);
|
||||
CHECK(i_data == data.end());
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
@ -1025,30 +1025,17 @@ namespace
|
||||
CHECK_EQUAL(*i_compare, *i_data);
|
||||
|
||||
#ifdef TEST_GREATER_THAN
|
||||
i_compare = compare_data.lower_bound(-1);
|
||||
CHECK(compare_data.end() == i_compare);
|
||||
|
||||
i_data = data.lower_bound(-1);
|
||||
CHECK(data.end() == i_data);
|
||||
|
||||
i_compare = compare_data.lower_bound(11);
|
||||
i_data = data.lower_bound(11);
|
||||
CHECK(i_data != data.end());
|
||||
|
||||
if ((i_data != data.end()) && (i_compare != compare_data.end()))
|
||||
{
|
||||
CHECK(*i_compare == *i_data);
|
||||
}
|
||||
i_data = data.lower_bound(99);
|
||||
CHECK(i_data == data.begin());
|
||||
#else
|
||||
i_compare = compare_data.lower_bound(-1);
|
||||
i_data = data.lower_bound(-1);
|
||||
CHECK_EQUAL(*i_compare, *i_data);
|
||||
CHECK(data.begin() == i_data);
|
||||
|
||||
i_compare = compare_data.lower_bound(11);
|
||||
CHECK_EQUAL(compare_data.end(), i_compare);
|
||||
|
||||
i_data = data.lower_bound(11);
|
||||
CHECK_EQUAL(data.end(), i_data);
|
||||
i_data = data.lower_bound(99);
|
||||
CHECK(i_data == data.end());
|
||||
#endif
|
||||
}
|
||||
|
||||
@ -1087,25 +1074,17 @@ namespace
|
||||
CHECK_EQUAL(*i_compare, *i_data);
|
||||
|
||||
#ifdef TEST_GREATER_THAN
|
||||
i_compare = compare_data.lower_bound(-1);
|
||||
CHECK(compare_data.end() == i_compare);
|
||||
|
||||
i_data = data.lower_bound(-1);
|
||||
CHECK(data.end() == i_data);
|
||||
|
||||
i_compare = compare_data.lower_bound(11);
|
||||
i_data = data.lower_bound(11);
|
||||
CHECK_EQUAL(*i_compare, *i_data);
|
||||
i_data = data.lower_bound(99);
|
||||
CHECK(i_data == data.begin());
|
||||
#else
|
||||
i_compare = compare_data.lower_bound(-1);
|
||||
i_data = data.lower_bound(-1);
|
||||
CHECK_EQUAL(*i_compare, *i_data);
|
||||
CHECK(data.begin() == i_data);
|
||||
|
||||
i_compare = compare_data.lower_bound(11);
|
||||
CHECK_EQUAL(compare_data.end(), i_compare);
|
||||
|
||||
i_data = data.lower_bound(11);
|
||||
CHECK_EQUAL(data.end(), i_data);
|
||||
i_data = data.lower_bound(99);
|
||||
CHECK(i_data == data.end());
|
||||
#endif
|
||||
}
|
||||
|
||||
@ -1144,25 +1123,17 @@ namespace
|
||||
CHECK_EQUAL(*i_compare, *i_data);
|
||||
|
||||
#ifdef TEST_GREATER_THAN
|
||||
i_compare = compare_data.upper_bound(-1);
|
||||
CHECK(compare_data.end() == i_compare);
|
||||
|
||||
i_data = data.upper_bound(-1);
|
||||
CHECK(data.end() == i_data);
|
||||
|
||||
i_compare = compare_data.upper_bound(11);
|
||||
i_data = data.upper_bound(11);
|
||||
CHECK_EQUAL(*i_compare, *i_data);
|
||||
i_data = data.upper_bound(99);
|
||||
CHECK(i_data == data.begin());
|
||||
#else
|
||||
i_compare = compare_data.upper_bound(-1);
|
||||
i_data = data.upper_bound(-1);
|
||||
CHECK_EQUAL(*i_compare, *i_data);
|
||||
CHECK(data.begin() == i_data);
|
||||
|
||||
i_compare = compare_data.upper_bound(11);
|
||||
CHECK_EQUAL(compare_data.end(), i_compare);
|
||||
|
||||
i_data = data.upper_bound(11);
|
||||
CHECK_EQUAL(data.end(), i_data);
|
||||
i_data = data.upper_bound(99);
|
||||
CHECK(i_data == data.end());
|
||||
#endif
|
||||
}
|
||||
|
||||
@ -1201,25 +1172,17 @@ namespace
|
||||
CHECK_EQUAL(*i_compare, *i_data);
|
||||
|
||||
#ifdef TEST_GREATER_THAN
|
||||
i_compare = compare_data.upper_bound(-1);
|
||||
CHECK(compare_data.end() == i_compare);
|
||||
|
||||
i_data = data.upper_bound(-1);
|
||||
CHECK(data.end() == i_data);
|
||||
|
||||
i_compare = compare_data.upper_bound(11);
|
||||
i_data = data.upper_bound(11);
|
||||
CHECK_EQUAL(*i_compare, *i_data);
|
||||
i_data = data.upper_bound(99);
|
||||
CHECK(i_data == data.begin());
|
||||
#else
|
||||
i_compare = compare_data.upper_bound(-1);
|
||||
i_data = data.upper_bound(-1);
|
||||
CHECK_EQUAL(*i_compare, *i_data);
|
||||
CHECK(data.begin() == i_data);
|
||||
|
||||
i_compare = compare_data.upper_bound(11);
|
||||
CHECK_EQUAL(compare_data.end(), i_compare);
|
||||
|
||||
i_data = data.upper_bound(11);
|
||||
CHECK_EQUAL(data.end(), i_data);
|
||||
i_data = data.upper_bound(99);
|
||||
CHECK(i_data == data.end());
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user