1 | package com.framsticks.params; |
---|
2 | |
---|
3 | import static org.fest.assertions.Assertions.*; |
---|
4 | |
---|
5 | import java.util.Arrays; |
---|
6 | import java.util.List; |
---|
7 | |
---|
8 | import org.testng.annotations.BeforeClass; |
---|
9 | import org.testng.annotations.Test; |
---|
10 | |
---|
11 | import com.framsticks.test.TestClass; |
---|
12 | import com.framsticks.test.TestConfiguration; |
---|
13 | import static com.framsticks.params.AccessOperations.*; |
---|
14 | |
---|
15 | @Test |
---|
16 | public class AccessOperationsTest extends TestConfiguration { |
---|
17 | |
---|
18 | Registry registry; |
---|
19 | |
---|
20 | TestClass testObject; |
---|
21 | |
---|
22 | List<String> printResult; |
---|
23 | |
---|
24 | List<String> printed = Arrays.asList( |
---|
25 | "TestClass:", |
---|
26 | "name:just a test", |
---|
27 | "history:a very, very long history...", |
---|
28 | "", |
---|
29 | "TestChild:", |
---|
30 | "name:first child", |
---|
31 | "uid:c0", |
---|
32 | "", |
---|
33 | "TestChild:", |
---|
34 | "name:second child", |
---|
35 | "uid:c1", |
---|
36 | "" |
---|
37 | ); |
---|
38 | |
---|
39 | @BeforeClass |
---|
40 | public void setUp() { |
---|
41 | registry = new Registry(); |
---|
42 | registry.registerAndBuild(TestClass.class); |
---|
43 | |
---|
44 | testObject = new TestClass(); |
---|
45 | testObject.setName("just a test"); |
---|
46 | testObject.setHistory("a very, very long history..."); |
---|
47 | |
---|
48 | testObject.createChild("first child"); |
---|
49 | testObject.createChild("second child"); |
---|
50 | } |
---|
51 | |
---|
52 | @Test |
---|
53 | public void testEquals() { |
---|
54 | assertThat(areEqual(registry.bindAccessFor(testObject), registry.bindAccessFor(testObject), registry)).isTrue(); |
---|
55 | } |
---|
56 | |
---|
57 | @Test |
---|
58 | public void testSaveAll() { |
---|
59 | |
---|
60 | ListSink sink = new ListSink(); |
---|
61 | saveAll(registry.bindAccessFor(testObject), sink, registry); |
---|
62 | printResult = sink.getOut(); |
---|
63 | |
---|
64 | assertThat(printResult).isEqualTo(printed); |
---|
65 | } |
---|
66 | |
---|
67 | @Test |
---|
68 | public void testLoadAll() { |
---|
69 | TestClass testLoad = new TestClass(); |
---|
70 | loadAll(registry.bindAccessFor(testLoad), new ListSource(printed), registry); |
---|
71 | assertThat(areEqual(registry.bindAccessFor(testLoad), registry.bindAccessFor(testObject), registry)).isTrue(); |
---|
72 | |
---|
73 | ListSink sink = new ListSink(); |
---|
74 | saveAll(registry.bindAccessFor(testLoad), sink, registry); |
---|
75 | |
---|
76 | assertThat(sink.getOut()).isEqualTo(printed); |
---|
77 | } |
---|
78 | |
---|
79 | } |
---|