diff options
Diffstat (limited to 'src/util/test_container_bloomfilter.c')
-rw-r--r-- | src/util/test_container_bloomfilter.c | 206 |
1 files changed, 102 insertions, 104 deletions
diff --git a/src/util/test_container_bloomfilter.c b/src/util/test_container_bloomfilter.c index 7d5de66b1..49cddac7c 100644 --- a/src/util/test_container_bloomfilter.c +++ b/src/util/test_container_bloomfilter.c | |||
@@ -75,30 +75,29 @@ main (int argc, char *argv[]) | |||
75 | bf = GNUNET_CONTAINER_bloomfilter_load (TESTFILE, SIZE, K); | 75 | bf = GNUNET_CONTAINER_bloomfilter_load (TESTFILE, SIZE, K); |
76 | 76 | ||
77 | for (i = 0; i < 200; i++) | 77 | for (i = 0; i < 200; i++) |
78 | { | 78 | { |
79 | nextHC (&tmp); | 79 | nextHC (&tmp); |
80 | GNUNET_CONTAINER_bloomfilter_add (bf, &tmp); | 80 | GNUNET_CONTAINER_bloomfilter_add (bf, &tmp); |
81 | } | 81 | } |
82 | SRANDOM (1); | 82 | SRANDOM (1); |
83 | ok1 = 0; | 83 | ok1 = 0; |
84 | for (i = 0; i < 200; i++) | 84 | for (i = 0; i < 200; i++) |
85 | { | 85 | { |
86 | nextHC (&tmp); | 86 | nextHC (&tmp); |
87 | if (GNUNET_CONTAINER_bloomfilter_test (bf, &tmp) == GNUNET_YES) | 87 | if (GNUNET_CONTAINER_bloomfilter_test (bf, &tmp) == GNUNET_YES) |
88 | ok1++; | 88 | ok1++; |
89 | } | 89 | } |
90 | if (ok1 != 200) | 90 | if (ok1 != 200) |
91 | { | 91 | { |
92 | printf ("Got %d elements out of" | 92 | printf ("Got %d elements out of" "200 expected after insertion.\n", ok1); |
93 | "200 expected after insertion.\n", ok1); | 93 | GNUNET_CONTAINER_bloomfilter_free (bf); |
94 | GNUNET_CONTAINER_bloomfilter_free (bf); | 94 | return -1; |
95 | return -1; | 95 | } |
96 | } | ||
97 | if (GNUNET_OK != GNUNET_CONTAINER_bloomfilter_get_raw_data (bf, buf, SIZE)) | 96 | if (GNUNET_OK != GNUNET_CONTAINER_bloomfilter_get_raw_data (bf, buf, SIZE)) |
98 | { | 97 | { |
99 | GNUNET_CONTAINER_bloomfilter_free (bf); | 98 | GNUNET_CONTAINER_bloomfilter_free (bf); |
100 | return -1; | 99 | return -1; |
101 | } | 100 | } |
102 | 101 | ||
103 | GNUNET_CONTAINER_bloomfilter_free (bf); | 102 | GNUNET_CONTAINER_bloomfilter_free (bf); |
104 | 103 | ||
@@ -111,94 +110,93 @@ main (int argc, char *argv[]) | |||
111 | ok1 = 0; | 110 | ok1 = 0; |
112 | ok2 = 0; | 111 | ok2 = 0; |
113 | for (i = 0; i < 200; i++) | 112 | for (i = 0; i < 200; i++) |
114 | { | 113 | { |
115 | nextHC (&tmp); | 114 | nextHC (&tmp); |
116 | if (GNUNET_CONTAINER_bloomfilter_test (bf, &tmp) == GNUNET_YES) | 115 | if (GNUNET_CONTAINER_bloomfilter_test (bf, &tmp) == GNUNET_YES) |
117 | ok1++; | 116 | ok1++; |
118 | if (GNUNET_CONTAINER_bloomfilter_test (bfi, &tmp) == GNUNET_YES) | 117 | if (GNUNET_CONTAINER_bloomfilter_test (bfi, &tmp) == GNUNET_YES) |
119 | ok2++; | 118 | ok2++; |
120 | } | 119 | } |
121 | if (ok1 != 200) | 120 | if (ok1 != 200) |
122 | { | 121 | { |
123 | printf ("Got %d elements out of 200 " | 122 | printf ("Got %d elements out of 200 " "expected after reloading.\n", ok1); |
124 | "expected after reloading.\n", ok1); | 123 | GNUNET_CONTAINER_bloomfilter_free (bf); |
125 | GNUNET_CONTAINER_bloomfilter_free (bf); | 124 | GNUNET_CONTAINER_bloomfilter_free (bfi); |
126 | GNUNET_CONTAINER_bloomfilter_free (bfi); | 125 | return -1; |
127 | return -1; | 126 | } |
128 | } | ||
129 | 127 | ||
130 | if (ok2 != 200) | 128 | if (ok2 != 200) |
131 | { | 129 | { |
132 | printf ("Got %d elements out of 200 " | 130 | printf ("Got %d elements out of 200 " |
133 | "expected after initialization.\n", ok2); | 131 | "expected after initialization.\n", ok2); |
134 | GNUNET_CONTAINER_bloomfilter_free (bf); | 132 | GNUNET_CONTAINER_bloomfilter_free (bf); |
135 | GNUNET_CONTAINER_bloomfilter_free (bfi); | 133 | GNUNET_CONTAINER_bloomfilter_free (bfi); |
136 | return -1; | 134 | return -1; |
137 | } | 135 | } |
138 | 136 | ||
139 | SRANDOM (1); | 137 | SRANDOM (1); |
140 | for (i = 0; i < 100; i++) | 138 | for (i = 0; i < 100; i++) |
141 | { | 139 | { |
142 | nextHC (&tmp); | 140 | nextHC (&tmp); |
143 | GNUNET_CONTAINER_bloomfilter_remove (bf, &tmp); | 141 | GNUNET_CONTAINER_bloomfilter_remove (bf, &tmp); |
144 | GNUNET_CONTAINER_bloomfilter_remove (bfi, &tmp); | 142 | GNUNET_CONTAINER_bloomfilter_remove (bfi, &tmp); |
145 | } | 143 | } |
146 | 144 | ||
147 | SRANDOM (1); | 145 | SRANDOM (1); |
148 | 146 | ||
149 | ok1 = 0; | 147 | ok1 = 0; |
150 | ok2 = 0; | 148 | ok2 = 0; |
151 | for (i = 0; i < 200; i++) | 149 | for (i = 0; i < 200; i++) |
152 | { | 150 | { |
153 | nextHC (&tmp); | 151 | nextHC (&tmp); |
154 | if (GNUNET_CONTAINER_bloomfilter_test (bf, &tmp) == GNUNET_YES) | 152 | if (GNUNET_CONTAINER_bloomfilter_test (bf, &tmp) == GNUNET_YES) |
155 | ok1++; | 153 | ok1++; |
156 | if (GNUNET_CONTAINER_bloomfilter_test (bfi, &tmp) == GNUNET_YES) | 154 | if (GNUNET_CONTAINER_bloomfilter_test (bfi, &tmp) == GNUNET_YES) |
157 | ok2++; | 155 | ok2++; |
158 | } | 156 | } |
159 | 157 | ||
160 | if (ok1 != 100) | 158 | if (ok1 != 100) |
161 | { | 159 | { |
162 | printf ("Expected 100 elements in loaded filter" | 160 | printf ("Expected 100 elements in loaded filter" |
163 | " after adding 200 and deleting 100, got %d\n", ok1); | 161 | " after adding 200 and deleting 100, got %d\n", ok1); |
164 | GNUNET_CONTAINER_bloomfilter_free (bf); | 162 | GNUNET_CONTAINER_bloomfilter_free (bf); |
165 | GNUNET_CONTAINER_bloomfilter_free (bfi); | 163 | GNUNET_CONTAINER_bloomfilter_free (bfi); |
166 | return -1; | 164 | return -1; |
167 | } | 165 | } |
168 | if (ok2 != 200) | 166 | if (ok2 != 200) |
169 | { | 167 | { |
170 | printf ("Expected 200 elements in initialized filter" | 168 | printf ("Expected 200 elements in initialized filter" |
171 | " after adding 200 and deleting 100 " | 169 | " after adding 200 and deleting 100 " |
172 | "(which should do nothing for a filter not backed by a file), got %d\n", | 170 | "(which should do nothing for a filter not backed by a file), got %d\n", |
173 | ok2); | 171 | ok2); |
174 | GNUNET_CONTAINER_bloomfilter_free (bf); | 172 | GNUNET_CONTAINER_bloomfilter_free (bf); |
175 | GNUNET_CONTAINER_bloomfilter_free (bfi); | 173 | GNUNET_CONTAINER_bloomfilter_free (bfi); |
176 | return -1; | 174 | return -1; |
177 | } | 175 | } |
178 | 176 | ||
179 | SRANDOM (3); | 177 | SRANDOM (3); |
180 | 178 | ||
181 | GNUNET_CONTAINER_bloomfilter_clear (bf); | 179 | GNUNET_CONTAINER_bloomfilter_clear (bf); |
182 | falseok = 0; | 180 | falseok = 0; |
183 | for (i = 0; i < 1000; i++) | 181 | for (i = 0; i < 1000; i++) |
184 | { | 182 | { |
185 | nextHC (&tmp); | 183 | nextHC (&tmp); |
186 | if (GNUNET_CONTAINER_bloomfilter_test (bf, &tmp) == GNUNET_YES) | 184 | if (GNUNET_CONTAINER_bloomfilter_test (bf, &tmp) == GNUNET_YES) |
187 | falseok++; | 185 | falseok++; |
188 | } | 186 | } |
189 | if (falseok > 0) | 187 | if (falseok > 0) |
190 | { | 188 | { |
191 | GNUNET_CONTAINER_bloomfilter_free (bf); | 189 | GNUNET_CONTAINER_bloomfilter_free (bf); |
192 | GNUNET_CONTAINER_bloomfilter_free (bfi); | 190 | GNUNET_CONTAINER_bloomfilter_free (bfi); |
193 | return -1; | 191 | return -1; |
194 | } | 192 | } |
195 | 193 | ||
196 | if (GNUNET_OK != GNUNET_CONTAINER_bloomfilter_or (bf, buf, SIZE)) | 194 | if (GNUNET_OK != GNUNET_CONTAINER_bloomfilter_or (bf, buf, SIZE)) |
197 | { | 195 | { |
198 | GNUNET_CONTAINER_bloomfilter_free (bf); | 196 | GNUNET_CONTAINER_bloomfilter_free (bf); |
199 | GNUNET_CONTAINER_bloomfilter_free (bfi); | 197 | GNUNET_CONTAINER_bloomfilter_free (bfi); |
200 | return -1; | 198 | return -1; |
201 | } | 199 | } |
202 | 200 | ||
203 | SRANDOM (2); | 201 | SRANDOM (2); |
204 | i = 20; | 202 | i = 20; |
@@ -212,30 +210,30 @@ main (int argc, char *argv[]) | |||
212 | ok1 = 0; | 210 | ok1 = 0; |
213 | ok2 = 0; | 211 | ok2 = 0; |
214 | for (i = 0; i < 20; i++) | 212 | for (i = 0; i < 20; i++) |
215 | { | 213 | { |
216 | nextHC (&tmp); | 214 | nextHC (&tmp); |
217 | if (GNUNET_CONTAINER_bloomfilter_test (bf, &tmp) == GNUNET_YES) | 215 | if (GNUNET_CONTAINER_bloomfilter_test (bf, &tmp) == GNUNET_YES) |
218 | ok1++; | 216 | ok1++; |
219 | if (GNUNET_CONTAINER_bloomfilter_test (bfi, &tmp) == GNUNET_YES) | 217 | if (GNUNET_CONTAINER_bloomfilter_test (bfi, &tmp) == GNUNET_YES) |
220 | ok2++; | 218 | ok2++; |
221 | } | 219 | } |
222 | 220 | ||
223 | if (ok1 != 20) | 221 | if (ok1 != 20) |
224 | { | 222 | { |
225 | printf ("Expected 20 elements in resized file-backed filter" | 223 | printf ("Expected 20 elements in resized file-backed filter" |
226 | " after adding 20, got %d\n", ok1); | 224 | " after adding 20, got %d\n", ok1); |
227 | GNUNET_CONTAINER_bloomfilter_free (bf); | 225 | GNUNET_CONTAINER_bloomfilter_free (bf); |
228 | GNUNET_CONTAINER_bloomfilter_free (bfi); | 226 | GNUNET_CONTAINER_bloomfilter_free (bfi); |
229 | return -1; | 227 | return -1; |
230 | } | 228 | } |
231 | if (ok2 != 20) | 229 | if (ok2 != 20) |
232 | { | 230 | { |
233 | printf ("Expected 20 elements in resized filter" | 231 | printf ("Expected 20 elements in resized filter" |
234 | " after adding 20, got %d\n", ok2); | 232 | " after adding 20, got %d\n", ok2); |
235 | GNUNET_CONTAINER_bloomfilter_free (bf); | 233 | GNUNET_CONTAINER_bloomfilter_free (bf); |
236 | GNUNET_CONTAINER_bloomfilter_free (bfi); | 234 | GNUNET_CONTAINER_bloomfilter_free (bfi); |
237 | return -1; | 235 | return -1; |
238 | } | 236 | } |
239 | 237 | ||
240 | 238 | ||
241 | GNUNET_CONTAINER_bloomfilter_free (bf); | 239 | GNUNET_CONTAINER_bloomfilter_free (bf); |