diff options
Diffstat (limited to 'test/list.c')
-rw-r--r-- | test/list.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/test/list.c b/test/list.c index c2d098f..18b7d01 100644 --- a/test/list.c +++ b/test/list.c @@ -62,3 +62,13 @@ bool list_contains(struct list* list, void* data, int (*comparator)(const void* return false; } +bool list_contains_all(struct list* superList, struct list* subList, int (*comparator)(const void* a, const void* b)) { + struct list_elt* elt = subList->head; + while (elt != NULL) { + if (!list_contains(superList, elt->data, comparator)) { + return false; + } + elt = elt->next; + } + return true; +} |