Search in sources :

Example 41 with ReactiveSeq

use of cyclops.reactive.ReactiveSeq in project cyclops by aol.

the class ZippingTest method testUnzip4WithLimits.

@Test
public void testUnzip4WithLimits() {
    Supplier<ReactiveSeq<Tuple4<Integer, String, Long, Character>>> s = () -> DuplicationTest.of(new Tuple4(1, "a", 2l, 'z'), new Tuple4(2, "b", 3l, 'y'), new Tuple4(3, "c", 4l, 'x'));
    Tuple4<ReactiveSeq<Integer>, ReactiveSeq<String>, ReactiveSeq<Long>, ReactiveSeq<Character>> u1 = ReactiveSeq.unzip4(s.get());
    assertTrue(u1._1().limit(1).toList().containsAll(Arrays.asList(1)));
    assertTrue(u1._2().limit(2).toList().containsAll(asList("a", "b")));
    assertTrue(u1._3().limit(3).toList().containsAll(asList(2l, 3l, 4l)));
    assertTrue(u1._4().limit(4).toList().containsAll(asList('z', 'y', 'x')));
}
Also used : Tuple4(cyclops.data.tuple.Tuple4) ReactiveSeq(cyclops.reactive.ReactiveSeq) Test(org.junit.Test) DuplicationTest(cyclops.futurestream.react.lazy.DuplicationTest)

Example 42 with ReactiveSeq

use of cyclops.reactive.ReactiveSeq in project cyclops by aol.

the class ZippingTest method testUnzip3WithLimits.

@Test
public void testUnzip3WithLimits() {
    Supplier<ReactiveSeq<Tuple3<Integer, String, Long>>> s = () -> DuplicationTest.of(new Tuple3(1, "a", 2l), new Tuple3(2, "b", 3l), new Tuple3(3, "c", 4l));
    Tuple3<ReactiveSeq<Integer>, ReactiveSeq<String>, ReactiveSeq<Long>> u1 = ReactiveSeq.unzip3(s.get());
    assertTrue(u1._1().limit(1).toList().containsAll(Arrays.asList(1)));
    assertTrue(u1._2().limit(2).toList().containsAll(asList("a", "b")));
    assertTrue(u1._3().toList().containsAll(asList(2l, 3l, 4l)));
}
Also used : Tuple3(cyclops.data.tuple.Tuple3) ReactiveSeq(cyclops.reactive.ReactiveSeq) Test(org.junit.Test) DuplicationTest(cyclops.futurestream.react.lazy.DuplicationTest)

Example 43 with ReactiveSeq

use of cyclops.reactive.ReactiveSeq in project cyclops by aol.

the class BaseSequenceTest method takeWhileInclusive.

@Test
public void takeWhileInclusive() {
    assertThat(ReactiveSeq.of(1, 2, 3).takeWhileInclusive(i -> i < 0).toList(), equalTo(Arrays.asList(1)));
    assertThat(ReactiveSeq.of(1, 2, 3).takeWhileInclusive(i -> i < 3).toList(), equalTo(Arrays.asList(1, 2, 3)));
    assertThat(ReactiveSeq.<Integer>of().takeWhileInclusive(i -> i < 3).toList(), equalTo(Arrays.asList()));
    assertThat(ReactiveSeq.range(1, 1_000_000).takeWhileInclusive(i -> i < 300_000).toList(), equalTo(ReactiveSeq.range(1, 300_001).toList()));
    AtomicInteger count = new AtomicInteger(0);
    int size = ReactiveSeq.range(1, 1_000_000).peek(i -> count.incrementAndGet()).takeWhileInclusive(i -> i < 300_000).toList().size();
    assertThat(count.get(), equalTo(300_000));
    assertThat(size, equalTo(300000));
}
Also used : Tuple4(cyclops.data.tuple.Tuple4) Tuple3(cyclops.data.tuple.Tuple3) Arrays(java.util.Arrays) Tuple2(cyclops.data.tuple.Tuple2) HashMap(cyclops.data.HashMap) Vector(cyclops.data.Vector) Matchers.hasItems(org.hamcrest.Matchers.hasItems) Supplier(java.util.function.Supplier) ArrayList(java.util.ArrayList) Assert.assertThat(org.junit.Assert.assertThat) AtomicInteger(java.util.concurrent.atomic.AtomicInteger) Arrays.asList(java.util.Arrays.asList) Map(java.util.Map) LinkedList(java.util.LinkedList) Before(org.junit.Before) ReactiveSeq.of(cyclops.reactive.ReactiveSeq.of) Executor(java.util.concurrent.Executor) Assert.assertTrue(org.junit.Assert.assertTrue) Test(org.junit.Test) Monoid(cyclops.function.Monoid) Collectors(java.util.stream.Collectors) Executors(java.util.concurrent.Executors) ReactiveSeq(cyclops.reactive.ReactiveSeq) List(java.util.List) Matchers.hasItem(org.hamcrest.Matchers.hasItem) Assert.assertFalse(org.junit.Assert.assertFalse) Matchers.equalTo(org.hamcrest.Matchers.equalTo) Matchers.is(org.hamcrest.Matchers.is) Assert.assertEquals(org.junit.Assert.assertEquals) AtomicInteger(java.util.concurrent.atomic.AtomicInteger) Test(org.junit.Test)

Example 44 with ReactiveSeq

use of cyclops.reactive.ReactiveSeq in project cyclops by aol.

the class BaseSequenceTest method takeWhile.

@Test
public void takeWhile() {
    assertThat(ReactiveSeq.of(1, 2, 3).takeWhile(i -> i < 3).toList(), equalTo(Arrays.asList(1, 2)));
    assertThat(ReactiveSeq.<Integer>of().takeWhile(i -> i < 3).toList(), equalTo(Arrays.asList()));
    assertThat(ReactiveSeq.range(1, 1_000_000).takeWhile(i -> i < 300_000).toList(), equalTo(ReactiveSeq.range(1, 300_000).toList()));
    AtomicInteger count = new AtomicInteger(0);
    int size = ReactiveSeq.range(1, 1_000_000).peek(i -> count.incrementAndGet()).takeWhile(i -> i < 300_000).toList().size();
    assertThat(count.get(), equalTo(300_000));
    assertThat(size, equalTo(299999));
}
Also used : Tuple4(cyclops.data.tuple.Tuple4) Tuple3(cyclops.data.tuple.Tuple3) Arrays(java.util.Arrays) Tuple2(cyclops.data.tuple.Tuple2) HashMap(cyclops.data.HashMap) Vector(cyclops.data.Vector) Matchers.hasItems(org.hamcrest.Matchers.hasItems) Supplier(java.util.function.Supplier) ArrayList(java.util.ArrayList) Assert.assertThat(org.junit.Assert.assertThat) AtomicInteger(java.util.concurrent.atomic.AtomicInteger) Arrays.asList(java.util.Arrays.asList) Map(java.util.Map) LinkedList(java.util.LinkedList) Before(org.junit.Before) ReactiveSeq.of(cyclops.reactive.ReactiveSeq.of) Executor(java.util.concurrent.Executor) Assert.assertTrue(org.junit.Assert.assertTrue) Test(org.junit.Test) Monoid(cyclops.function.Monoid) Collectors(java.util.stream.Collectors) Executors(java.util.concurrent.Executors) ReactiveSeq(cyclops.reactive.ReactiveSeq) List(java.util.List) Matchers.hasItem(org.hamcrest.Matchers.hasItem) Assert.assertFalse(org.junit.Assert.assertFalse) Matchers.equalTo(org.hamcrest.Matchers.equalTo) Matchers.is(org.hamcrest.Matchers.is) Assert.assertEquals(org.junit.Assert.assertEquals) AtomicInteger(java.util.concurrent.atomic.AtomicInteger) Test(org.junit.Test)

Example 45 with ReactiveSeq

use of cyclops.reactive.ReactiveSeq in project cyclops by aol.

the class AsyncZippingTest method testUnzip4.

@Test
public void testUnzip4() {
    Supplier<ReactiveSeq<Tuple4<Integer, String, Long, Character>>> s = () -> of(new Tuple4(1, "a", 2l, 'z'), new Tuple4(2, "b", 3l, 'y'), new Tuple4(3, "c", 4l, 'x'));
    Tuple4<ReactiveSeq<Integer>, ReactiveSeq<String>, ReactiveSeq<Long>, ReactiveSeq<Character>> u1 = ReactiveSeq.unzip4(s.get());
    assertTrue(u1._1().toList().containsAll(Arrays.asList(1, 2, 3)));
    assertTrue(u1._2().toList().containsAll(asList("a", "b", "c")));
    assertTrue(u1._3().toList().containsAll(asList(2l, 3l, 4l)));
    assertTrue(u1._4().toList().containsAll(asList('z', 'y', 'x')));
}
Also used : Tuple4(cyclops.data.tuple.Tuple4) ReactiveSeq(cyclops.reactive.ReactiveSeq) Test(org.junit.Test)

Aggregations

ReactiveSeq (cyclops.reactive.ReactiveSeq)101 Test (org.junit.Test)91 Tuple3 (cyclops.data.tuple.Tuple3)33 Tuple4 (cyclops.data.tuple.Tuple4)33 Tuple2 (cyclops.data.tuple.Tuple2)31 FlowableReactiveSeq (cyclops.reactive.FlowableReactiveSeq)19 FluxReactiveSeq (cyclops.reactive.FluxReactiveSeq)18 Stream (java.util.stream.Stream)17 Collectors (java.util.stream.Collectors)16 FutureStream (cyclops.futurestream.FutureStream)12 QueueFactories (com.oath.cyclops.async.QueueFactories)11 Queue (com.oath.cyclops.async.adapters.Queue)11 LazyReact (cyclops.futurestream.LazyReact)11 Supplier (java.util.function.Supplier)10 Signal (com.oath.cyclops.async.adapters.Signal)9 List (java.util.List)9 Spouts (cyclops.reactive.Spouts)8 AtomicBoolean (java.util.concurrent.atomic.AtomicBoolean)8 Matchers.equalTo (org.hamcrest.Matchers.equalTo)8 Assert.assertThat (org.junit.Assert.assertThat)8