| 29 | |
| 30 | public: |
| 31 | void test() const |
| 32 | { |
| 33 | const pretype& const_pre_vector = pre_vector; |
| 34 | assert(real_vector.size() == pre_vector.size()); |
| 35 | assert(real_vector.empty() == pre_vector.empty()); |
| 36 | for (Size s = 0; s < real_vector.size(); s++) { |
| 37 | assert(real_vector[s] == pre_vector[s]); |
| 38 | assert(&(pre_vector[s]) == &(pre_vector.begin()[s])); |
| 39 | assert(&(pre_vector[s]) == &*(pre_vector.begin() + s)); |
| 40 | assert(&(pre_vector[s]) == &*((pre_vector.end() + s) - real_vector.size())); |
| 41 | } |
| 42 | // assert(realtype(pre_vector) == real_vector); |
| 43 | assert(pretype(real_vector.begin(), real_vector.end()) == pre_vector); |
| 44 | assert(pretype(pre_vector.begin(), pre_vector.end()) == pre_vector); |
| 45 | size_t pos = 0; |
| 46 | for (const T& v : pre_vector) { |
| 47 | assert(v == real_vector[pos]); |
| 48 | ++pos; |
| 49 | } |
| 50 | for (const T& v : reverse_iterate(pre_vector)) { |
| 51 | --pos; |
| 52 | assert(v == real_vector[pos]); |
| 53 | } |
| 54 | for (const T& v : const_pre_vector) { |
| 55 | assert(v == real_vector[pos]); |
| 56 | ++pos; |
| 57 | } |
| 58 | for (const T& v : reverse_iterate(const_pre_vector)) { |
| 59 | --pos; |
| 60 | assert(v == real_vector[pos]); |
| 61 | } |
| 62 | CDataStream ss1(SER_DISK, 0); |
| 63 | CDataStream ss2(SER_DISK, 0); |
| 64 | ss1 << real_vector; |
| 65 | ss2 << pre_vector; |
| 66 | assert(ss1.size() == ss2.size()); |
| 67 | for (Size s = 0; s < ss1.size(); s++) { |
| 68 | assert(ss1[s] == ss2[s]); |
| 69 | } |
| 70 | } |
| 71 | |
| 72 | void resize(Size s) |
| 73 | { |
no test coverage detected