11package com .baeldung .vavr .collections ;
22
3+ import static org .junit .Assert .assertEquals ;
4+ import static org .junit .Assert .assertFalse ;
5+ import static org .junit .Assert .assertNotSame ;
6+ import static org .junit .Assert .assertSame ;
7+ import static org .junit .Assert .assertTrue ;
8+
9+ import java .util .Comparator ;
10+ import java .util .stream .Collectors ;
11+ import java .util .stream .IntStream ;
12+
13+ import org .junit .Test ;
14+
15+ import io .vavr .Tuple ;
316import io .vavr .Tuple2 ;
417import io .vavr .collection .Array ;
518import io .vavr .collection .CharSeq ;
1528import io .vavr .collection .TreeMap ;
1629import io .vavr .collection .TreeSet ;
1730import io .vavr .collection .Vector ;
18- import org .junit .Test ;
19-
20- import java .util .Comparator ;
21- import java .util .stream .Collectors ;
22-
23- import static org .junit .Assert .assertEquals ;
24- import static org .junit .Assert .assertFalse ;
25- import static org .junit .Assert .assertNotSame ;
26- import static org .junit .Assert .assertSame ;
27- import static org .junit .Assert .assertTrue ;
2831
2932public class CollectionAPIUnitTest {
3033
@@ -66,28 +69,16 @@ public void givenQueue_whenEnqueued_thenCorrect() {
6669 assertEquals (3 , queue .size ());
6770 assertEquals (5 , secondQueue .size ());
6871
69- secondQueue .dequeue ()
70- .map ((k , v ) -> {
71- assertEquals (new Integer (1 ), k );
72- return v .dequeue ();
73- })
74- .map ((k , v ) -> {
75- assertEquals (new Integer (2 ), k );
76- return v .dequeue ();
77- })
78- .map ((k , v ) -> {
79- assertEquals (new Integer (3 ), k );
80- return v .dequeue ();
81- })
82- .map ((k , v ) -> {
83- assertEquals (new Integer (4 ), k );
84- return v .dequeue ();
85- })
86- .map ((k , v ) -> {
87- assertEquals (new Integer (5 ), k );
88- assertTrue (v .isEmpty ());
89- return null ;
90- });
72+ Tuple2 <Integer , Queue <Integer >> result = secondQueue .dequeue ();
73+ Integer headValue = result .apply ((head , tail ) -> head );
74+ assertEquals (new Integer (1 ), headValue );
75+
76+ Iterator <Integer > iterator = result .apply ((head , tail ) -> tail .iterator ());
77+
78+ assertEquals (new Integer (2 ), iterator .next ());
79+ assertEquals (new Integer (3 ), iterator .next ());
80+ assertEquals (new Integer (4 ), iterator .next ());
81+ assertEquals (new Integer (5 ), iterator .next ());
9182 }
9283
9384 @ Test
@@ -101,7 +92,7 @@ public void givenStream_whenProcessed_thenCorrect() {
10192 .sum ()
10293 .longValue ();
10394
104- assertEquals (20L , evenSum );
95+ assertEquals (20 , evenSum );
10596 assertEquals (new Integer (5 ), intStream .get (5 ));
10697 }
10798
@@ -169,8 +160,7 @@ public void givenSortedSet_whenIterated_thenCorrect() {
169160
170161 @ Test
171162 public void givenSortedSet_whenReversed_thenCorrect () {
172- Comparator <String > reverseCompare = Comparator .reverseOrder ();
173- SortedSet <String > set = TreeSet .of (reverseCompare , "Green" , "Red" , "Blue" );
163+ SortedSet <String > set = TreeSet .of (Comparator .reverseOrder (), "Green" , "Red" , "Blue" );
174164
175165 Iterator <String > iterator = set .iterator ();
176166 assertEquals ("Red" , iterator .next ());
@@ -212,18 +202,47 @@ public void givenJavaList_whenConverted_thenCorrect() {
212202 java .util .List <Integer > javaList = java .util .Arrays .asList (1 , 2 , 3 , 4 );
213203 List <Integer > vavrList = List .ofAll (javaList );
214204
215- assertTrue (vavrList instanceof io .vavr .collection .List );
205+ assertEquals (4 , vavrList .size ());
206+ assertEquals (new Integer (1 ), vavrList .head ());
216207
217208 java .util .stream .Stream <Integer > javaStream = javaList .stream ();
218209 Set <Integer > vavrSet = HashSet .ofAll (javaStream );
219210
220- assertTrue (vavrSet instanceof io .vavr .collection .Set );
211+ assertEquals (4 , vavrSet .size ());
212+ assertEquals (new Integer (2 ), vavrSet .tail ()
213+ .head ());
214+ }
215+
216+ @ Test
217+ public void givenJavaStream_whenCollected_thenCorrect () {
218+ List <Integer > vavrList = IntStream .range (1 , 10 )
219+ .boxed ()
220+ .filter (i -> i % 2 == 0 )
221+ .collect (List .collector ());
222+
223+ assertEquals (4 , vavrList .size ());
224+ assertEquals (new Integer (2 ), vavrList .head ());
221225 }
222226
223227 @ Test
224228 public void givenVavrList_whenConverted_thenCorrect () {
225- java .util .Set <Integer > collect = List .of (1 , 2 , 3 )
229+ Integer [] array = List .of (1 , 2 , 3 )
230+ .toJavaArray (Integer .class );
231+ assertEquals (3 , array .length );
232+
233+ java .util .Map <String , Integer > map = List .of ("1" , "2" , "3" )
234+ .toJavaMap (i -> Tuple .of (i , Integer .valueOf (i )));
235+ assertEquals (new Integer (2 ), map .get ("2" ));
236+ }
237+
238+ @ Test
239+ public void givenVavrList_whenCollected_thenCorrect () {
240+ java .util .Set <Integer > javaSet = List .of (1 , 2 , 3 )
226241 .collect (Collectors .toSet ());
242+
243+ assertEquals (3 , javaSet .size ());
244+ assertEquals (new Integer (1 ), javaSet .iterator ()
245+ .next ());
227246 }
228247
229248 @ Test
0 commit comments