# HG changeset patch # User tatsuki # Date 1480576993 -32400 # Node ID cd5f2ba0f8947d866fc2de4cf8b430b69ac1266a # Parent 233bb94ec43a4cc6816d614d7d5207cda466baf1 modify jungleTest diff -r 233bb94ec43a -r cd5f2ba0f894 build/classes/test/jp/ac/u_ryukyu/ie/cr/JDBCTest.class Binary file build/classes/test/jp/ac/u_ryukyu/ie/cr/JDBCTest.class has changed diff -r 233bb94ec43a -r cd5f2ba0f894 build/classes/test/jp/ac/u_ryukyu/ie/cr/JungleTest.class Binary file build/classes/test/jp/ac/u_ryukyu/ie/cr/JungleTest.class has changed diff -r 233bb94ec43a -r cd5f2ba0f894 src/test/java/jp/ac/u_ryukyu/ie/cr/JungleTest.java --- a/src/test/java/jp/ac/u_ryukyu/ie/cr/JungleTest.java Thu Dec 01 15:28:04 2016 +0900 +++ b/src/test/java/jp/ac/u_ryukyu/ie/cr/JungleTest.java Thu Dec 01 16:23:13 2016 +0900 @@ -4,15 +4,12 @@ import jp.ac.u_ryukyu.ie.cr.jungle.Jungle; import jp.ac.u_ryukyu.ie.cr.jungle.JungleTree; import jp.ac.u_ryukyu.ie.cr.jungle.JungleTreeEditor; -import jp.ac.u_ryukyu.ie.cr.jungle.data.list.DefaultNode; -import jp.ac.u_ryukyu.ie.cr.jungle.data.treemap.Node; import jp.ac.u_ryukyu.ie.cr.jungle.persistent.NullJournal; +import jp.ac.u_ryukyu.ie.cr.jungle.query.AllNodeIterator; import jp.ac.u_ryukyu.ie.cr.jungle.store.NodePath; import jp.ac.u_ryukyu.ie.cr.jungle.store.impl.DefaultNodePath; import jp.ac.u_ryukyu.ie.cr.jungle.store.impl.DefaultTreeEditor; import jp.ac.u_ryukyu.ie.cr.jungle.store.impl.TreeNode; -import jp.ac.u_ryukyu.ie.cr.jungle.store.impl.TreeNodeAttributes; -import jp.ac.u_ryukyu.ie.cr.jungle.transaction.DefaultTreeNode; import jp.ac.u_ryukyu.ie.cr.jungle.traverser.DefaultTraverser; import jp.ac.u_ryukyu.ie.cr.jungle.traverser.InterfaceTraverser; import jp.ac.u_ryukyu.ie.cr.jungle.util.Either; @@ -21,7 +18,6 @@ import org.junit.Test; import java.nio.ByteBuffer; -import java.security.Key; import java.util.Iterator; /** @@ -31,8 +27,9 @@ public static Jungle jungle; public static DefaultNodePath root = new DefaultNodePath(); + @Test - public void GetTest () { + public void GetTest() { jungle = new DefaultJungle(new NullJournal(), "Labo", new DefaultTreeEditor(new DefaultTraverser())); jungle.createNewTree("User"); JungleTree tree = jungle.getTreeByName("User"); @@ -43,69 +40,75 @@ editor = put(editor, root, "Age", "40"); editor = put(editor, root, "Type", "Teacher"); - editor = put(editor, root, 0, "Name", "Takeda"); - editor = put(editor, root, 0, "Age", "20"); - editor = put(editor, root, 0, "Type", "Student"); + editor = addNewChild(editor, root, 0); + NodePath path = root.add(0); + editor = put(editor, path, "Name", "kanagwa"); + editor = put(editor, path, "Age", "24"); + editor = put(editor, path, "Type", "Teacher"); + + editor = addNewChild(editor,path,0); + editor = put(editor, path.add(0), "Name", "Takeda"); + editor = put(editor, path.add(0), "Age", "20"); + editor = put(editor, path.add(0), "Type", "Student"); + + editor = addNewChild(editor,path,1); + editor = put(editor, path.add(1), "Name", "Miyagi"); + editor = put(editor, path.add(1), "Age", "22"); + editor = put(editor, path.add(1), "Type", "Student"); - editor = put(editor, root, 1, "Name", "Miyagi"); - editor = put(editor, root, 1, "Age", "22"); - editor = put(editor, root, 1, "Type", "Student"); + editor = addNewChild(editor,path,2); + editor = put(editor, path.add(2), "Name", "Higashi"); + editor = put(editor, path.add(2), "Age", "20"); + editor = put(editor, path.add(2), "Type", "Student"); - editor = put(editor, root, 2, "Name", "Higashionna"); - editor = put(editor, root, 2, "Age", "20"); - editor = put(editor, root, 2, "Type", "Student"); + editor = addNewChild(editor,root,1); + path = root.add(1); + editor = put(editor, path, "Name", "atton"); + editor = put(editor, path, "Age", "24"); + editor = put(editor, path, "Type", "Teacher"); + + + editor = addNewChild(editor,path ,0); + path = path.add(0); + editor = put(editor, path, "Name", "parusu"); + editor = put(editor, path, "Age", "23"); + editor = put(editor, path, "Type", "Student"); + + path = new DefaultNodePath().add(0); Either either = editor.success(); if (either.isA()) Assert.fail(); tree = jungle.getTreeByName("User"); - - // Find InterfaceTraverser traverser = tree.getTraverser(false); Iterator iterator = traverser.find((TreeNode node) -> { String value = node.getAttributes().getString("Name"); if (value == null) return false; - if (value.equals("Takeda")) + if (value.equals("Kono")) return true; return false; - }, "Type", "Student"); + }, "Type", "Teacher"); - while (iterator.hasNext()){ - System.out.println(iterator.next().getAttributes().getString("Name")); + while (iterator.hasNext()) { + TreeNode node = iterator.next(); + AllNodeIterator nodeIterator = new AllNodeIterator(node); + while (nodeIterator.hasNext()) { + System.out.println(nodeIterator.next().getAttributes().getString("Name")); + } } - // Get -// ByteBuffer kono_age = get("User", root, "Shinji"); -// ByteBuffer kazuma_age = get("User", root.add(0), "Kazuma"); -// ByteBuffer mitsuki_age = get("User", root.add(1), "Mitsuki"); -// ByteBuffer takui_age = get("User", root.add(2), "Takui"); } - public JungleTreeEditor put(JungleTreeEditor editor, NodePath path, int n, String key, String value) { - - Either either = editor.addNewChildAt(path, n); - if (either.isA()) - Assert.fail(); - editor = either.b(); - - either = editor.putAttribute(path.add(n), key, ByteBuffer.wrap(value.getBytes())); - if (either.isA()) - Assert.fail(); - editor = either.b(); - return editor; + private JungleTreeEditor addNewChild(JungleTreeEditor editor, NodePath path, int i) { + return editor.addNewChildAt(path,i).b(); } public JungleTreeEditor put(JungleTreeEditor editor, NodePath path, String key, String value) { - - Either either = editor.putAttribute(path, key, ByteBuffer.wrap(value.getBytes())); - if (either.isA()) - Assert.fail(); - editor = either.b(); - return editor; + return editor.putAttribute(path, key, ByteBuffer.wrap(value.getBytes())).b(); } - public ByteBuffer get (String treeName, NodePath path, String key) { + public ByteBuffer get(String treeName, NodePath path, String key) { JungleTree tree = jungle.getTreeByName(treeName); Either e = tree.getNodeOfPath(path); if (e.isA())