Changeset View
Changeset View
Standalone View
Standalone View
src/test/prevector_tests.cpp
Show First 20 Lines • Show All 187 Lines • ▼ Show 20 Lines | |||||
}; | }; | ||||
BOOST_AUTO_TEST_CASE(PrevectorTestInt) { | BOOST_AUTO_TEST_CASE(PrevectorTestInt) { | ||||
for (int j = 0; j < 64; j++) { | for (int j = 0; j < 64; j++) { | ||||
prevector_tester<8, int> test; | prevector_tester<8, int> test; | ||||
for (int i = 0; i < 2048; i++) { | for (int i = 0; i < 2048; i++) { | ||||
if (InsecureRandBits(2) == 0) { | if (InsecureRandBits(2) == 0) { | ||||
test.insert(InsecureRandRange(test.size() + 1), | test.insert(InsecureRandRange(test.size() + 1), | ||||
insecure_rand()); | InsecureRand32()); | ||||
} | } | ||||
if (test.size() > 0 && InsecureRandBits(2) == 1) { | if (test.size() > 0 && InsecureRandBits(2) == 1) { | ||||
test.erase(InsecureRandRange(test.size())); | test.erase(InsecureRandRange(test.size())); | ||||
} | } | ||||
if (InsecureRandBits(3) == 2) { | if (InsecureRandBits(3) == 2) { | ||||
int new_size = std::max( | int new_size = std::max( | ||||
0, std::min(30, int(test.size()) + | 0, std::min(30, int(test.size()) + | ||||
int(InsecureRandRange(5)) - 2)); | int(InsecureRandRange(5)) - 2)); | ||||
test.resize(new_size); | test.resize(new_size); | ||||
} | } | ||||
if (InsecureRandBits(3) == 3) { | if (InsecureRandBits(3) == 3) { | ||||
test.insert(InsecureRandRange(test.size() + 1), | test.insert(InsecureRandRange(test.size() + 1), | ||||
1 + InsecureRandBool(), insecure_rand()); | 1 + InsecureRandBool(), InsecureRand32()); | ||||
} | } | ||||
if (InsecureRandBits(3) == 4) { | if (InsecureRandBits(3) == 4) { | ||||
int del = std::min<int>(test.size(), 1 + (InsecureRandBool())); | int del = std::min<int>(test.size(), 1 + (InsecureRandBool())); | ||||
int beg = InsecureRandRange(test.size() + 1 - del); | int beg = InsecureRandRange(test.size() + 1 - del); | ||||
test.erase(beg, beg + del); | test.erase(beg, beg + del); | ||||
} | } | ||||
if (InsecureRandBits(4) == 5) { | if (InsecureRandBits(4) == 5) { | ||||
test.push_back(insecure_rand()); | test.push_back(InsecureRand32()); | ||||
} | } | ||||
if (test.size() > 0 && InsecureRandBits(4) == 6) { | if (test.size() > 0 && InsecureRandBits(4) == 6) { | ||||
test.pop_back(); | test.pop_back(); | ||||
} | } | ||||
if (InsecureRandBits(5) == 7) { | if (InsecureRandBits(5) == 7) { | ||||
int values[4]; | int values[4]; | ||||
int num = 1 + (InsecureRandBits(2)); | int num = 1 + (InsecureRandBits(2)); | ||||
for (int k = 0; k < num; k++) { | for (int k = 0; k < num; k++) { | ||||
values[k] = insecure_rand(); | values[k] = InsecureRand32(); | ||||
} | } | ||||
test.insert_range(InsecureRandRange(test.size() + 1), values, | test.insert_range(InsecureRandRange(test.size() + 1), values, | ||||
values + num); | values + num); | ||||
} | } | ||||
if (InsecureRandBits(5) == 8) { | if (InsecureRandBits(5) == 8) { | ||||
int del = std::min<int>(test.size(), 1 + (InsecureRandBits(2))); | int del = std::min<int>(test.size(), 1 + (InsecureRandBits(2))); | ||||
int beg = InsecureRandRange(test.size() + 1 - del); | int beg = InsecureRandRange(test.size() + 1 - del); | ||||
test.erase(beg, beg + del); | test.erase(beg, beg + del); | ||||
} | } | ||||
if (InsecureRandBits(5) == 9) { | if (InsecureRandBits(5) == 9) { | ||||
test.reserve(InsecureRandBits(5)); | test.reserve(InsecureRandBits(5)); | ||||
} | } | ||||
if (InsecureRandBits(6) == 10) { | if (InsecureRandBits(6) == 10) { | ||||
test.shrink_to_fit(); | test.shrink_to_fit(); | ||||
} | } | ||||
if (test.size() > 0) { | if (test.size() > 0) { | ||||
test.update(InsecureRandRange(test.size()), insecure_rand()); | test.update(InsecureRandRange(test.size()), InsecureRand32()); | ||||
} | } | ||||
if (InsecureRandBits(10) == 11) { | if (InsecureRandBits(10) == 11) { | ||||
test.clear(); | test.clear(); | ||||
} | } | ||||
if (InsecureRandBits(9) == 12) { | if (InsecureRandBits(9) == 12) { | ||||
test.assign(InsecureRandBits(5), insecure_rand()); | test.assign(InsecureRandBits(5), InsecureRand32()); | ||||
} | } | ||||
if (InsecureRandBits(3) == 3) { | if (InsecureRandBits(3) == 3) { | ||||
test.swap(); | test.swap(); | ||||
} | } | ||||
if (InsecureRandBits(4) == 8) { | if (InsecureRandBits(4) == 8) { | ||||
test.copy(); | test.copy(); | ||||
} | } | ||||
if (InsecureRandBits(5) == 18) { | if (InsecureRandBits(5) == 18) { | ||||
test.move(); | test.move(); | ||||
} | } | ||||
} | } | ||||
} | } | ||||
} | } | ||||
BOOST_AUTO_TEST_SUITE_END() | BOOST_AUTO_TEST_SUITE_END() |