11package reactor .core .scala .publisher
22
3- import org .mockito .Mockito
3+ import org .mockito .Mockito .{ spy , times , verify }
44import org .scalatest .{FreeSpec , Matchers }
55import reactor .core .publisher .{Flux => JFlux , ParallelFlux => JParallelFlux }
66import reactor .core .scheduler .Schedulers
@@ -10,23 +10,33 @@ class SParallelFluxTest extends FreeSpec with Matchers {
1010 " SParallelFlux" - {
1111 val data = Seq (1 , 2 , 3 )
1212 val flux = Flux .just(data.head,data.tail:_* )
13+ val fluxParallel : SParallelFlux [Int ] = flux.parallel()
1314 " .asJava should convert as Java ParallelFlux" in {
14- flux.parallel() .asJava shouldBe a[JParallelFlux [Int ]]
15+ fluxParallel .asJava shouldBe a[JParallelFlux [Int ]]
1516 }
1617
1718 " .apply should convert Java ParallelFlux into SParallelFlux" in {
1819 SParallelFlux (JFlux .just(1 , 2 , 3 ).parallel()).asJava shouldBe a[JParallelFlux [Int ]]
1920 }
2021
22+ " .map should map from T to U" in {
23+ val expected = data.map(_.toString)
24+ StepVerifier .create(fluxParallel.map(i => i.toString))
25+ .expectNextMatches(i => expected.contains(i))
26+ .expectNextMatches(i => expected.contains(i))
27+ .expectNextMatches(i => expected.contains(i))
28+ .verifyComplete()
29+ }
30+
2131 " .runOn should run on different thread" in {
22- val scheduler = Mockito . spy(Schedulers .parallel())
32+ val scheduler = spy(Schedulers .parallel())
2333 StepVerifier .create(flux.parallel(2 ).runOn(scheduler))
2434 .expectNextMatches(i => data.contains(i))
2535 .expectNextMatches(i => data.contains(i))
2636 .expectNextMatches(i => data.contains(i))
2737 .verifyComplete()
2838
29- Mockito . verify(scheduler, Mockito . times(2 )).createWorker()
39+ verify(scheduler, times(2 )).createWorker()
3040 }
3141 }
3242}
0 commit comments