use of cyclops.reactive.Spouts.of in project cyclops by aol.
the class FlatMapTest method flatMapAsync2.
@Test
public void flatMapAsync2() {
for (int k = 0; k < 100; k++) {
List<Integer> res = Spouts.of(1, 2, 3).flatMap(i -> nextAsync()).toList();
assertThat(res.size(), equalTo(Arrays.asList(1, 2, 1, 2, 1, 2).size()));
assertThat(res, hasItems(1, 2));
int one = 0;
int two = 0;
for (Integer next : res) {
if (next == 1) {
one++;
}
if (next == 2) {
two++;
}
}
assertThat(one, equalTo(3));
assertThat(two, equalTo(3));
}
}
use of cyclops.reactive.Spouts.of in project cyclops by aol.
the class IterableFlatMapTest method flatMapAsyncRS2.
@Test
public void flatMapAsyncRS2() {
for (int k = 0; k < 1000; k++) {
System.out.println("********0---------------------K " + k);
ReactiveSubscriber<Integer> sub = Spouts.reactiveSubscriber();
Spouts.of(1, 2, 3).peek(System.out::println).concatMap(i -> nextAsyncRS()).subscribe(sub);
List<Integer> res = sub.reactiveStream().collect(Collectors.toList());
System.out.println(res);
assertThat(res.size(), equalTo(Arrays.asList(1, 2, 1, 2, 1, 2).size()));
assertThat(res, hasItems(1, 2));
int one = 0;
int two = 0;
for (Integer next : res) {
if (next == 1) {
one++;
}
if (next == 2) {
two++;
}
}
assertThat(one, equalTo(3));
assertThat(two, equalTo(3));
}
}
use of cyclops.reactive.Spouts.of in project cyclops by aol.
the class FlatMapPublisherTest method flatMapPAsync2Iterator.
@Test
public void flatMapPAsync2Iterator() {
for (int k = 0; k < 500; k++) {
System.out.println("****************************NEXT ITERATION " + k);
System.out.println("****************************NEXT ITERATION " + k);
System.out.println("****************************NEXT ITERATION " + k);
System.out.println("****************************NEXT ITERATION " + k);
System.out.println("****************************NEXT ITERATION " + k);
System.out.println("****************************NEXT ITERATION " + k);
System.out.println("****************************NEXT ITERATION " + k + "*************************!!!!!!!!!!!!!!!!!!!!!!!!!!!");
List<Integer> res = new ArrayList<>();
Iterator<Integer> it = Spouts.of(1, 2, 3).mergeMap(i -> nextAsync()).iterator();
while (it.hasNext()) {
res.add(it.next());
}
System.out.println("Result is " + res);
assertThat(res.size(), equalTo(Arrays.asList(1, 2, 1, 2, 1, 2).size()));
assertThat(res, hasItems(1, 2));
int one = 0;
int two = 0;
for (Integer next : res) {
if (next == 1) {
one++;
}
if (next == 2) {
two++;
}
}
assertThat(one, equalTo(3));
assertThat(two, equalTo(3));
}
}
use of cyclops.reactive.Spouts.of in project cyclops by aol.
the class FlatMapPublisherTest method concurrentFlatMapP1.
@Test
public void concurrentFlatMapP1() {
for (int k = 0; k < 500; k++) {
System.out.println("****************************NEXT ITERATION " + k);
System.out.println("****************************NEXT ITERATION " + k);
System.out.println("****************************NEXT ITERATION " + k);
System.out.println("****************************NEXT ITERATION " + k);
System.out.println("****************************NEXT ITERATION " + k);
System.out.println("****************************NEXT ITERATION " + k);
System.out.println("****************************NEXT ITERATION " + k + "*************************!!!!!!!!!!!!!!!!!!!!!!!!!!!");
List<Integer> res = Spouts.of(1, 2, 3).mergeMap(2, i -> nextAsync()).toList();
System.out.println("Result is " + res);
assertThat(res.size(), equalTo(Arrays.asList(1, 2, 1, 2, 1, 2).size()));
assertThat(res, hasItems(1, 2));
int one = 0;
int two = 0;
for (Integer next : res) {
if (next == 1) {
one++;
}
if (next == 2) {
two++;
}
}
assertThat(one, equalTo(3));
assertThat(two, equalTo(3));
}
}
use of cyclops.reactive.Spouts.of in project cyclops by aol.
the class FlatMapPublisherTest method asyncFlatMap.
@Test
public void asyncFlatMap() {
List<Integer> res = Spouts.of(1, 2, 3).map(i -> nextAsync()).grouped(3).mergeMap(l -> Spouts.mergeLatest(l)).toList();
assertThat(res.size(), equalTo(Arrays.asList(1, 2, 1, 2, 1, 2).size()));
assertThat(res, hasItems(1, 2));
int one = 0;
int two = 0;
for (Integer next : res) {
if (next == 1) {
one++;
}
if (next == 2) {
two++;
}
}
assertThat(one, equalTo(3));
assertThat(two, equalTo(3));
}
Aggregations