forked from boostorg/container
add support for std::initialize_list in stable_vector constructor, operator=, assign and insert methods
This commit is contained in:
@@ -112,6 +112,44 @@ int test_cont_variants()
|
||||
return 0;
|
||||
}
|
||||
|
||||
bool test_methods_with_initializer_list_as_argument()
|
||||
{
|
||||
#if !defined(BOOST_NO_CXX11_HDR_INITIALIZER_LIST)
|
||||
{
|
||||
const stable_vector<int> testedVector = {1, 2, 3};
|
||||
const std::vector<int> expectedVector = {1, 2, 3};
|
||||
if(!test::CheckEqualContainers(&testedVector, &expectedVector)) return false;
|
||||
}
|
||||
|
||||
{
|
||||
stable_vector<int> testedVector = {1, 2, 3};
|
||||
testedVector = {11, 12, 13};
|
||||
|
||||
const std::vector<int> expectedVector = {11, 12, 13};
|
||||
if(!test::CheckEqualContainers(&testedVector, &expectedVector)) return false;
|
||||
}
|
||||
|
||||
{
|
||||
stable_vector<int> testedVector = {1, 2, 3};
|
||||
testedVector.assign({5, 6, 7});
|
||||
|
||||
const std::vector<int> expectedVector = {5, 6, 7};
|
||||
if(!test::CheckEqualContainers(&testedVector, &expectedVector)) return false;
|
||||
}
|
||||
|
||||
{
|
||||
stable_vector<int> testedVector = {1, 2, 3};
|
||||
testedVector.insert(testedVector.cend(), {5, 6, 7});
|
||||
|
||||
const std::vector<int> expectedVector = {1, 2, 3, 5, 6, 7};
|
||||
if(!test::CheckEqualContainers(&testedVector, &expectedVector)) return false;
|
||||
}
|
||||
return true;
|
||||
#else
|
||||
return true;
|
||||
#endif
|
||||
}
|
||||
|
||||
int main()
|
||||
{
|
||||
recursive_vector_test();
|
||||
@@ -178,6 +216,12 @@ int main()
|
||||
if(!boost::container::test::test_propagate_allocator<stable_vector>())
|
||||
return 1;
|
||||
|
||||
if(!test_methods_with_initializer_list_as_argument())
|
||||
{
|
||||
std::cerr << "test_methods_with_initializer_list_as_argument failed" << std::endl;
|
||||
return 1;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user