[Tarantool-patches] [PATCH 2/3] Prepare for small library update

Cyrill Gorcunov gorcunov at gmail.com
Fri Sep 11 14:24:30 MSK 2020


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 <gorcunov at gmail.com>
---
 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 <stdio.h>
-#include <stdarg.h>
-#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



More information about the Tarantool-patches mailing list