aboutsummaryrefslogtreecommitdiff
path: root/src/util/test_time.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/util/test_time.c')
-rw-r--r--src/util/test_time.c111
1 files changed, 58 insertions, 53 deletions
diff --git a/src/util/test_time.c b/src/util/test_time.c
index 13f5e58a0..788884fcc 100644
--- a/src/util/test_time.c
+++ b/src/util/test_time.c
@@ -42,6 +42,7 @@ check ()
42 struct GNUNET_TIME_Relative relUnit; 42 struct GNUNET_TIME_Relative relUnit;
43 struct GNUNET_TIME_RelativeNBO reln; 43 struct GNUNET_TIME_RelativeNBO reln;
44 unsigned int i; 44 unsigned int i;
45
45 forever = GNUNET_TIME_absolute_get_forever (); 46 forever = GNUNET_TIME_absolute_get_forever ();
46 relForever = GNUNET_TIME_relative_get_forever (); 47 relForever = GNUNET_TIME_relative_get_forever ();
47 relUnit = GNUNET_TIME_relative_get_unit (); 48 relUnit = GNUNET_TIME_relative_get_unit ();
@@ -59,9 +60,10 @@ check ()
59 rel = GNUNET_TIME_relative_multiply (rel, 2); 60 rel = GNUNET_TIME_relative_multiply (rel, 2);
60 GNUNET_log_skip (0, GNUNET_NO); 61 GNUNET_log_skip (0, GNUNET_NO);
61 GNUNET_assert (rel.rel_value == GNUNET_TIME_UNIT_FOREVER_REL.rel_value); 62 GNUNET_assert (rel.rel_value == GNUNET_TIME_UNIT_FOREVER_REL.rel_value);
62 /*check zero*/ 63 /*check zero */
63 rel.rel_value = (UINT64_MAX) - 1024; 64 rel.rel_value = (UINT64_MAX) - 1024;
64 GNUNET_assert (GNUNET_TIME_relative_get_zero ().rel_value == GNUNET_TIME_relative_multiply (rel,0).rel_value); 65 GNUNET_assert (GNUNET_TIME_relative_get_zero ().rel_value ==
66 GNUNET_TIME_relative_multiply (rel, 0).rel_value);
65 67
66 /* test infinity-check for relative to absolute */ 68 /* test infinity-check for relative to absolute */
67 GNUNET_log_skip (1, GNUNET_NO); 69 GNUNET_log_skip (1, GNUNET_NO);
@@ -69,14 +71,14 @@ check ()
69 GNUNET_assert (last.abs_value == GNUNET_TIME_UNIT_FOREVER_ABS.abs_value); 71 GNUNET_assert (last.abs_value == GNUNET_TIME_UNIT_FOREVER_ABS.abs_value);
70 GNUNET_log_skip (0, GNUNET_YES); 72 GNUNET_log_skip (0, GNUNET_YES);
71 73
72 /*check relative to absolute*/ 74 /*check relative to absolute */
73 rel.rel_value = 0; 75 rel.rel_value = 0;
74 GNUNET_assert (GNUNET_TIME_absolute_get ().abs_value == 76 GNUNET_assert (GNUNET_TIME_absolute_get ().abs_value ==
75 GNUNET_TIME_relative_to_absolute(rel).abs_value); 77 GNUNET_TIME_relative_to_absolute (rel).abs_value);
76 /*check forever*/ 78 /*check forever */
77 rel.rel_value = UINT64_MAX; 79 rel.rel_value = UINT64_MAX;
78 GNUNET_assert (GNUNET_TIME_absolute_get_forever ().abs_value == 80 GNUNET_assert (GNUNET_TIME_absolute_get_forever ().abs_value ==
79 GNUNET_TIME_relative_to_absolute(rel).abs_value); 81 GNUNET_TIME_relative_to_absolute (rel).abs_value);
80 /* check overflow for r2a */ 82 /* check overflow for r2a */
81 rel.rel_value = (UINT64_MAX) - 1024; 83 rel.rel_value = (UINT64_MAX) - 1024;
82 GNUNET_log_skip (1, GNUNET_NO); 84 GNUNET_log_skip (1, GNUNET_NO);
@@ -106,8 +108,8 @@ check ()
106 GNUNET_assert (GNUNET_TIME_absolute_get_difference (future, now).rel_value == 108 GNUNET_assert (GNUNET_TIME_absolute_get_difference (future, now).rel_value ==
107 0); 109 0);
108 110
109 GNUNET_assert (GNUNET_TIME_absolute_get_difference (zero, forever).rel_value == 111 GNUNET_assert (GNUNET_TIME_absolute_get_difference (zero, forever).rel_value
110 forever.abs_value); 112 == forever.abs_value);
111 113
112 past.abs_value = now.abs_value - 1000000; 114 past.abs_value = now.abs_value - 1000000;
113 rel = GNUNET_TIME_absolute_get_duration (future); 115 rel = GNUNET_TIME_absolute_get_duration (future);
@@ -125,7 +127,7 @@ check ()
125 GNUNET_assert (rel.rel_value <= 1000000); 127 GNUNET_assert (rel.rel_value <= 1000000);
126 forever = GNUNET_TIME_absolute_get_forever (); 128 forever = GNUNET_TIME_absolute_get_forever ();
127 GNUNET_assert (GNUNET_TIME_relative_get_forever ().rel_value == 129 GNUNET_assert (GNUNET_TIME_relative_get_forever ().rel_value ==
128 GNUNET_TIME_absolute_get_remaining (forever).rel_value); 130 GNUNET_TIME_absolute_get_remaining (forever).rel_value);
129 131
130 /* check endianess */ 132 /* check endianess */
131 reln = GNUNET_TIME_relative_hton (rel); 133 reln = GNUNET_TIME_relative_hton (rel);
@@ -150,77 +152,80 @@ check ()
150 GNUNET_assert (future.abs_value == now.abs_value); 152 GNUNET_assert (future.abs_value == now.abs_value);
151 153
152 GNUNET_assert (forever.abs_value == 154 GNUNET_assert (forever.abs_value ==
153 GNUNET_TIME_absolute_subtract (forever, 155 GNUNET_TIME_absolute_subtract (forever,
154 GNUNET_TIME_UNIT_MINUTES).abs_value); 156 GNUNET_TIME_UNIT_MINUTES).abs_value);
155 /*check absolute subtract*/ 157 /*check absolute subtract */
156 now.abs_value= 50000; 158 now.abs_value = 50000;
157 rel.rel_value = 100000; 159 rel.rel_value = 100000;
158 GNUNET_assert (GNUNET_TIME_UNIT_ZERO_ABS.abs_value == 160 GNUNET_assert (GNUNET_TIME_UNIT_ZERO_ABS.abs_value ==
159 (GNUNET_TIME_absolute_subtract(now,rel)).abs_value); 161 (GNUNET_TIME_absolute_subtract (now, rel)).abs_value);
160 rel.rel_value = 10000; 162 rel.rel_value = 10000;
161 GNUNET_assert (40000 == 163 GNUNET_assert (40000 == (GNUNET_TIME_absolute_subtract (now, rel)).abs_value);
162 (GNUNET_TIME_absolute_subtract(now,rel)).abs_value); 164
165 /*check relative divide */
166 GNUNET_assert (GNUNET_TIME_UNIT_FOREVER_REL.rel_value ==
167 (GNUNET_TIME_relative_divide (rel, 0)).rel_value);
163 168
164 /*check relative divide*/
165 GNUNET_assert(GNUNET_TIME_UNIT_FOREVER_REL.rel_value ==
166 (GNUNET_TIME_relative_divide (rel,0)).rel_value);
167
168 rel = GNUNET_TIME_UNIT_FOREVER_REL; 169 rel = GNUNET_TIME_UNIT_FOREVER_REL;
169 GNUNET_assert(GNUNET_TIME_UNIT_FOREVER_REL.rel_value == 170 GNUNET_assert (GNUNET_TIME_UNIT_FOREVER_REL.rel_value ==
170 (GNUNET_TIME_relative_divide (rel,2)).rel_value); 171 (GNUNET_TIME_relative_divide (rel, 2)).rel_value);
171 172
172 rel = GNUNET_TIME_relative_divide (relUnit,2); 173 rel = GNUNET_TIME_relative_divide (relUnit, 2);
173 GNUNET_assert(rel.rel_value == relUnit.rel_value / 2); 174 GNUNET_assert (rel.rel_value == relUnit.rel_value / 2);
174 175
175 176
176 /* check Return absolute time of 0ms*/ 177 /* check Return absolute time of 0ms */
177 zero = GNUNET_TIME_absolute_get_zero (); 178 zero = GNUNET_TIME_absolute_get_zero ();
178 179
179 /* check GNUNET_TIME_calculate_eta */ 180 /* check GNUNET_TIME_calculate_eta */
180 last.abs_value = GNUNET_TIME_absolute_get ().abs_value - 1024; 181 last.abs_value = GNUNET_TIME_absolute_get ().abs_value - 1024;
181 forever = GNUNET_TIME_absolute_get_forever (); 182 forever = GNUNET_TIME_absolute_get_forever ();
182 forever.abs_value = forever.abs_value - 1024; 183 forever.abs_value = forever.abs_value - 1024;
183 GNUNET_assert(GNUNET_TIME_absolute_get_zero ().abs_value == 184 GNUNET_assert (GNUNET_TIME_absolute_get_zero ().abs_value ==
184 GNUNET_TIME_calculate_eta (forever, 50000, 100000).rel_value); 185 GNUNET_TIME_calculate_eta (forever, 50000, 100000).rel_value);
185 /* check zero */ 186 /* check zero */
186 GNUNET_log_skip (1, GNUNET_NO); 187 GNUNET_log_skip (1, GNUNET_NO);
187 GNUNET_assert(GNUNET_TIME_UNIT_ZERO.rel_value == 188 GNUNET_assert (GNUNET_TIME_UNIT_ZERO.rel_value ==
188 (GNUNET_TIME_calculate_eta (last, 60000, 50000)).rel_value); 189 (GNUNET_TIME_calculate_eta (last, 60000, 50000)).rel_value);
189 GNUNET_log_skip (0, GNUNET_YES); 190 GNUNET_log_skip (0, GNUNET_YES);
190 /*check forever*/ 191 /*check forever */
191 GNUNET_assert(GNUNET_TIME_UNIT_FOREVER_REL.rel_value == 192 GNUNET_assert (GNUNET_TIME_UNIT_FOREVER_REL.rel_value ==
192 (GNUNET_TIME_calculate_eta (last, 0, 50000)).rel_value); 193 (GNUNET_TIME_calculate_eta (last, 0, 50000)).rel_value);
193 194
194 /*check relative subtract*/ 195 /*check relative subtract */
195 now = GNUNET_TIME_absolute_get (); 196 now = GNUNET_TIME_absolute_get ();
196 rel.rel_value = now.abs_value; 197 rel.rel_value = now.abs_value;
197 relForever.rel_value = rel.rel_value + 1024; 198 relForever.rel_value = rel.rel_value + 1024;
198 GNUNET_assert(1024 == 199 GNUNET_assert (1024 ==
199 GNUNET_TIME_relative_subtract(relForever,rel).rel_value); 200 GNUNET_TIME_relative_subtract (relForever, rel).rel_value);
200 /*check zero*/ 201 /*check zero */
201 GNUNET_assert(GNUNET_TIME_relative_get_zero ().rel_value == 202 GNUNET_assert (GNUNET_TIME_relative_get_zero ().rel_value ==
202 GNUNET_TIME_relative_subtract(rel,relForever).rel_value); 203 GNUNET_TIME_relative_subtract (rel, relForever).rel_value);
203 /*check forever*/ 204 /*check forever */
204 rel.rel_value = UINT64_MAX; 205 rel.rel_value = UINT64_MAX;
205 GNUNET_assert(GNUNET_TIME_relative_get_forever ().rel_value == 206 GNUNET_assert (GNUNET_TIME_relative_get_forever ().rel_value ==
206 GNUNET_TIME_relative_subtract(rel,relForever).rel_value); 207 GNUNET_TIME_relative_subtract (rel, relForever).rel_value);
207 208
208 /*check GNUNET_TIME_relative_min*/ 209 /*check GNUNET_TIME_relative_min */
209 now = GNUNET_TIME_absolute_get (); 210 now = GNUNET_TIME_absolute_get ();
210 rel.rel_value = now.abs_value; 211 rel.rel_value = now.abs_value;
211 relForever.rel_value = rel.rel_value - 1024; 212 relForever.rel_value = rel.rel_value - 1024;
212 GNUNET_assert(relForever.rel_value == GNUNET_TIME_relative_min(rel,relForever).rel_value); 213 GNUNET_assert (relForever.rel_value ==
214 GNUNET_TIME_relative_min (rel, relForever).rel_value);
213 215
214 /*check GNUNET_TIME_relative_max */ 216 /*check GNUNET_TIME_relative_max */
215 GNUNET_assert(rel.rel_value == GNUNET_TIME_relative_max(rel,relForever).rel_value); 217 GNUNET_assert (rel.rel_value ==
216 218 GNUNET_TIME_relative_max (rel, relForever).rel_value);
217 /*check GNUNET_TIME_absolute_min*/ 219
220 /*check GNUNET_TIME_absolute_min */
218 now = GNUNET_TIME_absolute_get (); 221 now = GNUNET_TIME_absolute_get ();
219 last.abs_value = now.abs_value - 1024; 222 last.abs_value = now.abs_value - 1024;
220 GNUNET_assert(last.abs_value == GNUNET_TIME_absolute_min(now,last).abs_value); 223 GNUNET_assert (last.abs_value ==
224 GNUNET_TIME_absolute_min (now, last).abs_value);
221 225
222 /*check GNUNET_TIME_absolute_max*/ 226 /*check GNUNET_TIME_absolute_max */
223 GNUNET_assert(now.abs_value == GNUNET_TIME_absolute_max(now,last).abs_value); 227 GNUNET_assert (now.abs_value ==
228 GNUNET_TIME_absolute_max (now, last).abs_value);
224 229
225 return 0; 230 return 0;
226} 231}