chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
list: add macro for iterating through a list an item is in, skipping the item
[elogind.git]
/
src
/
test
/
test-list.c
diff --git
a/src/test/test-list.c
b/src/test/test-list.c
index e9d47f050359720e6284e22b22226a6bf8bf79cd..399ec8e58e01375fd363180ab9824de46160744a 100644
(file)
--- a/
src/test/test-list.c
+++ b/
src/test/test-list.c
@@
-38,6
+38,13
@@
int main(int argc, const char *argv[]) {
LIST_PREPEND(item, head, &items[i]);
}
LIST_PREPEND(item, head, &items[i]);
}
+ i = 0;
+ LIST_FOREACH_OTHERS(item, cursor, &items[2]) {
+ i++;
+ assert_se(cursor != &items[2]);
+ }
+ assert_se(i == ELEMENTSOF(items)-1);
+
assert_se(!LIST_JUST_US(item, head));
assert_se(items[0].item_next == NULL);
assert_se(!LIST_JUST_US(item, head));
assert_se(items[0].item_next == NULL);
@@
-125,7
+132,7
@@
int main(int argc, const char *argv[]) {
assert_se(items[3].item_prev == &items[2]);
for (i = 0; i < ELEMENTSOF(items); i++)
assert_se(items[3].item_prev == &items[2]);
for (i = 0; i < ELEMENTSOF(items); i++)
- LIST_REMOVE(item, head, &items[i]);
+
LIST_REMOVE(item, head, &items[i]);
assert_se(head == NULL);
assert_se(head == NULL);