view src/test/java/jp/ac/u_ryukyu/ie/cr/jungle/impl/node/DefaultAttributesTest.java @ 265:b3a04bc21b23 Implementation_of_communication

add UnDefineNode
author tatsuki
date Tue, 13 Dec 2016 03:16:12 +0900
parents e5275a599048
children 64123c7e9abf
line wrap: on
line source

package jp.ac.u_ryukyu.ie.cr.jungle.impl.node;

import jp.ac.u_ryukyu.ie.cr.jungle.core.AttributesTest;
import jp.ac.u_ryukyu.ie.cr.jungle.transaction.node.TreeNodeAttributes;
import jp.ac.u_ryukyu.ie.cr.jungle.transaction.node.DefaultTreeNode;
import jp.ac.u_ryukyu.ie.cr.jungle.util.Pair;
import jp.ac.u_ryukyu.ie.cr.jungle.data.list.List;
import jp.ac.u_ryukyu.ie.cr.jungle.transaction.node.TreeNode;
import jp.ac.u_ryukyu.ie.cr.jungle.data.treemap.TreeMap;
import org.junit.Assert;

import java.nio.ByteBuffer;
import java.util.Optional;

public class DefaultAttributesTest extends AttributesTest
{
	public TreeNodeAttributes instance()
	{
		List<TreeNode> rawList = new List();
		TreeMap<String,ByteBuffer> rawMap = new TreeMap();
		
		// add attributes
		
		for(Pair<String, ByteBuffer> entry : ENTRIES){
			rawMap = rawMap.put(entry.left(),entry.right());
		}
		
		TreeNode node = new DefaultTreeNode(rawList,rawMap);
		return node.getAttributes();
	}
	
	public void testGetAttributesAsRawMap()
	{
		TreeNodeAttributes attrs = instance();
		TreeMap<String,ByteBuffer> rawMap = attrs.getAttributesAsRawMap();
		
		// testing rawmap is not null.
		Assert.assertNotNull(rawMap);
		
		// testing rawmap has correct key values.
		for(Pair<String,ByteBuffer> entry : ENTRIES){
			String key = entry.left();
			ByteBuffer value = entry.right();
			
			Optional<ByteBuffer> option = rawMap.get(key);
			if(!option.isPresent()){
				Assert.fail();
			}
			
			ByteBuffer actual = option.get();
			Assert.assertEquals(0,actual.compareTo(value));
		}
	}
}