Repository navigation
Expand file tree
/
Copy pathFluxTest.java
More file actions
109 lines (78 loc) · 2.83 KB
/
Copy pathFluxTest.java
File metadata and controls
109 lines (78 loc) · 2.83 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
package flux;
import org.junit.jupiter.api.Test;
import reactor.core.publisher.Flux;
import reactor.test.StepVerifier;
import java.util.Arrays;
import java.util.List;
public class FluxTest {
@Test
public void fluxWithConcatWithMethodTest() {
Flux<String> stringFlux = Flux.just("Java", "C", "Ruby")
.concatWith(Flux.just("After Error"))
.log();
stringFlux.subscribe(System.out::println,
(e) -> System.err.println("Exception is " + e)
, () -> System.out.println("Completed"));
}
@Test
public void fluxTestElements_WithoutError() {
Flux<String> stringFlux = Flux.just("Java", "C", "Ruby")
.log();
StepVerifier.create(stringFlux)
.expectNext("Java")
.expectNext("C")
.expectNext("Ruby")
.verifyComplete();
}
@Test
public void fluxTestElements_WithError() {
Flux<String> stringFlux = Flux.just("Java", "C", "Ruby")
.concatWith(Flux.error(new RuntimeException("Exception is here")))
.log();
StepVerifier.create(stringFlux)
.expectNext("Java", "C", "Ruby")
//.expectError(RuntimeException.class)
.expectErrorMessage("Exception is here")
.verify();
}
@Test
public void fluxTestElementsCount_WithError() {
Flux<String> stringFlux = Flux.just("Java", "C", "Ruby")
.concatWith(Flux.error(new RuntimeException("Exception Occurred")))
.log();
StepVerifier.create(stringFlux)
.expectNextCount(3)
.expectErrorMessage("Exception Occurred")
.verify();
}
List<String> names = Arrays.asList("mark", "nick", "jack", "kim");
@Test
public void fluxUsingIterable(){
Flux<String> namesFlux = Flux.fromIterable(names).log();
StepVerifier.create(namesFlux)
.expectNext("mark","nick","jack","kim")
.verifyComplete();
}
@Test
public void fluxUsingArray(){
String[] names = new String[]{"mark","nick","jack","kim"};
Flux<String> namesFlux = Flux.fromArray(names);
StepVerifier.create(namesFlux)
.expectNext("mark","nick","jack","kim")
.verifyComplete();
}
@Test
public void fluxUsingStream(){
Flux<String> namesFlux = Flux.fromStream(names.stream());
StepVerifier.create(namesFlux)
.expectNext("mark","nick","jack","kim")
.verifyComplete();
}
@Test
public void fluxUsingRange(){
Flux<Integer> integerFlux = Flux.range(1,5).log();
StepVerifier.create(integerFlux)
.expectNext(1,2,3,4,5)
.verifyComplete();
}
}