Mercurial > hg > Members > shoshi > jungle > jungle-core
view src/test/java/jp/ac/u_ryukyu/ie/cr/jungle/impl/differencialnode/DifferencialTreeNodeChildrenTest.java @ 329:2a0cb1f0ba4e
rename Error package
author | kono |
---|---|
date | Sat, 08 Jul 2017 21:05:55 +0900 |
parents | f69b2a5a821d |
children |
line wrap: on
line source
package jp.ac.u_ryukyu.ie.cr.jungle.impl.differencialnode; import jp.ac.u_ryukyu.ie.cr.jungle.transaction.node.Differencial.DifferencialTreeNode; import jp.ac.u_ryukyu.ie.cr.jungle.transaction.node.TreeNode; import jp.ac.u_ryukyu.ie.cr.jungle.transaction.node.TreeNodeChildren; import jp.ac.u_ryukyu.ie.cr.jungle.util.Either; import jp.ac.u_ryukyu.ie.cr.jungle.util.jungleError.Error; import org.junit.Assert; import org.junit.Test; public class DifferencialTreeNodeChildrenTest { @Test public void DifferencialTreeNodeChildrenTests() { TreeNode node = new DifferencialTreeNode(); TreeNodeChildren children = node.getChildren(); Either<Error, TreeNode> either = children.addNewChildAt(0, new DifferencialTreeNode()); //Nodeの追加 Assert.assertFalse(either.isA()); TreeNode newNode = either.b(); Assert.assertEquals(node, newNode); either = children.addNewChildAt(3, new DifferencialTreeNode());//追加できない場所へのNodeの追加 Assert.assertTrue(either.isA()); TreeNode child = children.at(0).b(); either = children.addNewChildAt(0, new DifferencialTreeNode());//Nodeの割り込み挿入 Assert.assertFalse(either.isA()); TreeNode child2 = children.at(1).b(); Assert.assertEquals(child, child2); either = children.moveChild(0,"up");//0番目の子ノードを上に動かす(失敗する Assert.assertTrue(either.isA()); children = node.getChildren(); child = children.at(1).b(); either = children.moveChild(1,"up");//0番目の子ノードを上に動かす(失敗する Assert.assertFalse(either.isA()); child2 = children.at(0).b(); Assert.assertEquals(child,child2); either = children.moveChild(1,"down");//1番目の子ノードを下に動かす(失敗する Assert.assertTrue(either.isA()); child = children.at(0).b(); either = children.moveChild(0,"down");//0番目の子ノードを上に動かす(失敗する Assert.assertFalse(either.isA()); child2 = children.at(1).b(); Assert.assertEquals(child,child2); int expectSize = 2; int size = children.size(); Assert.assertEquals(expectSize,size); children = node.getChildren(); either = children.deleteChildAt(4);//存在しないノードを削除 Assert.assertTrue(either.isA()); children = node.getChildren(); child = children.at(0).b(); either = children.deleteChildAt(0);//ノードを削除 Assert.assertFalse(either.isA()); for (TreeNode n : node.getChildren()) { //childrenの1番目のノードは削除したので存在しない Assert.assertNotEquals(n,child); } expectSize = 1; size = children.size(); Assert.assertEquals(expectSize,size); } }