The following commit has been merged in the master branch: commit 7f942ae689000477f2adba796a6a6fbb3203d4b2 Author: Guillem Jover <guil...@debian.org> Date: Mon Feb 20 17:10:21 2012 +0100
libdpkg: Check that the queue and list unit tests store the correct pkg diff --git a/lib/dpkg/test/t-pkg-list.c b/lib/dpkg/test/t-pkg-list.c index 9a446e3..3de28a2 100644 --- a/lib/dpkg/test/t-pkg-list.c +++ b/lib/dpkg/test/t-pkg-list.c @@ -2,7 +2,7 @@ * libdpkg - Debian packaging suite library routines * t-pkg-list.c - test pkg-list implementation * - * Copyright © 2010 Guillem Jover <guil...@debian.org> + * Copyright © 2010,2012 Guillem Jover <guil...@debian.org> * * This is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -29,22 +29,22 @@ static void test_pkg_list_new(void) { struct pkg_list *l1, *l2, *l3; - struct pkginfo pkg; + struct pkginfo pkg1, pkg2, pkg3; - l1 = pkg_list_new(&pkg, NULL); + l1 = pkg_list_new(&pkg1, NULL); test_pass(l1 != NULL); test_pass(l1->next == NULL); - test_pass(l1->pkg == &pkg); + test_pass(l1->pkg == &pkg1); - l2 = pkg_list_new(&pkg, l1); + l2 = pkg_list_new(&pkg2, l1); test_pass(l2 != NULL); test_pass(l2->next == l1); - test_pass(l2->pkg == &pkg); + test_pass(l2->pkg == &pkg2); - l3 = pkg_list_new(&pkg, l2); + l3 = pkg_list_new(&pkg3, l2); test_pass(l3 != NULL); test_pass(l3->next == l2); - test_pass(l3->pkg == &pkg); + test_pass(l3->pkg == &pkg3); pkg_list_free(l3); } @@ -53,30 +53,30 @@ static void test_pkg_list_prepend(void) { struct pkg_list *head = NULL, *l1, *l2, *l3; - struct pkginfo pkg; + struct pkginfo pkg1, pkg2, pkg3, pkg4; - pkg_list_prepend(&head, &pkg); + pkg_list_prepend(&head, &pkg1); test_pass(head != NULL); test_pass(head->next == NULL); - test_pass(head->pkg == &pkg); + test_pass(head->pkg == &pkg1); l1 = head; - pkg_list_prepend(&head, &pkg); + pkg_list_prepend(&head, &pkg2); test_pass(head != NULL); test_pass(head->next == l1); - test_pass(head->pkg == &pkg); + test_pass(head->pkg == &pkg2); l2 = head; - pkg_list_prepend(&head, &pkg); + pkg_list_prepend(&head, &pkg3); test_pass(head != NULL); test_pass(head->next == l2); - test_pass(head->pkg == &pkg); + test_pass(head->pkg == &pkg3); l3 = head; - pkg_list_prepend(&head, &pkg); + pkg_list_prepend(&head, &pkg4); test_pass(head != NULL); test_pass(head->next == l3); - test_pass(head->pkg == &pkg); + test_pass(head->pkg == &pkg4); pkg_list_free(head); } diff --git a/lib/dpkg/test/t-pkg-queue.c b/lib/dpkg/test/t-pkg-queue.c index cede9d1..2d6ba52 100644 --- a/lib/dpkg/test/t-pkg-queue.c +++ b/lib/dpkg/test/t-pkg-queue.c @@ -2,7 +2,7 @@ * libdpkg - Debian packaging suite library routines * t-pkg-queue.c - test pkg-queue implementation * - * Copyright © 2010 Guillem Jover <guil...@debian.org> + * Copyright © 2010,2012 Guillem Jover <guil...@debian.org> * * This is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -52,25 +52,25 @@ test_pkg_queue_push_pop(void) { struct pkg_queue q = PKG_QUEUE_INIT; struct pkg_list *l1, *l2, *l3; - struct pkginfo pkg, *pkgp; + struct pkginfo *pkgp, pkg1, pkg2, pkg3; test_pass(pkg_queue_is_empty(&q)); /* Test push operations. */ - l1 = pkg_queue_push(&q, &pkg); + l1 = pkg_queue_push(&q, &pkg1); test_pass(l1 != NULL); test_pass(q.head == l1); test_pass(q.tail == l1); test_pass(q.length == 1); - l2 = pkg_queue_push(&q, &pkg); + l2 = pkg_queue_push(&q, &pkg2); test_pass(l2 != NULL); test_pass(q.head == l1); test_pass(q.tail == l2); test_pass(q.length == 2); - l3 = pkg_queue_push(&q, &pkg); + l3 = pkg_queue_push(&q, &pkg3); test_pass(l3 != NULL); test_pass(q.head == l1); test_pass(q.tail == l3); @@ -79,19 +79,19 @@ test_pkg_queue_push_pop(void) /* Test pop operations. */ pkgp = pkg_queue_pop(&q); - test_pass(pkgp != NULL); + test_pass(pkgp == &pkg1); test_pass(q.head == l2); test_pass(q.tail == l3); test_pass(q.length == 2); pkgp = pkg_queue_pop(&q); - test_pass(pkgp != NULL); + test_pass(pkgp == &pkg2); test_pass(q.head == l3); test_pass(q.tail == l3); test_pass(q.length == 1); pkgp = pkg_queue_pop(&q); - test_pass(pkgp != NULL); + test_pass(pkgp == &pkg3); test_pass(q.head == NULL); test_pass(q.tail == NULL); test_pass(q.length == 0); -- dpkg's main repository -- To UNSUBSCRIBE, email to debian-dpkg-cvs-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org