From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-lj1-f194.google.com (mail-lj1-f194.google.com [209.85.208.194]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by dev.tarantool.org (Postfix) with ESMTPS id C8E6C44643A for ; Fri, 11 Sep 2020 14:24:58 +0300 (MSK) Received: by mail-lj1-f194.google.com with SMTP id w3so12106392ljo.5 for ; Fri, 11 Sep 2020 04:24:58 -0700 (PDT) From: Cyrill Gorcunov Date: Fri, 11 Sep 2020 14:24:30 +0300 Message-Id: <20200911112431.866554-3-gorcunov@gmail.com> In-Reply-To: <20200911112431.866554-1-gorcunov@gmail.com> References: <20200911112431.866554-1-gorcunov@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [Tarantool-patches] [PATCH 2/3] Prepare for small library update List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: tml Cc: Vladislav Shpilevoy Backport of the commit 277fc6958fda07f212251d30e471b329d1028638, note that we do NOT update small library here immediately otherwise we simply won't built after this commit. Thus real update will be done a bit later. To bring new rlist methods - rlist_foreach_entry_safe_reverse and rlist_cut_before. Also, remove unit/rlist test as it is now a part of the small suite. Part-of #5060 Signed-off-by: Cyrill Gorcunov --- test/unit/CMakeLists.txt | 2 - test/unit/rlist.c | 137 --------------------------------------- test/unit/rlist.result | 88 ------------------------- 3 files changed, 227 deletions(-) delete mode 100644 test/unit/rlist.c delete mode 100644 test/unit/rlist.result diff --git a/test/unit/CMakeLists.txt b/test/unit/CMakeLists.txt index cdafd785f..d0138e8fd 100644 --- a/test/unit/CMakeLists.txt +++ b/test/unit/CMakeLists.txt @@ -18,8 +18,6 @@ add_executable(heap.test heap.c) target_link_libraries(heap.test unit) add_executable(heap_iterator.test heap_iterator.c) target_link_libraries(heap_iterator.test unit) -add_executable(rlist.test rlist.c) -target_link_libraries(rlist.test unit) add_executable(stailq.test stailq.c) target_link_libraries(stailq.test unit) add_executable(uri.test uri.c unit.c) diff --git a/test/unit/rlist.c b/test/unit/rlist.c deleted file mode 100644 index c0c29a3f1..000000000 --- a/test/unit/rlist.c +++ /dev/null @@ -1,137 +0,0 @@ -#include "small/rlist.h" -#include -#include -#include "unit.h" - - -#define PLAN 87 - -#define ITEMS 7 - -struct test { - char ch; - int no; - struct rlist list; -}; - -static struct test items[ITEMS]; - -static RLIST_HEAD(head); -static RLIST_HEAD(head2); - -int -main(void) -{ - int i; - struct test *it; - struct rlist *rlist; - - plan(PLAN); - ok(rlist_empty(&head), "list is empty"); - for (i = 0; i < ITEMS; i++) { - items[i].no = i; - rlist_add_tail(&head, &(items[i].list)); - } - RLIST_HEAD(empty_list); - ok(rlist_empty(&empty_list), "rlist_nil is empty"); - ok(rlist_empty(&head2), "head2 is empty"); - rlist_swap(&head2, &empty_list); - ok(rlist_empty(&empty_list), "rlist_nil is empty after swap"); - ok(rlist_empty(&head2), "head2 is empty after swap"); - rlist_swap(&head, &head2); - ok(rlist_empty(&head), "head is empty after swap"); - is(rlist_first(&head2), &items[0].list, "first item"); - is(rlist_last(&head2), &items[ITEMS - 1].list, "last item"); - i = 0; - rlist_foreach(rlist, &head2) { - is(rlist, &items[i].list, "element (foreach) %d", i); - i++; - } - rlist_foreach_reverse(rlist, &head2) { - i--; - is(rlist, &items[i].list, "element (foreach_reverse) %d", i); - } - rlist_swap(&head2, &head); - - - is(rlist_first(&head), &items[0].list, "first item"); - isnt(rlist_first(&head), &items[ITEMS - 1].list, "first item"); - - is(rlist_last(&head), &items[ITEMS - 1].list, "last item"); - isnt(rlist_last(&head), &items[0].list, "last item"); - - is(rlist_next(&head), &items[0].list, "rlist_next"); - is(rlist_prev(&head), &items[ITEMS - 1].list, "rlist_prev"); - - i = 0; - rlist_foreach(rlist, &head) { - is(rlist, &items[i].list, "element (foreach) %d", i); - i++; - } - rlist_foreach_reverse(rlist, &head) { - i--; - is(rlist, &items[i].list, "element (foreach_reverse) %d", i); - } - - - is(rlist_entry(&items[0].list, struct test, list), &items[0], - "rlist_entry"); - is(rlist_first_entry(&head, struct test, list), &items[0], - "rlist_first_entry"); - is(rlist_next_entry(&items[0], list), &items[1], "rlist_next_entry"); - is(rlist_prev_entry(&items[2], list), &items[1], "rlist_prev_entry"); - - - i = 0; - rlist_foreach_entry(it, &head, list) { - is(it, items + i, "element (foreach_entry) %d", i); - i++; - } - rlist_foreach_entry_reverse(it, &head, list) { - i--; - is(it, items + i, "element (foreach_entry_reverse) %d", i); - } - - rlist_del(&items[2].list); - ok(rlist_empty(&head2), "head2 is empty"); - rlist_move(&head2, &items[3].list); - ok(!rlist_empty(&head2), "head2 isnt empty"); - is(rlist_first_entry(&head2, struct test, list), - &items[3], "Item was moved"); - rlist_move_tail(&head2, &items[4].list); - rlist_foreach_entry(it, &head, list) { - is(it, items + i, "element (second deleted) %d", i); - i++; - if (i == 2) - i += 3; - } - rlist_foreach_entry_reverse(it, &head, list) { - i--; - if (i == 4) - i -= 3; - is(it, items + i, "element (second deleted) %d", i); - } - - - rlist_create(&head); - ok(rlist_empty(&head), "list is empty"); - for (i = 0; i < ITEMS; i++) { - items[i].no = i; - rlist_add(&head, &(items[i].list)); - } - i = 0; - rlist_foreach_entry_reverse(it, &head, list) { - is(it, items + i, "element (foreach_entry_reverse) %d", i); - i++; - } - rlist_foreach_entry(it, &head, list) { - i--; - is(it, items + i, "element (foreach_entry) %d", i); - } - rlist_create(&head); - rlist_add_entry(&head, &items[0], list); - ok(rlist_prev_entry_safe(&items[0], &head, list) == NULL, - "prev is null"); - return check_plan(); -} - diff --git a/test/unit/rlist.result b/test/unit/rlist.result deleted file mode 100644 index fa99a87cf..000000000 --- a/test/unit/rlist.result +++ /dev/null @@ -1,88 +0,0 @@ -1..87 -ok 1 - list is empty -ok 2 - rlist_nil is empty -ok 3 - head2 is empty -ok 4 - rlist_nil is empty after swap -ok 5 - head2 is empty after swap -ok 6 - head is empty after swap -ok 7 - first item -ok 8 - last item -ok 9 - element (foreach) 0 -ok 10 - element (foreach) 1 -ok 11 - element (foreach) 2 -ok 12 - element (foreach) 3 -ok 13 - element (foreach) 4 -ok 14 - element (foreach) 5 -ok 15 - element (foreach) 6 -ok 16 - element (foreach_reverse) 6 -ok 17 - element (foreach_reverse) 5 -ok 18 - element (foreach_reverse) 4 -ok 19 - element (foreach_reverse) 3 -ok 20 - element (foreach_reverse) 2 -ok 21 - element (foreach_reverse) 1 -ok 22 - element (foreach_reverse) 0 -ok 23 - first item -ok 24 - first item -ok 25 - last item -ok 26 - last item -ok 27 - rlist_next -ok 28 - rlist_prev -ok 29 - element (foreach) 0 -ok 30 - element (foreach) 1 -ok 31 - element (foreach) 2 -ok 32 - element (foreach) 3 -ok 33 - element (foreach) 4 -ok 34 - element (foreach) 5 -ok 35 - element (foreach) 6 -ok 36 - element (foreach_reverse) 6 -ok 37 - element (foreach_reverse) 5 -ok 38 - element (foreach_reverse) 4 -ok 39 - element (foreach_reverse) 3 -ok 40 - element (foreach_reverse) 2 -ok 41 - element (foreach_reverse) 1 -ok 42 - element (foreach_reverse) 0 -ok 43 - rlist_entry -ok 44 - rlist_first_entry -ok 45 - rlist_next_entry -ok 46 - rlist_prev_entry -ok 47 - element (foreach_entry) 0 -ok 48 - element (foreach_entry) 1 -ok 49 - element (foreach_entry) 2 -ok 50 - element (foreach_entry) 3 -ok 51 - element (foreach_entry) 4 -ok 52 - element (foreach_entry) 5 -ok 53 - element (foreach_entry) 6 -ok 54 - element (foreach_entry_reverse) 6 -ok 55 - element (foreach_entry_reverse) 5 -ok 56 - element (foreach_entry_reverse) 4 -ok 57 - element (foreach_entry_reverse) 3 -ok 58 - element (foreach_entry_reverse) 2 -ok 59 - element (foreach_entry_reverse) 1 -ok 60 - element (foreach_entry_reverse) 0 -ok 61 - head2 is empty -ok 62 - head2 isnt empty -ok 63 - Item was moved -ok 64 - element (second deleted) 0 -ok 65 - element (second deleted) 1 -ok 66 - element (second deleted) 5 -ok 67 - element (second deleted) 6 -ok 68 - element (second deleted) 6 -ok 69 - element (second deleted) 5 -ok 70 - element (second deleted) 1 -ok 71 - element (second deleted) 0 -ok 72 - list is empty -ok 73 - element (foreach_entry_reverse) 0 -ok 74 - element (foreach_entry_reverse) 1 -ok 75 - element (foreach_entry_reverse) 2 -ok 76 - element (foreach_entry_reverse) 3 -ok 77 - element (foreach_entry_reverse) 4 -ok 78 - element (foreach_entry_reverse) 5 -ok 79 - element (foreach_entry_reverse) 6 -ok 80 - element (foreach_entry) 6 -ok 81 - element (foreach_entry) 5 -ok 82 - element (foreach_entry) 4 -ok 83 - element (foreach_entry) 3 -ok 84 - element (foreach_entry) 2 -ok 85 - element (foreach_entry) 1 -ok 86 - element (foreach_entry) 0 -ok 87 - prev is null -- 2.26.2