unsigned int i;
struct tlist_children tlist = TLIST_INIT(tlist);
- plan_tests(44);
+ plan_tests(48);
/* Test TLIST_INIT, and tlist_empty */
ok1(tlist_empty(&tlist));
ok1(tlist_check(&tlist, NULL));
ok1(tlist_check(&parent.children, NULL));
/* Test tlist_top */
- ok1(tlist_top(&parent.children, struct child, list) == &c1);
+ ok1(tlist_top(&parent.children, list) == &c1);
/* Test list_tail */
- ok1(tlist_tail(&parent.children, struct child, list) == &c3);
+ ok1(tlist_tail(&parent.children, list) == &c3);
/* Test tlist_for_each. */
i = 0;
}
ok1(i == 3);
+ /* Test tlist_for_each_rev. */
+ i = 0;
+ tlist_for_each_rev(&parent.children, c, list) {
+ switch (i++) {
+ case 0:
+ ok1(c == &c3);
+ break;
+ case 1:
+ ok1(c == &c2);
+ break;
+ case 2:
+ ok1(c == &c1);
+ break;
+ }
+ if (i > 2)
+ break;
+ }
+ ok1(i == 3);
+
/* Test tlist_for_each_safe, tlist_del and tlist_del_from. */
i = 0;
tlist_for_each_safe(&parent.children, c, n, list) {
ok1(tlist_empty(&parent.children));
/* Test list_top/list_tail on empty list. */
- ok1(tlist_top(&parent.children, struct child, list) == NULL);
- ok1(tlist_tail(&parent.children, struct child, list) == NULL);
+ ok1(tlist_top(&parent.children, list) == (struct child *)NULL);
+ ok1(tlist_tail(&parent.children, list) == (struct child *)NULL);
return exit_status();
}