view src/test/java/jp/ac/u_ryukyu/ie/cr/jungle/tests/util/TestUtil.java @ 329:2a0cb1f0ba4e

rename Error package
author kono
date Sat, 08 Jul 2017 21:05:55 +0900
parents 64123c7e9abf
children
line wrap: on
line source

package jp.ac.u_ryukyu.ie.cr.jungle.tests.util;

import jp.ac.u_ryukyu.ie.cr.jungle.store.nodepath.DefaultNodePath;
import jp.ac.u_ryukyu.ie.cr.jungle.store.nodepath.NodePath;
import jp.ac.u_ryukyu.ie.cr.jungle.transaction.node.Default.DefaultTreeNode;
import jp.ac.u_ryukyu.ie.cr.jungle.transaction.node.TreeNode;
import jp.ac.u_ryukyu.ie.cr.jungle.util.Either;
import jp.ac.u_ryukyu.ie.cr.jungle.util.jungleError.Error;
import org.junit.Ignore;

import java.nio.ByteBuffer;

@Ignore
public class TestUtil
{
	public static TreeNode createMockTree(int _maxDepth)
	{
		return _createMockTree(1,_maxDepth,new DefaultNodePath());
	}
	
	public static TreeNode _createMockTree(int _currentDepth,int _maxDepth,NodePath _path)
	{
		TreeNode parent = new DefaultTreeNode();
		Either<Error, TreeNode> either = parent.getAttributes().put("KEY",ByteBuffer.wrap(_path.toString().getBytes()));
		if(either.isA()){
			return null;
		}
		parent = either.b();
		
		if(_currentDepth != _maxDepth){
			for(int i = 0;i <= _currentDepth;i ++){
				TreeNode ch = _createMockTree(_currentDepth + 1,_maxDepth,_path.add(i));
				either = parent.getChildren().addNewChildAt(i,ch);
				if(either.isA()){
					return null;
				}
				parent = either.b();
			}
		}
		
		return parent;
	}
}