mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-05-27 20:31:52 +02:00
Merge and generalize case 3 and case 6
This commit is contained in:
parent
402ad5aaca
commit
c2ccadc26a
@ -189,7 +189,7 @@ void test_one_input(const std::vector<uint8_t>& buffer)
|
|||||||
prevector_tester<8, int> test;
|
prevector_tester<8, int> test;
|
||||||
|
|
||||||
while (prov.remaining_bytes()) {
|
while (prov.remaining_bytes()) {
|
||||||
switch (prov.ConsumeIntegralInRange<int>(0, 14 + 3 * (test.size() > 0))) {
|
switch (prov.ConsumeIntegralInRange<int>(0, 13 + 3 * (test.size() > 0))) {
|
||||||
case 0:
|
case 0:
|
||||||
test.insert(prov.ConsumeIntegralInRange<size_t>(0, test.size()), prov.ConsumeIntegral<int>());
|
test.insert(prov.ConsumeIntegralInRange<size_t>(0, test.size()), prov.ConsumeIntegral<int>());
|
||||||
break;
|
break;
|
||||||
@ -203,7 +203,7 @@ void test_one_input(const std::vector<uint8_t>& buffer)
|
|||||||
test.insert(prov.ConsumeIntegralInRange<size_t>(0, test.size()), 1 + prov.ConsumeBool(), prov.ConsumeIntegral<int>());
|
test.insert(prov.ConsumeIntegralInRange<size_t>(0, test.size()), 1 + prov.ConsumeBool(), prov.ConsumeIntegral<int>());
|
||||||
break;
|
break;
|
||||||
case 3: {
|
case 3: {
|
||||||
int del = std::min<int>(test.size(), 1 + prov.ConsumeBool());
|
int del = prov.ConsumeIntegralInRange<int>(0, test.size());
|
||||||
int beg = prov.ConsumeIntegralInRange<int>(0, test.size() - del);
|
int beg = prov.ConsumeIntegralInRange<int>(0, test.size() - del);
|
||||||
test.erase(beg, beg + del);
|
test.erase(beg, beg + del);
|
||||||
break;
|
break;
|
||||||
@ -223,19 +223,13 @@ void test_one_input(const std::vector<uint8_t>& buffer)
|
|||||||
test.insert_range(prov.ConsumeIntegralInRange<size_t>(0, test.size()), values, values + num);
|
test.insert_range(prov.ConsumeIntegralInRange<size_t>(0, test.size()), values, values + num);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 6: {
|
|
||||||
int del = std::min<int>(test.size(), 1 + prov.ConsumeIntegralInRange<int>(0, 3));
|
|
||||||
int beg = prov.ConsumeIntegralInRange<int>(0, test.size() - del);
|
|
||||||
test.erase(beg, beg + del);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case 7:
|
case 7:
|
||||||
test.reserve(prov.ConsumeIntegralInRange<size_t>(0, 32767));
|
test.reserve(prov.ConsumeIntegralInRange<size_t>(0, 32767));
|
||||||
break;
|
break;
|
||||||
case 8:
|
case 8:
|
||||||
test.shrink_to_fit();
|
test.shrink_to_fit();
|
||||||
break;
|
break;
|
||||||
case 17:
|
case 14:
|
||||||
test.update(prov.ConsumeIntegralInRange<size_t>(0, test.size() - 1), prov.ConsumeIntegral<int>());
|
test.update(prov.ConsumeIntegralInRange<size_t>(0, test.size() - 1), prov.ConsumeIntegral<int>());
|
||||||
break;
|
break;
|
||||||
case 9:
|
case 9:
|
||||||
@ -253,7 +247,7 @@ void test_one_input(const std::vector<uint8_t>& buffer)
|
|||||||
case 13:
|
case 13:
|
||||||
test.move();
|
test.move();
|
||||||
break;
|
break;
|
||||||
case 14: {
|
case 6: {
|
||||||
int num = 1 + prov.ConsumeIntegralInRange<int>(0, 15);
|
int num = 1 + prov.ConsumeIntegralInRange<int>(0, 15);
|
||||||
std::vector<int> values(num);
|
std::vector<int> values(num);
|
||||||
for (auto& v : values) {
|
for (auto& v : values) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user