diff options
Diffstat (limited to 'src/util/test_container_slist.c')
-rw-r--r-- | src/util/test_container_slist.c | 93 |
1 files changed, 45 insertions, 48 deletions
diff --git a/src/util/test_container_slist.c b/src/util/test_container_slist.c index 394dc4cdb..1b63d3dbc 100644 --- a/src/util/test_container_slist.c +++ b/src/util/test_container_slist.c | |||
@@ -46,66 +46,64 @@ main (int argc, char *argv[]) | |||
46 | GNUNET_assert (GNUNET_CONTAINER_slist_count (l) == 0); | 46 | GNUNET_assert (GNUNET_CONTAINER_slist_count (l) == 0); |
47 | 47 | ||
48 | for (i = 0; i < 100; i++) | 48 | for (i = 0; i < 100; i++) |
49 | GNUNET_CONTAINER_slist_add (l, | 49 | GNUNET_CONTAINER_slist_add (l, GNUNET_CONTAINER_SLIST_DISPOSITION_TRANSIENT, |
50 | GNUNET_CONTAINER_SLIST_DISPOSITION_TRANSIENT, | 50 | &i, sizeof (i)); |
51 | &i, sizeof (i)); | ||
52 | GNUNET_assert (GNUNET_CONTAINER_slist_count (l) == 100); | 51 | GNUNET_assert (GNUNET_CONTAINER_slist_count (l) == 100); |
53 | 52 | ||
54 | for (it = GNUNET_CONTAINER_slist_begin (l), i = 99; | 53 | for (it = GNUNET_CONTAINER_slist_begin (l), i = 99; |
55 | GNUNET_CONTAINER_slist_end (&it) != GNUNET_YES; | 54 | GNUNET_CONTAINER_slist_end (&it) != GNUNET_YES; |
56 | GNUNET_CONTAINER_slist_next (&it), i--) | 55 | GNUNET_CONTAINER_slist_next (&it), i--) |
56 | { | ||
57 | p = GNUNET_CONTAINER_slist_get (&it, &s); | ||
58 | |||
59 | if ((p == NULL) || (i != (j = *(int *) p)) || (s != sizeof (i))) | ||
57 | { | 60 | { |
58 | p = GNUNET_CONTAINER_slist_get (&it, &s); | 61 | GNUNET_CONTAINER_slist_iter_destroy (&it); |
59 | 62 | GNUNET_assert (0); | |
60 | if ((p == NULL) || (i != (j = *(int *) p)) || (s != sizeof (i))) | ||
61 | { | ||
62 | GNUNET_CONTAINER_slist_iter_destroy (&it); | ||
63 | GNUNET_assert (0); | ||
64 | } | ||
65 | j *= 2; | ||
66 | GNUNET_CONTAINER_slist_insert (&it, | ||
67 | GNUNET_CONTAINER_SLIST_DISPOSITION_TRANSIENT, | ||
68 | &j, sizeof (j)); | ||
69 | } | 63 | } |
64 | j *= 2; | ||
65 | GNUNET_CONTAINER_slist_insert (&it, | ||
66 | GNUNET_CONTAINER_SLIST_DISPOSITION_TRANSIENT, | ||
67 | &j, sizeof (j)); | ||
68 | } | ||
70 | GNUNET_assert (GNUNET_CONTAINER_slist_count (l) == 200); | 69 | GNUNET_assert (GNUNET_CONTAINER_slist_count (l) == 200); |
71 | i = 198; | 70 | i = 198; |
72 | GNUNET_assert (GNUNET_CONTAINER_slist_contains (l, &i, sizeof (i))); | 71 | GNUNET_assert (GNUNET_CONTAINER_slist_contains (l, &i, sizeof (i))); |
73 | 72 | ||
74 | for (it = GNUNET_CONTAINER_slist_begin (l); | 73 | for (it = GNUNET_CONTAINER_slist_begin (l); |
75 | GNUNET_CONTAINER_slist_end (&it) != GNUNET_YES;) | 74 | GNUNET_CONTAINER_slist_end (&it) != GNUNET_YES;) |
76 | { | 75 | { |
77 | p = GNUNET_CONTAINER_slist_get (&it, &s); | 76 | p = GNUNET_CONTAINER_slist_get (&it, &s); |
78 | GNUNET_assert (p != NULL); | 77 | GNUNET_assert (p != NULL); |
79 | GNUNET_assert (s == sizeof (i)); | 78 | GNUNET_assert (s == sizeof (i)); |
80 | i = *(int *) p; | 79 | i = *(int *) p; |
81 | 80 | ||
82 | GNUNET_assert (GNUNET_CONTAINER_slist_next (&it) == GNUNET_YES); | 81 | GNUNET_assert (GNUNET_CONTAINER_slist_next (&it) == GNUNET_YES); |
83 | GNUNET_assert (GNUNET_CONTAINER_slist_end (&it) != GNUNET_YES); | 82 | GNUNET_assert (GNUNET_CONTAINER_slist_end (&it) != GNUNET_YES); |
84 | 83 | ||
85 | p = GNUNET_CONTAINER_slist_get (&it, &s); | 84 | p = GNUNET_CONTAINER_slist_get (&it, &s); |
86 | GNUNET_assert (p != NULL); | 85 | GNUNET_assert (p != NULL); |
87 | GNUNET_assert (s == sizeof (j)); | 86 | GNUNET_assert (s == sizeof (j)); |
88 | j = *(int *) p; | 87 | j = *(int *) p; |
89 | 88 | ||
90 | GNUNET_assert (j * 2 == i); | 89 | GNUNET_assert (j * 2 == i); |
91 | 90 | ||
92 | GNUNET_CONTAINER_slist_erase (&it); | 91 | GNUNET_CONTAINER_slist_erase (&it); |
93 | } | 92 | } |
94 | GNUNET_assert (GNUNET_CONTAINER_slist_count (l) == 100); | 93 | GNUNET_assert (GNUNET_CONTAINER_slist_count (l) == 100); |
95 | i = 99; | 94 | i = 99; |
96 | GNUNET_assert (GNUNET_CONTAINER_slist_contains (l, &i, sizeof (i)) == | 95 | GNUNET_assert (GNUNET_CONTAINER_slist_contains (l, &i, sizeof (i)) == |
97 | GNUNET_NO); | 96 | GNUNET_NO); |
98 | i = 198; | 97 | i = 198; |
99 | GNUNET_assert (GNUNET_CONTAINER_slist_contains (l, &i, sizeof (i)) == | 98 | GNUNET_assert (GNUNET_CONTAINER_slist_contains (l, &i, sizeof (i)) == |
100 | GNUNET_YES); | 99 | GNUNET_YES); |
101 | 100 | ||
102 | GNUNET_CONTAINER_slist_clear (l); | 101 | GNUNET_CONTAINER_slist_clear (l); |
103 | GNUNET_assert (GNUNET_CONTAINER_slist_count (l) == 0); | 102 | GNUNET_assert (GNUNET_CONTAINER_slist_count (l) == 0); |
104 | 103 | ||
105 | for (i = 0; i < 100; i++) | 104 | for (i = 0; i < 100; i++) |
106 | GNUNET_CONTAINER_slist_add (l, | 105 | GNUNET_CONTAINER_slist_add (l, GNUNET_CONTAINER_SLIST_DISPOSITION_TRANSIENT, |
107 | GNUNET_CONTAINER_SLIST_DISPOSITION_TRANSIENT, | 106 | &i, sizeof (i)); |
108 | &i, sizeof (i)); | ||
109 | /*check slist_append */ | 107 | /*check slist_append */ |
110 | GNUNET_CONTAINER_slist_append (l, l); | 108 | GNUNET_CONTAINER_slist_append (l, l); |
111 | GNUNET_assert (GNUNET_CONTAINER_slist_count (l) == 200); | 109 | GNUNET_assert (GNUNET_CONTAINER_slist_count (l) == 200); |
@@ -116,35 +114,34 @@ main (int argc, char *argv[]) | |||
116 | l = GNUNET_CONTAINER_slist_create (); | 114 | l = GNUNET_CONTAINER_slist_create (); |
117 | for (i = 0; i < 100; i++) | 115 | for (i = 0; i < 100; i++) |
118 | GNUNET_CONTAINER_slist_add_end (l, | 116 | GNUNET_CONTAINER_slist_add_end (l, |
119 | GNUNET_CONTAINER_SLIST_DISPOSITION_TRANSIENT, | 117 | GNUNET_CONTAINER_SLIST_DISPOSITION_TRANSIENT, |
120 | &i, sizeof (i)); | 118 | &i, sizeof (i)); |
121 | 119 | ||
122 | GNUNET_assert (GNUNET_CONTAINER_slist_count (l) == 100); | 120 | GNUNET_assert (GNUNET_CONTAINER_slist_count (l) == 100); |
123 | 121 | ||
124 | for (it = GNUNET_CONTAINER_slist_begin (l), i = 0; | 122 | for (it = GNUNET_CONTAINER_slist_begin (l), i = 0; |
125 | GNUNET_CONTAINER_slist_end (&it) != GNUNET_YES; | 123 | GNUNET_CONTAINER_slist_end (&it) != GNUNET_YES; |
126 | GNUNET_CONTAINER_slist_next (&it), i++) | 124 | GNUNET_CONTAINER_slist_next (&it), i++) |
127 | { | 125 | { |
128 | p = GNUNET_CONTAINER_slist_get (&it, &s); | 126 | p = GNUNET_CONTAINER_slist_get (&it, &s); |
129 | 127 | ||
130 | if ((p == NULL) || (i != *(int *) p) || (s != sizeof (i))) | 128 | if ((p == NULL) || (i != *(int *) p) || (s != sizeof (i))) |
131 | { | 129 | { |
132 | GNUNET_assert (0); | 130 | GNUNET_assert (0); |
133 | } | ||
134 | } | 131 | } |
132 | } | ||
135 | GNUNET_CONTAINER_slist_destroy (l); | 133 | GNUNET_CONTAINER_slist_destroy (l); |
136 | 134 | ||
137 | /*check if disp = GNUNET_CONTAINER_SLIST_DISPOSITION_DYNAMIC */ | 135 | /*check if disp = GNUNET_CONTAINER_SLIST_DISPOSITION_DYNAMIC */ |
138 | l = GNUNET_CONTAINER_slist_create (); | 136 | l = GNUNET_CONTAINER_slist_create (); |
139 | 137 | ||
140 | for (i = 0; i < 100; i++) | 138 | for (i = 0; i < 100; i++) |
141 | { | 139 | { |
142 | ip = GNUNET_malloc (sizeof (int)); | 140 | ip = GNUNET_malloc (sizeof (int)); |
143 | *ip = i; | 141 | *ip = i; |
144 | GNUNET_CONTAINER_slist_add (l, | 142 | GNUNET_CONTAINER_slist_add (l, GNUNET_CONTAINER_SLIST_DISPOSITION_DYNAMIC, |
145 | GNUNET_CONTAINER_SLIST_DISPOSITION_DYNAMIC, | 143 | ip, sizeof (int)); |
146 | ip, sizeof (int)); | 144 | } |
147 | } | ||
148 | //creat_add | 145 | //creat_add |
149 | it = GNUNET_CONTAINER_slist_begin (l); | 146 | it = GNUNET_CONTAINER_slist_begin (l); |
150 | p = GNUNET_CONTAINER_slist_get (&it, &s); | 147 | p = GNUNET_CONTAINER_slist_get (&it, &s); |