@@ -26,7 +26,8 @@ class prevector_tester {
2626
2727 typedef typename pretype::size_type Size;
2828
29- void test () {
29+ public:
30+ void test () const {
3031 const pretype& const_pre_vector = pre_vector;
3132 assert (real_vector.size () == pre_vector.size ());
3233 assert (real_vector.empty () == pre_vector.empty ());
@@ -66,70 +67,59 @@ class prevector_tester {
6667 }
6768 }
6869
69- public:
7070 void resize (Size s) {
7171 real_vector.resize (s);
7272 assert (real_vector.size () == s);
7373 pre_vector.resize (s);
7474 assert (pre_vector.size () == s);
75- test ();
7675 }
7776
7877 void reserve (Size s) {
7978 real_vector.reserve (s);
8079 assert (real_vector.capacity () >= s);
8180 pre_vector.reserve (s);
8281 assert (pre_vector.capacity () >= s);
83- test ();
8482 }
8583
8684 void insert (Size position, const T& value) {
8785 real_vector.insert (real_vector.begin () + position, value);
8886 pre_vector.insert (pre_vector.begin () + position, value);
89- test ();
9087 }
9188
9289 void insert (Size position, Size count, const T& value) {
9390 real_vector.insert (real_vector.begin () + position, count, value);
9491 pre_vector.insert (pre_vector.begin () + position, count, value);
95- test ();
9692 }
9793
9894 template <typename I>
9995 void insert_range (Size position, I first, I last) {
10096 real_vector.insert (real_vector.begin () + position, first, last);
10197 pre_vector.insert (pre_vector.begin () + position, first, last);
102- test ();
10398 }
10499
105100 void erase (Size position) {
106101 real_vector.erase (real_vector.begin () + position);
107102 pre_vector.erase (pre_vector.begin () + position);
108- test ();
109103 }
110104
111105 void erase (Size first, Size last) {
112106 real_vector.erase (real_vector.begin () + first, real_vector.begin () + last);
113107 pre_vector.erase (pre_vector.begin () + first, pre_vector.begin () + last);
114- test ();
115108 }
116109
117110 void update (Size pos, const T& value) {
118111 real_vector[pos] = value;
119112 pre_vector[pos] = value;
120- test ();
121113 }
122114
123115 void push_back (const T& value) {
124116 real_vector.push_back (value);
125117 pre_vector.push_back (value);
126- test ();
127118 }
128119
129120 void pop_back () {
130121 real_vector.pop_back ();
131122 pre_vector.pop_back ();
132- test ();
133123 }
134124
135125 void clear () {
@@ -152,13 +142,11 @@ class prevector_tester {
152142
153143 void shrink_to_fit () {
154144 pre_vector.shrink_to_fit ();
155- test ();
156145 }
157146
158147 void swap () {
159148 real_vector.swap (real_vector_alt);
160149 pre_vector.swap (pre_vector_alt);
161- test ();
162150 }
163151
164152 void move () {
@@ -190,7 +178,6 @@ class prevector_tester {
190178 pre_vector[p] = v;
191179 ++p;
192180 }
193- test ();
194181 }
195182};
196183
@@ -277,4 +264,6 @@ void test_one_input(const std::vector<uint8_t>& buffer)
277264 }
278265 }
279266 }
267+
268+ test.test ();
280269}
0 commit comments