X-Git-Url: http://git.ozlabs.org/?a=blobdiff_plain;f=ccan%2Flist%2Ftest%2Frun-list_prev-list_next.c;h=b496f11f84d8bea54191be4ff4069882be5aa3f9;hb=c2fbfe5282ba264f3485586e7efa8a5967f2d386;hp=85611d9d74863d0f1cd841040fcd2085ccc797fd;hpb=d6bee61681cf3976c9c0e47e4d73b8ce18f9d7ce;p=ccan diff --git a/ccan/list/test/run-list_prev-list_next.c b/ccan/list/test/run-list_prev-list_next.c index 85611d9d..b496f11f 100644 --- a/ccan/list/test/run-list_prev-list_next.c +++ b/ccan/list/test/run-list_prev-list_next.c @@ -18,8 +18,10 @@ int main(int argc, char *argv[]) { struct parent parent; struct child c1, c2, c3; + const struct parent *p; + const struct child *c; - plan_tests(12); + plan_tests(20); parent.num_children = 0; list_head_init(&parent.children); @@ -46,5 +48,18 @@ int main(int argc, char *argv[]) ok1(list_prev(&parent.children, &c2, list) == &c1); ok1(list_next(&parent.children, &c3, list) == NULL); ok1(list_prev(&parent.children, &c3, list) == &c2); + + /* Const variants */ + p = &parent; + c = &c2; + ok1(list_next(&p->children, &c1, list) == &c2); + ok1(list_prev(&p->children, &c1, list) == NULL); + ok1(list_next(&p->children, c, list) == &c3); + ok1(list_prev(&p->children, c, list) == &c1); + ok1(list_next(&parent.children, c, list) == &c3); + ok1(list_prev(&parent.children, c, list) == &c1); + ok1(list_next(&p->children, &c3, list) == NULL); + ok1(list_prev(&p->children, &c3, list) == &c2); + return exit_status(); }