summaryrefslogtreecommitdiff
path: root/ccan/list/test/run-check-nonconst.c
diff options
context:
space:
mode:
Diffstat (limited to 'ccan/list/test/run-check-nonconst.c')
-rw-r--r--ccan/list/test/run-check-nonconst.c27
1 files changed, 27 insertions, 0 deletions
diff --git a/ccan/list/test/run-check-nonconst.c b/ccan/list/test/run-check-nonconst.c
new file mode 100644
index 0000000..d3cb652
--- /dev/null
+++ b/ccan/list/test/run-check-nonconst.c
@@ -0,0 +1,27 @@
+#include <ccan/list/list.h>
+#include <ccan/tap/tap.h>
+#include <ccan/list/list.c>
+#include "helper.h"
+
+struct child {
+ const char *name;
+ struct list_node list;
+};
+
+int main(void)
+{
+ struct child c1, c2;
+ struct list_head list = LIST_HEAD_INIT(list);
+
+ plan_tests(1);
+
+ list_add(&list, &c1.list);
+ list_add_tail(list_check(&list, "Bad list!"), &c2.list);
+ list_del_from(list_check(&list, "Bad list!"),
+ list_check_node(&c2.list, "Bad node!"));
+ list_del_from(list_check(&list, "Bad list!"),
+ list_check_node(&c1.list, "Bad node!"));
+ ok1(list_empty(list_check(&list, "Bad emptied list")));
+
+ return exit_status();
+}