X-Git-Url: http://git.ozlabs.org/?p=ccan;a=blobdiff_plain;f=ccan%2Ftlist%2Ftest%2Frun.c;h=f94438eaf69551bc117754143d554ee9246ca326;hp=32bbdd8223c93a22595c32163bd190eaa6ae1b96;hb=6abc867fce8c3eba40eb26092d31e34b47dd9165;hpb=c89f34afdc6c2a98c75130470ea0b7f531a3cfe0 diff --git a/ccan/tlist/test/run.c b/ccan/tlist/test/run.c index 32bbdd82..f94438ea 100644 --- a/ccan/tlist/test/run.c +++ b/ccan/tlist/test/run.c @@ -22,7 +22,7 @@ int main(int argc, char *argv[]) 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)); @@ -73,10 +73,10 @@ int main(int argc, char *argv[]) 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; @@ -97,6 +97,25 @@ int main(int argc, char *argv[]) } 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) { @@ -122,7 +141,7 @@ int main(int argc, char *argv[]) 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(); }