summaryrefslogtreecommitdiffstats
path: root/src/tests/list_test.c
diff options
context:
space:
mode:
authorMichael Brown2012-05-08 11:46:39 +0200
committerMichael Brown2012-05-08 13:49:01 +0200
commit6ba7fb7c5cdcdfa6f32dd1a97c3ab235ffe54616 (patch)
treed8c56e623edd926736a7f6e2faa6902e893bbfce /src/tests/list_test.c
parent[tcp] Discard all TCP connections on shutdown (diff)
downloadipxe-6ba7fb7c5cdcdfa6f32dd1a97c3ab235ffe54616.tar.gz
ipxe-6ba7fb7c5cdcdfa6f32dd1a97c3ab235ffe54616.tar.xz
ipxe-6ba7fb7c5cdcdfa6f32dd1a97c3ab235ffe54616.zip
[list] Add list_last_entry()
Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/tests/list_test.c')
-rw-r--r--src/tests/list_test.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/tests/list_test.c b/src/tests/list_test.c
index e237d56a..5184b308 100644
--- a/src/tests/list_test.c
+++ b/src/tests/list_test.c
@@ -368,16 +368,28 @@ static void list_test_exec ( void ) {
ok ( list_entry ( &list_tests[3].list, struct list_test, list )
== &list_tests[3] );
- /* Test list_first_entry() */
+ /* Test list_first_entry() and list_last_entry() */
INIT_LIST_HEAD ( list );
list_add_tail ( &list_tests[9].list, list );
list_add_tail ( &list_tests[5].list, list );
list_add_tail ( &list_tests[6].list, list );
ok ( list_first_entry ( list, struct list_test, list )
== &list_tests[9] );
+ ok ( list_last_entry ( list, struct list_test, list )
+ == &list_tests[6] );
list_del ( &list_tests[9].list );
ok ( list_first_entry ( list, struct list_test, list )
== &list_tests[5] );
+ ok ( list_last_entry ( list, struct list_test, list )
+ == &list_tests[6] );
+ list_del ( &list_tests[6].list );
+ ok ( list_first_entry ( list, struct list_test, list )
+ == &list_tests[5] );
+ ok ( list_last_entry ( list, struct list_test, list )
+ == &list_tests[5] );
+ list_del ( &list_tests[5].list );
+ ok ( list_first_entry ( list, struct list_test, list ) == NULL );
+ ok ( list_last_entry ( list, struct list_test, list ) == NULL );
/* Test list_for_each() */
INIT_LIST_HEAD ( list );