diff src/test/java/jp/ac/u_ryukyu/ie/cr/jungle/impl/node/DefaultAttributesTest.java @ 209:e5275a599048

reverseList → List
author tatsuki
date Tue, 28 Jul 2015 08:32:58 +0900
parents
children b3a04bc21b23
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/test/java/jp/ac/u_ryukyu/ie/cr/jungle/impl/node/DefaultAttributesTest.java	Tue Jul 28 08:32:58 2015 +0900
@@ -0,0 +1,54 @@
+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.store.impl.TreeNodeAttributes;
+import jp.ac.u_ryukyu.ie.cr.jungle.transaction.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.store.impl.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));
+		}
+	}
+}