@@ -64,99 +64,6 @@ class LlvmLibcBlockStoreTest : public LIBC_NAMESPACE::testing::Test {
64
64
}
65
65
block_store.destroy (&block_store);
66
66
}
67
-
68
- template <bool REVERSE> void erase_test () {
69
- using LIBC_NAMESPACE::BlockStore;
70
- BlockStore<int , 2 , REVERSE> block_store;
71
- int i;
72
-
73
- constexpr int ARR_SIZE = 6 ;
74
-
75
- ASSERT_TRUE (block_store.empty ());
76
- for (int i = 0 ; i < ARR_SIZE; i++) {
77
- ASSERT_TRUE (block_store.push_back (i + 1 ));
78
- }
79
-
80
- // block_store state should be {1,2,3,4,5,6}
81
-
82
- block_store.erase (block_store.begin ());
83
-
84
- // FORWARD: block_store state should be {2,3,4,5,6}
85
- // REVERSE: block_store state should be {1,2,3,4,5}
86
-
87
- auto iter = block_store.begin ();
88
- for (i = 0 ; iter != block_store.end (); ++i, ++iter) {
89
- if (!REVERSE) {
90
- ASSERT_EQ (*iter, i + 2 );
91
- } else {
92
- ASSERT_EQ (*iter, (ARR_SIZE - 1 ) - i);
93
- }
94
- }
95
-
96
- // Assert that there were the correct number of elements
97
- ASSERT_EQ (i, ARR_SIZE - 1 );
98
-
99
- block_store.erase (block_store.end ());
100
-
101
- // BOTH: block_store state should be {2,3,4,5}
102
-
103
- iter = block_store.begin ();
104
- for (i = 0 ; iter != block_store.end (); ++i, ++iter) {
105
- if (!REVERSE) {
106
- ASSERT_EQ (*iter, i + 2 );
107
- } else {
108
- ASSERT_EQ (*iter, (ARR_SIZE - 1 ) - i);
109
- }
110
- }
111
-
112
- ASSERT_EQ (i, ARR_SIZE - 2 );
113
-
114
- block_store.erase (block_store.begin () + 1 );
115
-
116
- // FORWARD: block_store state should be {2,4,5}
117
- // REVERSE: block_store state should be {2,3,5}
118
-
119
- const int FORWARD_RESULTS[] = {2 , 4 , 5 };
120
- const int REVERSE_RESULTS[] = {2 , 3 , 5 };
121
-
122
- iter = block_store.begin ();
123
- for (i = 0 ; iter != block_store.end (); ++i, ++iter) {
124
- if (!REVERSE) {
125
- ASSERT_EQ (*iter, FORWARD_RESULTS[i]);
126
- } else {
127
- ASSERT_EQ (*iter, REVERSE_RESULTS[ARR_SIZE - 4 - i]); // reversed
128
- }
129
- }
130
-
131
- ASSERT_EQ (i, ARR_SIZE - 3 );
132
-
133
- block_store.erase (block_store.begin () + 1 );
134
- // BOTH: block_store state should be {2,5}
135
-
136
- iter = block_store.begin ();
137
- if (!REVERSE) {
138
- ASSERT_EQ (*iter, 2 );
139
- ASSERT_EQ (*(iter + 1 ), 5 );
140
- } else {
141
- ASSERT_EQ (*iter, 5 );
142
- ASSERT_EQ (*(iter + 1 ), 2 );
143
- }
144
-
145
- block_store.erase (block_store.begin ());
146
- // FORWARD: block_store state should be {5}
147
- // REVERSE: block_store state should be {2}
148
- iter = block_store.begin ();
149
- if (!REVERSE) {
150
- ASSERT_EQ (*iter, 5 );
151
- } else {
152
- ASSERT_EQ (*iter, 2 );
153
- }
154
-
155
- block_store.erase (block_store.begin ());
156
- // BOTH: block_store state should be {}
157
-
158
- block_store.destroy (&block_store);
159
- }
160
67
};
161
68
162
69
TEST_F (LlvmLibcBlockStoreTest, PopulateAndIterate4) {
@@ -193,8 +100,3 @@ TEST_F(LlvmLibcBlockStoreTest, Empty) {
193
100
empty_test<false >();
194
101
empty_test<true >();
195
102
}
196
-
197
- TEST_F (LlvmLibcBlockStoreTest, Erase) {
198
- erase_test<false >();
199
- erase_test<true >();
200
- }
0 commit comments