@Test public void testFoldRighttringBuilder() { Supplier<Folds<String>> s = () -> of("a", "b", "c"); assertTrue(s.get().foldRight(new StringBuilder(), (t, u) -> u.append("-").append(t)).toString().contains("a")); assertTrue(s.get().foldRight(new StringBuilder(), (t, u) -> u.append("-").append(t)).toString().contains("b")); assertTrue(s.get().foldRight(new StringBuilder(), (t, u) -> u.append("-").append(t)).toString().contains("c")); assertTrue(s.get().foldRight(new StringBuilder(), (t, u) -> u.append("-").append(t)).toString().contains("-")); } /**
@Test public void testFoldRight(){ Supplier<Folds<String>> s = () -> of("a", "b", "c"); assertTrue(s.get().foldRight("", String::concat).contains("a")); assertTrue(s.get().foldRight("", String::concat).contains("b")); assertTrue(s.get().foldRight("", String::concat).contains("c")); assertEquals(3, (int) s.get().foldRight(0, (t, u) -> u + t.length())); }
public void testFoldLeft() { for(int i=0;i<100;i++){ Supplier<Folds<String>> s = () -> of("a", "b", "c"); assertTrue(s.get().foldLeft("", String::concat).contains("a")); assertTrue(s.get().foldLeft("", String::concat).contains("b")); assertTrue(s.get().foldLeft("", String::concat).contains("c")); assertEquals(3, (int) s.get().foldLeft(0, (u, t) -> u + t.length())); assertEquals(3, (int) s.get().foldRight(0, (t, u) -> u + t.length())); } }