Mercurial > hg > Members > shoshi > TreeCMSv2
comparison src/treecms/test/AbstractNodeTest.java @ 9:17ed97ca9960
commit
author | shoshi |
---|---|
date | Mon, 18 Apr 2011 01:07:27 +0900 |
parents | src/treecms/test/NodeTest.java@87bba22e4fa2 |
children | bb9760760744 |
comparison
equal
deleted
inserted
replaced
8:f96193babac0 | 9:17ed97ca9960 |
---|---|
1 package treecms.test; | |
2 | |
3 import java.nio.ByteBuffer; | |
4 import java.util.LinkedList; | |
5 import java.util.List; | |
6 | |
7 import junit.framework.Assert; | |
8 | |
9 import org.junit.Test; | |
10 | |
11 import treecms.api.Node; | |
12 import treecms.api.NodeID; | |
13 | |
14 /** | |
15 * Node実装の基本的なテスト | |
16 * @author shoshi | |
17 */ | |
18 public abstract class AbstractNodeTest | |
19 { | |
20 /** | |
21 * テストに用いるNodeを実装者は返す | |
22 * @return Node | |
23 */ | |
24 public abstract Node getInstance(); | |
25 | |
26 /** | |
27 * NodeID取得のテスト | |
28 */ | |
29 @Test | |
30 public void testGetID() | |
31 { | |
32 Assert.assertNotNull(getInstance().getID()); | |
33 } | |
34 | |
35 /** | |
36 * Nodeのデータ(子供Nodeや属性のマップ) | |
37 */ | |
38 @Test | |
39 public void testGetData() | |
40 { | |
41 Assert.assertNotNull(getInstance().getData()); | |
42 } | |
43 | |
44 /** | |
45 * NodeからForestを取得するテスト | |
46 */ | |
47 @Test | |
48 public void testGetForest() | |
49 { | |
50 Assert.assertNotNull(getInstance().getForest()); | |
51 } | |
52 | |
53 /** | |
54 * Nodeに子供Nodeを追加するテスト | |
55 */ | |
56 @Test | |
57 public void testAddChildren() | |
58 { | |
59 Node node = getInstance(); | |
60 | |
61 Node ch1 = node.getForest().create(); | |
62 Node ch2 = node.getForest().create(); | |
63 Node ch3 = node.getForest().create(); | |
64 | |
65 LinkedList<Node> list = new LinkedList<Node>(); | |
66 list.add(ch1); | |
67 list.add(ch2); | |
68 list.add(ch3); | |
69 | |
70 node.addAll(list); | |
71 | |
72 List<Node> children = node.children(); | |
73 for(int i = 0;i < list.size();i ++){ | |
74 NodeID id1 = children.get(i).getID(); | |
75 NodeID id2 = list.get(i).getID(); | |
76 | |
77 Assert.assertEquals(true,id1.equals(id2)); | |
78 } | |
79 } | |
80 | |
81 /** | |
82 * Nodeにセットした属性を取り出すテスト | |
83 */ | |
84 @Test | |
85 public void testSetAndGetAttribute() | |
86 { | |
87 Node node = getInstance(); | |
88 byte[] name = "test".getBytes(); | |
89 byte[] value = "test".getBytes(); | |
90 | |
91 node.put(ByteBuffer.wrap(name),ByteBuffer.wrap(value)); | |
92 Assert.assertEquals(true,node.get(ByteBuffer.wrap(name)).equals(ByteBuffer.wrap(value))); | |
93 } | |
94 } |