package com.github.pfichtner.jrunalyser.base.util; import static org.junit.Assert.*; import java.util.Collection; import java.util.List; import org.junit.Test; import com.github.pfichtner.jrunalyser.base.util.Distributor; import com.google.common.collect.Lists; public class DistributorTest { @Test public void testDistribute_abcd_on2() { List<Character> list = Lists.charactersOf("abcd"); List<Collection<Character>> distribute = Distributor .distribute(list, 2); assertEquals(2, distribute.size()); assertEquals(Lists.charactersOf("ac"), distribute.get(0)); assertEquals(Lists.charactersOf("bd"), distribute.get(1)); } @Test public void testDistribute_abcde_on2() { List<Character> list = Lists.charactersOf("abcde"); List<Collection<Character>> distribute = Distributor .distribute(list, 2); assertEquals(2, distribute.size()); assertEquals(Lists.charactersOf("ace"), distribute.get(0)); assertEquals(Lists.charactersOf("bd"), distribute.get(1)); } @Test public void testDistribute_abcd_on3() { List<Character> list = Lists.charactersOf("abcd"); List<Collection<Character>> distribute = Distributor .distribute(list, 3); assertEquals(3, distribute.size()); assertEquals(Lists.charactersOf("ad"), distribute.get(0)); assertEquals(Lists.charactersOf("b"), distribute.get(1)); assertEquals(Lists.charactersOf("c"), distribute.get(2)); } @Test public void testDistribute_abcde_on3() { List<Character> list = Lists.charactersOf("abcde"); List<Collection<Character>> distribute = Distributor .distribute(list, 3); assertEquals(3, distribute.size()); assertEquals(Lists.charactersOf("ad"), distribute.get(0)); assertEquals(Lists.charactersOf("be"), distribute.get(1)); assertEquals(Lists.charactersOf("c"), distribute.get(2)); } @Test public void testDistribute_abcdef_on3() { List<Character> list = Lists.charactersOf("abcdef"); List<Collection<Character>> distribute = Distributor .distribute(list, 3); assertEquals(3, distribute.size()); assertEquals(Lists.charactersOf("ad"), distribute.get(0)); assertEquals(Lists.charactersOf("be"), distribute.get(1)); assertEquals(Lists.charactersOf("cf"), distribute.get(2)); } @Test public void testDistribute_abcdefg_on3() { List<Character> list = Lists.charactersOf("abcdefg"); List<Collection<Character>> distribute = Distributor .distribute(list, 3); assertEquals(3, distribute.size()); assertEquals(Lists.charactersOf("adg"), distribute.get(0)); assertEquals(Lists.charactersOf("be"), distribute.get(1)); assertEquals(Lists.charactersOf("cf"), distribute.get(2)); } }