Mercurial > hg > Members > shoshi > jungle > jungle-core
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)); + } + } +}