3 * Copyright (c) 2013, Jouni Malinen <j@w1.fi>
5 * This software may be distributed under the terms of the BSD license.
6 * See README for more details.
9 #include "utils/includes.h"
10 #include "utils/bitfield.h"
12 int main(int argc, char *argv[])
18 bf = bitfield_alloc(123);
22 for (i = 0; i < 123; i++) {
23 if (bitfield_is_set(bf, i) || bitfield_is_set(bf, i + 1))
25 if (i > 0 && bitfield_is_set(bf, i - 1))
28 if (!bitfield_is_set(bf, i))
30 bitfield_clear(bf, i);
31 if (bitfield_is_set(bf, i))
35 for (i = 123; i < 200; i++) {
36 if (bitfield_is_set(bf, i) || bitfield_is_set(bf, i + 1))
38 if (i > 0 && bitfield_is_set(bf, i - 1))
41 if (bitfield_is_set(bf, i))
43 bitfield_clear(bf, i);
44 if (bitfield_is_set(bf, i))
48 for (i = 0; i < 123; i++) {
49 if (bitfield_is_set(bf, i) || bitfield_is_set(bf, i + 1))
52 if (!bitfield_is_set(bf, i))
56 for (i = 0; i < 123; i++) {
57 if (!bitfield_is_set(bf, i))
59 bitfield_clear(bf, i);
60 if (bitfield_is_set(bf, i))
64 for (i = 0; i < 123; i++) {
65 if (bitfield_get_first_zero(bf) != i)
69 if (bitfield_get_first_zero(bf) != -1)
71 for (i = 0; i < 123; i++) {
72 if (!bitfield_is_set(bf, i))
74 bitfield_clear(bf, i);
75 if (bitfield_get_first_zero(bf) != i)
79 if (bitfield_get_first_zero(bf) != -1)
85 printf("%d test(s) failed\n", errors);