view src/test/alice/jungle/codesegment/CheckDoubleTreeAttr.java @ 36:1255ae20d52e

remove msgpack.register in DefaultTreeOperation unconvert method
author one
date Thu, 04 Jul 2013 20:04:12 +0900
parents 054dc02c117d
children
line wrap: on
line source

package test.alice.jungle.codesegment;

import java.nio.ByteBuffer;
import java.util.Iterator;

import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.Jungle;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.JungleTree;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.core.Children;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.core.Node;
import alice.codesegment.CodeSegment;
import alice.datasegment.CommandType;
import alice.datasegment.Receiver;

public class CheckDoubleTreeAttr extends CodeSegment {
	
	Receiver arg1 = ids.create(CommandType.TAKE);
	
	public CheckDoubleTreeAttr() {
		arg1.setKey("count");
	}
	
	public void run() {
		int count = arg1.asInteger();
		
		DoubleJungleManager djm = new DoubleJungleManager();
		Jungle jungle1 = djm.getJungle1();
		Jungle jungle2 = djm.getJungle2();
		JungleTree tree1 = jungle1.getTreeByName("tree");
		JungleTree tree2 = jungle2.getTreeByName("tree");
		
		Node node1 = tree1.getRootNode();
		Node node2 = tree2.getRootNode();
		Children<Node> chs1 = node1.getChildren();
		Children<Node> chs2 = node2.getChildren();
		
		Iterator<Node> iter1 = chs1.iterator();
		Iterator<Node> iter2 = chs2.iterator();
		
		for(; iter1.hasNext() && iter2.hasNext();) {
			Node n1 = iter1.next();
			Node n2 = iter2.next();
			ByteBuffer b1 = n1.getAttributes().get("key");
			ByteBuffer b2 = n2.getAttributes().get("key");
			String str1 = new String(b1.array());
			String str2 = new String(b2.array());
			if(!str1.equals(str2)) {
				System.out.println("Failed ");
				System.out.println("str1 "+ str1);
				System.out.println("str2 "+ str2);
				System.exit(0);
			} else { 
				System.out.println("success: " + str1);
			}
		}
		
	}

}