|
|
@ -19,9 +19,11 @@ template<unsigned int N, typename T> |
|
|
|
class prevector_tester { |
|
|
|
class prevector_tester { |
|
|
|
typedef std::vector<T> realtype; |
|
|
|
typedef std::vector<T> realtype; |
|
|
|
realtype real_vector; |
|
|
|
realtype real_vector; |
|
|
|
|
|
|
|
realtype real_vector_alt; |
|
|
|
|
|
|
|
|
|
|
|
typedef prevector<N, T> pretype; |
|
|
|
typedef prevector<N, T> pretype; |
|
|
|
pretype pre_vector; |
|
|
|
pretype pre_vector; |
|
|
|
|
|
|
|
pretype pre_vector_alt; |
|
|
|
|
|
|
|
|
|
|
|
typedef typename pretype::size_type Size; |
|
|
|
typedef typename pretype::size_type Size; |
|
|
|
|
|
|
|
|
|
|
@ -149,6 +151,12 @@ public: |
|
|
|
pre_vector.shrink_to_fit(); |
|
|
|
pre_vector.shrink_to_fit(); |
|
|
|
test(); |
|
|
|
test(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void swap() { |
|
|
|
|
|
|
|
real_vector.swap(real_vector_alt); |
|
|
|
|
|
|
|
pre_vector.swap(pre_vector_alt); |
|
|
|
|
|
|
|
test(); |
|
|
|
|
|
|
|
} |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
BOOST_AUTO_TEST_CASE(PrevectorTestInt) |
|
|
|
BOOST_AUTO_TEST_CASE(PrevectorTestInt) |
|
|
@ -204,12 +212,15 @@ BOOST_AUTO_TEST_CASE(PrevectorTestInt) |
|
|
|
if (test.size() > 0) { |
|
|
|
if (test.size() > 0) { |
|
|
|
test.update(insecure_rand() % test.size(), insecure_rand()); |
|
|
|
test.update(insecure_rand() % test.size(), insecure_rand()); |
|
|
|
} |
|
|
|
} |
|
|
|
if (((r >> 11) & 1024) == 11) { |
|
|
|
if (((r >> 11) % 1024) == 11) { |
|
|
|
test.clear(); |
|
|
|
test.clear(); |
|
|
|
} |
|
|
|
} |
|
|
|
if (((r >> 21) & 512) == 12) { |
|
|
|
if (((r >> 21) % 512) == 12) { |
|
|
|
test.assign(insecure_rand() % 32, insecure_rand()); |
|
|
|
test.assign(insecure_rand() % 32, insecure_rand()); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
if (((r >> 15) % 64) == 3) { |
|
|
|
|
|
|
|
test.swap(); |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|