Mercurial > hg > Members > tatsuki > bench > jungle-core
comparison src/test/java/ip/ac/u_ryukyu/ie/cr/tatsuki/jungle/index/IndexCommitTest.java @ 132:ba5370090393
index commit Prototype
author | one |
---|---|
date | Sun, 19 Oct 2014 09:15:38 +0900 |
parents | b2c1fd513feb |
children |
comparison
equal
deleted
inserted
replaced
131:1c3c3300716c | 132:ba5370090393 |
---|---|
9 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.NodePath; | 9 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.NodePath; |
10 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultNodePath; | 10 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultNodePath; |
11 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultTreeEditor; | 11 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.DefaultTreeEditor; |
12 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode; | 12 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode; |
13 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultTreeNode; | 13 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultTreeNode; |
14 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.IndexJungleTreeEditor; | |
14 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.DefaultTraverser; | 15 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.DefaultTraverser; |
15 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.InterfaceTraverser; | 16 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.InterfaceTraverser; |
16 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Either; | 17 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Either; |
17 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Pair; | 18 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Pair; |
18 import jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.store.index.IndexPushThread; | 19 import jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.store.index.IndexPushThread; |
19 import junit.framework.Assert; | 20 import junit.framework.Assert; |
20 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Error; | 21 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Error; |
21 | 22 |
22 import java.nio.ByteBuffer; | 23 import java.nio.ByteBuffer; |
24 | |
25 import javax.swing.tree.DefaultTreeCellEditor.EditorContainer; | |
23 | 26 |
24 import org.junit.Test; | 27 import org.junit.Test; |
25 import org.junit.experimental.theories.suppliers.TestedOn; | 28 import org.junit.experimental.theories.suppliers.TestedOn; |
26 | 29 |
27 import fj.data.List; | 30 import fj.data.List; |
39 JungleTree tree = jungle.getTreeByName("tree"); | 42 JungleTree tree = jungle.getTreeByName("tree"); |
40 createTree(tree); | 43 createTree(tree); |
41 tree.getRootNode(); | 44 tree.getRootNode(); |
42 InterfaceTraverser ifTraverser = tree.getTraverser(); | 45 InterfaceTraverser ifTraverser = tree.getTraverser(); |
43 | 46 |
44 Iterator<Pair<TreeNode, NodePath>> searchNode = ifTraverser.find(( | 47 ifTraverser.find((TreeNode node) -> { |
45 TreeNode node) -> { | |
46 ByteBuffer attribute = node.getAttributes().get(key); | 48 ByteBuffer attribute = node.getAttributes().get(key); |
47 if (attribute != null) { | 49 if (attribute != null) { |
48 byte[] byteAttribute = attribute.array(); | 50 byte[] byteAttribute = attribute.array(); |
49 String str = new String(byteAttribute); | 51 String str = new String(byteAttribute); |
50 System.out.println("attribute = " + str); | 52 System.out.println("attribute = " + str); |
58 Option<TreeMap<String, List<Pair<TreeNode, NodePath>>>> opIndex = index.get(key); | 60 Option<TreeMap<String, List<Pair<TreeNode, NodePath>>>> opIndex = index.get(key); |
59 Assert.assertTrue(!opIndex.isNone()); | 61 Assert.assertTrue(!opIndex.isNone()); |
60 TreeMap<String, List<Pair<TreeNode, NodePath>>> innerIndex = opIndex.some(); | 62 TreeMap<String, List<Pair<TreeNode, NodePath>>> innerIndex = opIndex.some(); |
61 Assert.assertTrue(!innerIndex.get("<-1,0,0>").isNone()); | 63 Assert.assertTrue(!innerIndex.get("<-1,0,0>").isNone()); |
62 | 64 |
63 IndexPushThread wt = new IndexPushThread(index, tree,ifTraverser.getEditor(), 0); | 65 JungleTreeEditor editor = tree.getTreeEditor(); |
64 wt.start(); | 66 Either<Error, JungleTreeEditor> either = editor.addNewChildAt(new DefaultNodePath(), 0); |
65 wt.join(); | 67 editor = either.b(); |
68 editor.success(); | |
69 | |
70 ifTraverser.commitIndex(); | |
66 JungleTree newTree = jungle.getTreeByName("tree"); | 71 JungleTree newTree = jungle.getTreeByName("tree"); |
67 InterfaceTraverser newIfTraverser = newTree.getTraverser(); | 72 InterfaceTraverser newIfTraverser = newTree.getTraverser(); |
68 TreeMap<String, TreeMap<String, List<Pair<TreeNode, NodePath>>>> newIndex = newIfTraverser.getIndex(); | 73 TreeMap<String, TreeMap<String, List<Pair<TreeNode, NodePath>>>> newIndex = newIfTraverser.getIndex(); |
69 Assert.assertFalse(newIndex.isEmpty()); | 74 Assert.assertTrue(newIndex.isEmpty()); |
75 | |
76 | |
70 | 77 |
71 } | 78 } |
72 | 79 |
73 public boolean compare(TreeNode compareNode, String compareAttribute) { | 80 public boolean compare(TreeNode compareNode, String compareAttribute) { |
74 String labName = compareNode.getAttributes().getString(key); | 81 String labName = compareNode.getAttributes().getString(key); |