changeset 1038:9a8eba5d27f8

create copyRedBlackTree test
author matac42 <matac@cr.ie.u-ryukyu.ac.jp>
date Mon, 06 Nov 2023 15:23:19 +0900
parents 7ccd8ba5bc93
children 23528e058b25
files src/parallel_execution/test/rbTreeCopy_test.cbc
diffstat 1 files changed, 84 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/parallel_execution/test/rbTreeCopy_test.cbc	Mon Nov 06 15:23:19 2023 +0900
@@ -0,0 +1,84 @@
+#include <stdio.h>
+#interface "Tree.h"
+
+/* #include <assert.h> */
+
+__code rbTreeTest1(struct Tree* tree) {
+  printf("Test1\n");
+  Node* node = new Node();
+  node->value = (union Data*)new Integer();
+  ((Integer*)node->value)->value = 1;
+  node->key = 1;
+  printf("value->%d,key->%d\n",((Integer*)node->value)->value,node->key);
+  goto tree->put(node, rbTreeTest2);
+}
+
+__code rbTreeTest1_stub(struct Context* context) {
+  printf("test1_stub\n");
+  Tree* tree = createRedBlackTree(context);
+  goto rbTreeTest1(context,tree);
+}
+
+
+__code rbTreeTest2(struct Tree* tree) {
+  printf("Test2\n");
+  Node* node = new Node();
+  node->value = (union Data*)new Integer();
+  // ((Integer*)(node->value))->value= 2;
+  node->key = 2;
+  goto tree->get(node, rbTreeTest3);
+}
+
+__code rbTreeTest2_stub(struct Context* context) {
+  printf("test2_stub\n");
+  Tree* tree = (struct Tree*)Gearef(context, Tree)->tree;
+  goto rbTreeTest2(context,tree);
+}
+
+
+__code rbTreeTest3(struct Tree* tree, struct Node* node0) {
+  printf("test3\n");
+  printf("value=%d key=%d\n", ((Integer*)node0->value)->value, node0->key);
+  Node* node = new Node();
+  node->value = (union Data*)new Integer();
+  ((Integer*)(node->value))->value = 3;
+  node->key = 3;
+  goto tree->put(node, rbTreeTest4);
+}
+
+__code rbTreeTest3_stub(struct Context* context) {
+  Tree* tree = (struct Tree*)Gearef(context, Tree)->tree;
+  Node* node0 = Gearef(context, Tree)->node;
+  goto rbTreeTest3(context,tree,node0);
+}
+
+__code rbTreeTest4(struct Tree* tree) {
+  printf("test4\n");
+  Node* node = new Node();
+  node->value = (union Data*)new Integer();
+  ((Integer*)(node->value))->value = 4;
+  node->key = 4;
+  goto tree->put(node, rbTreeTest5);
+}
+
+__code rbTreeTest4_stub(struct Context* context) {
+  Tree* tree = (struct Tree*)Gearef(context, Tree)->tree;
+  goto rbTreeTest4(context,tree);
+}
+
+__code rbTreeTest5(struct Tree* tree) {
+  printf("test5\n");
+  Node* node = new Node();
+  node->value = (union Data*)new Integer();
+  goto tree->copy(exit_code);
+}
+
+__code rbTreeTest5_stub(struct Context* context) {
+  Tree* tree = (struct Tree*)Gearef(context, Tree)->tree;
+  goto rbTreeTest5(context,tree);
+}
+
+int main(int argc, char const* argv[]) {
+  printf("test_main\n");
+  goto rbTreeTest1();
+}