1818
1919import static org .junit .Assert .assertEquals ;
2020import static org .junit .Assert .assertNull ;
21- import static org .mockito .Mockito .inOrder ;
22- import static org .mockito .Mockito .when ;
21+ import static org .metafacture .metamorph .TestHelpers .assertMorph ;
2322
24- import org .junit .Before ;
2523import org .junit .Rule ;
2624import org .junit .Test ;
2725import org .metafacture .framework .StreamReceiver ;
28- import org .metafacture .metamorph .InlineMorph ;
29- import org .metafacture .metamorph .Metamorph ;
3026import org .metafacture .metamorph .api .Maps ;
31- import org .mockito .InOrder ;
3227import org .mockito .Mock ;
28+ import org .mockito .Mockito ;
3329import org .mockito .junit .MockitoJUnit ;
3430import org .mockito .junit .MockitoRule ;
3531
36-
3732/**
3833 * Tests for class {@link Lookup}.
3934 *
@@ -50,24 +45,16 @@ public final class LookupTest {
5045 private static final String VALUE = "Kafka" ;
5146
5247 @ Rule
53- public MockitoRule mockito = MockitoJUnit .rule (). silent () ;
48+ public MockitoRule mockito = MockitoJUnit .rule ();
5449
5550 @ Mock
5651 private Maps maps ;
5752
5853 @ Mock
5954 private StreamReceiver receiver ;
6055
61- @ Before
62- public void initMaps () {
63- when (maps .getValue (MAP_NAME , KEY )).thenReturn (VALUE );
64- when (maps .getValue (MAP_NAME , KEY_WRONG )).thenReturn (null );
65- when (maps .getValue (MAP_NAME_WRONG , KEY )).thenReturn (null );
66- when (maps .getValue (MAP_NAME_WRONG , KEY_WRONG )).thenReturn (null );
67- }
68-
6956 @ Test
70- public void shouldReturnNullIfMapNameIsDoesNotExist () {
57+ public void shouldReturnNullIfMapNameDoesNotExist () {
7158 final Lookup lookup = new Lookup ();
7259 lookup .setMaps (maps );
7360
@@ -82,6 +69,7 @@ public void shouldReturnValueIfMapAndKeyExist() {
8269 lookup .setMaps (maps );
8370
8471 lookup .setIn (MAP_NAME );
72+ Mockito .when (maps .getValue (MAP_NAME , KEY )).thenReturn (VALUE );
8573
8674 assertEquals (VALUE , lookup .process (KEY ));
8775 }
@@ -98,96 +86,96 @@ public void shouldReturnNullIfKeyDoesNotExist() {
9886
9987 @ Test
10088 public void shouldLookupValuesInLocalMap () {
101- final Metamorph metamorph = InlineMorph . in ( this )
102- . with ( "<rules>" )
103- . with ( " <data source='1'>" )
104- . with ( " <lookup>" )
105- . with ( " <entry name='a' value='A' />" )
106- . with ( " </lookup>" )
107- . with ( " </data>" )
108- . with ( " <data source='2'>" )
109- . with ( " <lookup default='B'>" )
110- . with ( " <entry name='a' value='A' />" )
111- . with ( " </lookup>" )
112- . with ( " </data>" )
113- . with ( "</rules>" )
114- . createConnectedTo ( receiver );
115-
116- metamorph . startRecord ("1" );
117- metamorph .literal ("1" , "a " );
118- metamorph .literal ("1 " , "b " );
119- metamorph .literal ("2" , "a " );
120- metamorph . literal ( "2" , "b" );
121- metamorph . endRecord ();
122-
123- final InOrder ordered = inOrder ( receiver );
124- ordered . verify ( receiver ). startRecord ("1" );
125- ordered . verify ( receiver ).literal ("1 " , "A" );
126- ordered . verify ( receiver ).literal ("2" , "A " );
127- ordered . verify ( receiver ). literal ( "2" , "B" );
128- ordered . verify ( receiver ). endRecord ();
129- ordered . verifyNoMoreInteractions ( );
89+ assertMorph ( receiver ,
90+ "<rules>" +
91+ " <data source='1'>" +
92+ " <lookup>" +
93+ " <entry name='a' value='A' />" +
94+ " </lookup>" +
95+ " </data>" +
96+ " <data source='2'>" +
97+ " <lookup default='B'>" +
98+ " <entry name='a' value='A' />" +
99+ " </lookup>" +
100+ " </data>" +
101+ "</rules>" ,
102+ i -> {
103+ i . startRecord ( "1" );
104+ i . literal ("1" , "a " );
105+ i .literal ("1" , "b " );
106+ i .literal ("2 " , "a " );
107+ i .literal ("2" , "b " );
108+ i . endRecord ( );
109+ },
110+ o -> {
111+ o . get (). startRecord ( "1" );
112+ o . get (). literal ("1" , "A " );
113+ o . get ( ).literal ("2 " , "A" );
114+ o . get ( ).literal ("2" , "B " );
115+ o . get (). endRecord ( );
116+ }
117+ );
130118 }
131119
132120 @ Test
133121 public void shouldLookupValuesInReferencedMap () {
134- final Metamorph metamorph = InlineMorph . in ( this )
135- . with ( "<rules>" )
136- . with ( " <data source='1'>" )
137- . with ( " <lookup in='map1' />" )
138- . with ( " </data>" )
139- . with ( " <data source='2'>" )
140- . with ( " <lookup in='map2' />" )
141- . with ( " </data>" )
142- . with ( "</rules>" )
143- . with ( "<maps>" )
144- . with ( " <map name='map1'>" )
145- . with ( " <entry name='a' value='A' />" )
146- . with ( " </map>" )
147- . with ( " <map name='map2' default='B'>" )
148- . with ( " <entry name='a' value='A' />" )
149- . with ( " </map>" )
150- . with ( "</maps>" )
151- . createConnectedTo ( receiver );
152-
153- metamorph . startRecord ("1" );
154- metamorph .literal ("1" , "a " );
155- metamorph .literal ("1 " , "b " );
156- metamorph .literal ("2" , "a " );
157- metamorph . literal ( "2" , "b" );
158- metamorph . endRecord ();
159-
160- final InOrder ordered = inOrder ( receiver );
161- ordered . verify ( receiver ). startRecord ("1" );
162- ordered . verify ( receiver ).literal ("1 " , "A" );
163- ordered . verify ( receiver ).literal ("2" , "A " );
164- ordered . verify ( receiver ). literal ( "2" , "B" );
165- ordered . verify ( receiver ). endRecord ();
166- ordered . verifyNoMoreInteractions ( );
122+ assertMorph ( receiver ,
123+ "<rules>" +
124+ " <data source='1'>" +
125+ " <lookup in='map1' />" +
126+ " </data>" +
127+ " <data source='2'>" +
128+ " <lookup in='map2' />" +
129+ " </data>" +
130+ "</rules>" +
131+ "<maps>" +
132+ " <map name='map1'>" +
133+ " <entry name='a' value='A' />" +
134+ " </map>" +
135+ " <map name='map2' default='B'>" +
136+ " <entry name='a' value='A' />" +
137+ " </map>" +
138+ "</maps>" ,
139+ i -> {
140+ i . startRecord ( "1" );
141+ i . literal ("1" , "a " );
142+ i .literal ("1" , "b " );
143+ i .literal ("2 " , "a " );
144+ i .literal ("2" , "b " );
145+ i . endRecord ( );
146+ },
147+ o -> {
148+ o . get (). startRecord ( "1" );
149+ o . get (). literal ("1" , "A " );
150+ o . get ( ).literal ("2 " , "A" );
151+ o . get ( ).literal ("2" , "B " );
152+ o . get (). endRecord ( );
153+ }
154+ );
167155 }
168156
169157 @ Test
170158 public void shouldLookupValuesInMetadata () {
171- final Metamorph metamorph = InlineMorph . in ( this )
172- . with ( "<meta>" )
173- . with ( " <name>Hawaii</name>" )
174- . with ( "</meta>" )
175- . with ( "<rules>" )
176- . with ( " <data source='data'>" )
177- . with ( " <lookup in='__meta' />" )
178- . with ( " </data>" )
179- . with ( "</rules>" )
180- . createConnectedTo ( receiver );
181-
182- metamorph . startRecord ( "1 " );
183- metamorph . literal ( "data" , "name" );
184- metamorph . endRecord ();
185-
186- final InOrder ordered = inOrder ( receiver );
187- ordered . verify ( receiver ). startRecord ( "1 " );
188- ordered . verify ( receiver ). literal ( "data" , "Hawaii" );
189- ordered . verify ( receiver ). endRecord ();
190- ordered . verifyNoMoreInteractions ( );
159+ assertMorph ( receiver ,
160+ "<meta>" +
161+ " <name>Hawaii</name>" +
162+ "</meta>" +
163+ "<rules>" +
164+ " <data source='data'>" +
165+ " <lookup in='__meta' />" +
166+ " </data>" +
167+ "</rules>" ,
168+ i -> {
169+ i . startRecord ( "1" );
170+ i . literal ( "data" , "name " );
171+ i . endRecord ( );
172+ },
173+ o -> {
174+ o . get (). startRecord ( "1" );
175+ o . get (). literal ( "data" , "Hawaii " );
176+ o . get (). endRecord ( );
177+ }
178+ );
191179 }
192180
193181}
0 commit comments