Added tests for multiple same value insert.

This commit is contained in:
John Wellbelove 2015-12-18 19:45:52 +00:00
parent 922a5abf28
commit f04e9d7302
4 changed files with 146 additions and 0 deletions

View File

@ -42,6 +42,24 @@ SOFTWARE.
namespace
{
//*************************************************************************
template <typename T1, typename T2>
bool Check_Equal(T1 begin1, T1 end1, T2 begin2)
{
while (begin1 != end1)
{
if ((begin1->first != begin2->first) || (begin1->second != begin2->second))
{
return false;
}
++begin1;
++begin2;
}
return true;
}
SUITE(test_flat_map)
{
static const size_t SIZE = 10;
@ -327,6 +345,38 @@ namespace
CHECK(isEqual);
}
//*************************************************************************
TEST_FIXTURE(SetupFixture, test_insert_value_multiple)
{
Compare_DataNDC compare_data;
DataNDC data;
data.insert(std::make_pair(0, N0));
compare_data.insert(std::make_pair(0, N0));
data.insert(std::make_pair(1, N1));
compare_data.insert(std::make_pair(1, N1));
data.insert(std::make_pair(2, N2));
compare_data.insert(std::make_pair(2, N2));
// Do it again.
data.insert(std::make_pair(0, N0));
compare_data.insert(std::make_pair(0, N0));
data.insert(std::make_pair(1, N1));
compare_data.insert(std::make_pair(1, N1));
data.insert(std::make_pair(2, N2));
compare_data.insert(std::make_pair(2, N2));
CHECK_EQUAL(compare_data.size(), data.size());
bool isEqual = Check_Equal(data.begin(),
data.end(),
compare_data.begin());
}
//*************************************************************************
TEST_FIXTURE(SetupFixture, test_insert_value_excess)
{

View File

@ -280,6 +280,40 @@ namespace
CHECK(isEqual);
}
//*************************************************************************
TEST_FIXTURE(SetupFixture, test_insert_value_multiple)
{
Compare_DataNDC compare_data;
DataNDC data;
data.insert(std::make_pair(0, N0));
compare_data.insert(std::make_pair(0, N0));
data.insert(std::make_pair(1, N1));
compare_data.insert(std::make_pair(1, N1));
data.insert(std::make_pair(2, N2));
compare_data.insert(std::make_pair(2, N2));
// Do it again.
data.insert(std::make_pair(0, N0));
compare_data.insert(std::make_pair(0, N0));
data.insert(std::make_pair(1, N1));
compare_data.insert(std::make_pair(1, N1));
data.insert(std::make_pair(2, N2));
compare_data.insert(std::make_pair(2, N2));
CHECK_EQUAL(compare_data.size(), data.size());
bool isEqual = Check_Equal(data.begin(),
data.end(),
compare_data.begin());
CHECK(isEqual);
}
//*************************************************************************
TEST_FIXTURE(SetupFixture, test_insert_value_excess)
{

View File

@ -254,6 +254,40 @@ namespace
CHECK(isEqual);
}
//*************************************************************************
TEST_FIXTURE(SetupFixture, test_insert_value_multiple)
{
Compare_DataNDC compare_data;
DataNDC data;
data.insert(N0);
compare_data.insert(N0);
data.insert(N1);
compare_data.insert(N1);
data.insert(N2);
compare_data.insert(N2);
// Do it again.
data.insert(N0);
compare_data.insert(N0);
data.insert(N1);
compare_data.insert(N1);
data.insert(N2);
compare_data.insert(N2);
CHECK_EQUAL(compare_data.size(), data.size());
bool isEqual = std::equal(data.begin(),
data.end(),
compare_data.begin());
CHECK(isEqual);
}
//*************************************************************************
TEST_FIXTURE(SetupFixture, test_insert_value_excess)
{

View File

@ -247,6 +247,34 @@ namespace
CHECK(isEqual);
}
//*************************************************************************
TEST_FIXTURE(SetupFixture, test_insert_value_multiple)
{
Compare_DataNDC compare_data;
DataNDC data;
data.insert(N0);
compare_data.insert(N0);
data.insert(N1);
compare_data.insert(N1);
data.insert(N2);
compare_data.insert(N2);
// Do it again.
data.insert(N0);
compare_data.insert(N0);
data.insert(N1);
compare_data.insert(N1);
data.insert(N2);
compare_data.insert(N2);
CHECK_EQUAL(compare_data.size(), data.size());
}
//*************************************************************************
TEST_FIXTURE(SetupFixture, test_insert_value_excess)
{