package core.aws.util;
import org.junit.Assert;
import org.junit.Test;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Optional;
import java.util.stream.Collectors;
public class StreamHelperTest {
@Test
public void onlyOne() {
List<Integer> list = Arrays.asList(1, 2, 3, 4);
Optional<Integer> result = list.stream().filter(i -> i > 3).reduce(StreamHelper.onlyOne());
Assert.assertEquals((Integer) 4, result.get());
}
@Test
public void instanceOf() {
List<Object> list = new ArrayList<>();
list.add("text1");
list.add(1);
list.add("text2");
list.add(2);
List<String> result = list.stream().flatMap(StreamHelper.instanceOf(String.class)).collect(Collectors.toList());
Assert.assertEquals(2, result.size());
Assert.assertEquals("text1", result.get(0));
Assert.assertEquals("text2", result.get(1));
}
}