changeset 1057:71d4c7326f26

add test
author matac42 <matac@cr.ie.u-ryukyu.ac.jp>
date Fri, 26 Jan 2024 17:03:23 +0900
parents b76db8c133b8
children 37667b9d02f1
files src/parallel_execution/test/rbTreeCopy_test.cbc
diffstat 1 files changed, 90 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/parallel_execution/test/rbTreeCopy_test.cbc	Fri Jan 26 17:03:15 2024 +0900
+++ b/src/parallel_execution/test/rbTreeCopy_test.cbc	Fri Jan 26 17:03:23 2024 +0900
@@ -73,9 +73,98 @@
 
 __code assert1(struct Tree* tree) {
   printf("assert1\n");
+  goto rbTreeTest5(context,tree);
+}
+
+__code rbTreeTest5(struct Tree* tree) {
+  printf("Test5\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, rbTreeTest6);
+}
+
+__code rbTreeTest5_stub(struct Context* context) {
+  printf("test5_stub\n");
+  Tree* tree = createRedBlackTree(context);
+  goto rbTreeTest5(context,tree);
+}
+
+__code rbTreeTest6(struct Tree* tree) {
+  printf("Test6\n");
+  Node* node = new Node();
+  node->value = (union Data*)new Integer();
+  ((Integer*)node->value)->value = 2;
+  node->key = 2;
+  printf("value->%d,key->%d\n",((Integer*)node->value)->value,node->key);
+  goto tree->put(node, rbTreeTest7);
+}
+
+__code rbTreeTest6_stub(struct Context* context) {
+  printf("test6_stub\n");
+  Tree* tree = (struct Tree*)Gearef(context, Tree)->tree;
+  goto rbTreeTest6(context,tree);
+}
+
+__code rbTreeTest7(struct Tree* tree) {
+  printf("Test7\n");
+  Node* node = new Node();
+  node->value = (union Data*)new Integer();
+  ((Integer*)node->value)->value = 3;
+  node->key = 3;
+  printf("value->%d,key->%d\n",((Integer*)node->value)->value,node->key);
+  goto tree->put(node, rbTreeTest8);
+}
+
+__code rbTreeTest7_stub(struct Context* context) {
+  printf("test7_stub\n");
+  Tree* tree = (struct Tree*)Gearef(context, Tree)->tree;
+  goto rbTreeTest7(context,tree);
+}
+
+__code rbTreeTest8(struct Tree* tree) {
+  printf("Test8\n");
+  Node* node = new Node();
+  node->value = (union Data*)new Integer();
+  ((Integer*)node->value)->value = 4;
+  node->key = 4;
+  printf("value->%d,key->%d\n",((Integer*)node->value)->value,node->key);
+  goto tree->put(node, rbTreeTest9);
+}
+
+__code rbTreeTest8_stub(struct Context* context) {
+  printf("test8_stub\n");
+  Tree* tree = (struct Tree*)Gearef(context, Tree)->tree;
+  goto rbTreeTest8(context,tree);
+}
+
+//
+//   2(B)
+//   / \
+// 1(B) 3(B)
+//       \
+//        4(R)
+
+__code rbTreeTest9(struct Tree* tree) {
+  printf("test9\n");
+  Node* node = new Node();
+  node->value = (union Data*)new Integer();
+  goto tree->copy(node, assert2);
+}
+
+__code rbTreeTest9_stub(struct Context* context) {
+  printf("test9_stub\n");
+  Tree* tree = (struct Tree*)Gearef(context, Tree)->tree;
+  goto rbTreeTest9(context,tree);
+}
+
+__code assert2(struct Tree* tree) {
+  printf("assert2\n");
 }
 
 int main(int argc, char const* argv[]) {
   printf("test_main\n");
-  goto rbTreeTest1();
+  goto rbTreeTest5();
 }