Mercurial > hg > Members > tatsuki > bench > jungle-core
diff src/test/java/jp/ac/u_ryukyu/ie/cr/tatsuki/query/SearchQueryTest.java @ 126:f81ec544a155
add index push but bad compete
author | one |
---|---|
date | Thu, 09 Oct 2014 18:15:14 +0900 |
parents | a0c4a4b8ad10 |
children | b2c1fd513feb |
line wrap: on
line diff
--- a/src/test/java/jp/ac/u_ryukyu/ie/cr/tatsuki/query/SearchQueryTest.java Wed Oct 08 02:47:17 2014 +0900 +++ b/src/test/java/jp/ac/u_ryukyu/ie/cr/tatsuki/query/SearchQueryTest.java Thu Oct 09 18:15:14 2014 +0900 @@ -37,6 +37,9 @@ JungleTree tree = jungle.getTreeByName("tree"); createTree(tree); InterfaceTraverser ifTraverser = tree.getTraverser(); + TreeMap<String, TreeMap<String, List<Pair<TreeNode, NodePath>>>> cheackIndex = ifTraverser.getIndex(); + Assert.assertTrue(cheackIndex.isEmpty()); + Iterator<Pair<TreeNode, NodePath>> searchNode = ifTraverser.find( (TreeNode node) -> { ByteBuffer attribute = node.getAttributes().get(key); @@ -50,33 +53,25 @@ } ,key,"<-1,0,1>"); + while (searchNode.hasNext()){ Assert.assertTrue(compare(searchNode.next().left(),"<-1,0,1>")); } - - searchNode = ifTraverser.find( - (TreeNode node) -> { - ByteBuffer attribute = node.getAttributes().get(key); - if(attribute != null){ - byte[] byteAttribute = attribute.array(); - String str = new String(byteAttribute); - System.out.println("attribute = " + str); - return str.equals("<-1,0,0>"); - } - return false; - } - ,key,"<-1,0,0>"); - - while (searchNode.hasNext()){ - Pair<TreeNode, NodePath> pathNode = searchNode.next(); - System.out.println("last = "+pathNode.left().getAttributes().getString(key)); - Assert.assertTrue(compare(pathNode.left(),"<-1,0,0>")); - System.out.println(pathNode.left().getAttributes().getString(key)); - } - + TreeMap<String, TreeMap<String, List<Pair<TreeNode, NodePath>>>> index = ifTraverser.getIndex(); Option<TreeMap<String, List<Pair<TreeNode, NodePath>>>> opIndex = index.get(key); Assert.assertTrue(!opIndex.isNone()); + TreeMap<String, List<Pair<TreeNode, NodePath>>> innerIndex = opIndex.some(); + Assert.assertTrue(!innerIndex.get("<-1,0,0>").isNone()); + + IndexPushThread wt = new IndexPushThread(index, tree); + wt.start(); + + JungleTree newTree = jungle.getTreeByName("tree"); + InterfaceTraverser newIfTraverser = newTree.getTraverser(); + TreeMap<String, TreeMap<String, List<Pair<TreeNode, NodePath>>>> newIndex = newIfTraverser.getIndex(); + Assert.assertFalse(newIndex.isEmpty()); + }