Mercurial > hg > Members > shoshi > jungle > jungle-core
view src/test/java/jp/ac/u_ryukyu/ie/cr/jungle/traverse/DefaultInterfaceTraverserTest.java @ 308:201cc75a9984
change Red Black Tree Edit Path Extends
author | tatsuki |
---|---|
date | Thu, 26 Jan 2017 15:23:25 +0900 |
parents | 0767620e6f5f |
children |
line wrap: on
line source
package jp.ac.u_ryukyu.ie.cr.jungle.traverse; import jp.ac.u_ryukyu.ie.cr.jungle.DefaultJungle; import jp.ac.u_ryukyu.ie.cr.jungle.Jungle; import jp.ac.u_ryukyu.ie.cr.jungle.persistent.NullJournal; import jp.ac.u_ryukyu.ie.cr.jungle.query.traverser.InterfaceTraverser; import jp.ac.u_ryukyu.ie.cr.jungle.store.nodepath.DefaultNodePath; import jp.ac.u_ryukyu.ie.cr.jungle.transaction.editor.jungleTreeEditor.JungleTreeEditor; import jp.ac.u_ryukyu.ie.cr.jungle.transaction.node.TreeNode; import jp.ac.u_ryukyu.ie.cr.jungle.tree.JungleTree; import junit.framework.Assert; import org.junit.Test; import java.util.Iterator; import static jp.ac.u_ryukyu.ie.cr.jungle.CreateTreeMethod.createTree; public class DefaultInterfaceTraverserTest { public static String key = "KEY"; public static String indexKey = "INDEXKEY"; @Test public void InterfaseTraverserTest() { Jungle jungle = new DefaultJungle(new NullJournal(), "hoge"); jungle.createNewTree("TestTree"); JungleTree tree = jungle.getTreeByName("TestTree"); JungleTreeEditor editor = tree.getJungleTreeEditor(); editor = createTree(editor,key,indexKey, 3, new DefaultNodePath()); InterfaceTraverser traverser = tree.getTraverser(true); { Iterator<TreeNode> iterator = traverser.find((TreeNode node) -> { // no index find String value = node.getAttributes().getString(key); if (value == null) return false; if (value.equals("<-1,1,1>")) return true; return false; }, null, null); Assert.assertTrue(iterator.hasNext()); TreeNode node = iterator.next(); String value = node.getAttributes().getString("KEY"); Assert.assertEquals("<-1,1,1>", value); } { Iterator<TreeNode> iterator = traverser.find((TreeNode node) -> { // no index find String value = node.getAttributes().getString(key); if (value == null) return false; if (value.equals("no exist value")) return true; return false; }, null, null); Assert.assertFalse(iterator.hasNext()); } { Iterator<TreeNode> iterator = traverser.find((TreeNode node) -> { // use index find return true; }, indexKey, "<-1,1,1>"); Assert.assertTrue(iterator.hasNext()); TreeNode node = iterator.next(); String value = node.getAttributes().getString("KEY"); Assert.assertEquals("<-1,1,1>", value); } { Iterator<TreeNode> iterator = traverser.find((TreeNode node) -> { // use index find return true; }, indexKey, "no exist index value"); Assert.assertFalse(iterator.hasNext()); } } }