local_check(v == real_vector[pos++]); } BOOST_REVERSE_FOREACH(const T& v, pre_vector) { local_check(v == real_vector[--pos]); } BOOST_FOREACH(const T& v, const_pre_vector) { local_check(v == real_vector[pos++]); } BOOST_REVERSE_FOREACH(const T& v, const_pre_vector) { local_check(v == real_vector[--pos]); } CDataStream ss1(SER_DISK, 0); CDataStream ss2(SER_DISK, 0); ss1 << real_vector; ss2 << pre_vector; local_check_equal(ss1.size(), ss2.size()); for (Size s = 0; s < ss1.size(); s++) { local_check_equal(ss1[s], ss2[s]); } } public: void resize(Size s) { real_vector.resize(s); local_check_equal(real_vector.size(), s); pre_vector.resize(s); local_check_equal(pre_vector.size(), s); test(); } void reserve(Size s) {
BOOST_CHECK(v == real_vector[pos++]); } BOOST_REVERSE_FOREACH(const T& v, pre_vector) { BOOST_CHECK(v == real_vector[--pos]); } BOOST_FOREACH(const T& v, const_pre_vector) { BOOST_CHECK(v == real_vector[pos++]); } BOOST_REVERSE_FOREACH(const T& v, const_pre_vector) { BOOST_CHECK(v == real_vector[--pos]); } CDataStream ss1(SER_DISK, 0); CDataStream ss2(SER_DISK, 0); ss1 << real_vector; ss2 << pre_vector; BOOST_CHECK_EQUAL(ss1.size(), ss2.size()); for (Size s = 0; s < ss1.size(); s++) { BOOST_CHECK_EQUAL(ss1[s], ss2[s]); } } public: void resize(Size s) { real_vector.resize(s); BOOST_CHECK_EQUAL(real_vector.size(), s); pre_vector.resize(s); BOOST_CHECK_EQUAL(pre_vector.size(), s); test(); } void reserve(Size s) {