|
|
@@ -6,6 +6,45 @@ static inline int test_create()
|
|
|
sl_list *a = sllist_create();
|
|
|
_assertNotNull(a);
|
|
|
_assertEqual(sllist_count(a), 0);
|
|
|
+ _assertEqual(sllist_count(sllist_clear(a)), 0);
|
|
|
+ sllist_destroy(a);
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
+static inline int test_add()
|
|
|
+{
|
|
|
+ unsigned long long i;
|
|
|
+
|
|
|
+ sl_list *a = sllist_create();
|
|
|
+ _assertNotNull(a);
|
|
|
+ _assertEqual(sllist_count(a), 0);
|
|
|
+ sllist_pushback(a, (void *)3);
|
|
|
+ _assertEqual(sllist_count(a), 1);
|
|
|
+ _assertEqual(sllist_at(a, 0), 3);
|
|
|
+ sllist_pushback(a, (void *)2);
|
|
|
+ _assertEqual(sllist_count(a), 2);
|
|
|
+ _assertEqual(sllist_at(a, 0), 3);
|
|
|
+ _assertEqual(sllist_at(a, 1), 2);
|
|
|
+ _assertEqual(sllist_popback(a), 2);
|
|
|
+ _assertEqual(sllist_count(a), 1);
|
|
|
+ _assertEqual(sllist_at(a, 0), 3);
|
|
|
+ sllist_clear(a);
|
|
|
+ _assertEqual(sllist_count(a), 0);
|
|
|
+ for (i=0; i < 1024; ++i)
|
|
|
+ sllist_pushback(a, (void *)(i * 2));
|
|
|
+ _assertEqual(sllist_count(a), 1024);
|
|
|
+ _assertEqual(sllist_at(a, 0), 0);
|
|
|
+ _assertEqual(sllist_at(a, 1023), 2046);
|
|
|
+ _assertEqual(sllist_at(a, 1024), 0);
|
|
|
+ while (sllist_count(a))
|
|
|
+ sllist_popback(a);
|
|
|
+ for (i=0; i < 1024; ++i)
|
|
|
+ sllist_pushback(a, (void *)(i * 2));
|
|
|
+ _assertEqual(sllist_count(a), 1024);
|
|
|
+ _assertEqual(sllist_at(a, 0), 0);
|
|
|
+ _assertEqual(sllist_at(a, 1023), 2046);
|
|
|
+ _assertEqual(sllist_at(a, 1024), 0);
|
|
|
+ sllist_destroy(a);
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
|
@@ -13,6 +52,7 @@ int main()
|
|
|
{
|
|
|
int success = 1;
|
|
|
success &= !test_create();
|
|
|
+ success &= !test_add();
|
|
|
exit(success ? EXIT_SUCCESS: EXIT_FAILURE);
|
|
|
}
|
|
|
|