view src/test/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/core/nodeeditor/DeleteAttributeAtTest.java @ 144:0854f9a9e81d

change attrs form TreeMap<String , ByteBuffer> → TreeMap<String,List<ByteBuffer>>
author one
date Sun, 16 Nov 2014 06:40:48 +0900
parents 74723b26ad96
children 8a0aa8fc137c
line wrap: on
line source

package jp.ac.u_ryukyu.ie.cr.shoshi.jungle.core.nodeeditor;

import java.nio.ByteBuffer;

import fj.data.List;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.logger.LoggingNode;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.trasnformer.DeleteAttribute;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultTreeNode;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Either;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Error;
import junit.framework.Assert;
import junit.framework.TestCase;

public class DeleteAttributeAtTest extends TestCase
{
	public void testEdit()
	{
		String key = "KEY";
		ByteBuffer value = ByteBuffer.wrap(key.getBytes());
		
		TreeNode node = new DefaultTreeNode();
		Either<Error,TreeNode> either = node.getAttributes().put(key, value);
		if(either.isA()){
			Assert.fail();
		}
		node = either.b();
		
		DeleteAttribute op = new DeleteAttribute(key);
		Either<Error,LoggingNode> either2 = op.edit(node);
		if(either2.isA()){
			Assert.fail();
		}
		LoggingNode newNode = either2.b();
		List<ByteBuffer> retList = newNode.getAttributes().get(key);
		Assert.assertTrue(retList.isEmpty());
	}
}