public static ColumnSpans valueOf(String str) { final Iterable<String> split = Splitter.on(",").split(str); try { final List<Integer> list = Lists.newArrayList(Iterables.transform(split, new Function<String,Integer>() { @Override public Integer apply(String input) { return Integer.parseInt(input); } })); return asSpans(list); } catch(RuntimeException ex) { return null; } } public static ColumnSpans asSpans(int... columnSpans) {
public static ColumnSpans asSpans(int... columnSpans) { List<Integer> list = Lists.<Integer>newArrayList(); for (int i : columnSpans) { list.add(i); } return asSpans(list); } private static ColumnSpans asSpans(List<Integer> list) {
@Test public void trimmed() throws Exception { properties.put("columnSpans", " 2,3,0,7 "); assertThat(MemberGroupLayoutFacetProperties.asColumnSpans(properties), is(ColumnSpans.asSpans(2,3,0,7))); }
public void testWithMemberGroupLayout() { facetFactory.process(new ProcessClassContext(ClassWithMemberGroupLayoutAnnotation.class, methodRemover, facetHolder)); final Facet facet = facetHolder.getFacet(MemberGroupLayoutFacet.class); assertNotNull(facet); assertTrue(facet instanceof MemberGroupLayoutFacetAnnotation); final MemberGroupLayoutFacetAnnotation memberGroupsFacet = (MemberGroupLayoutFacetAnnotation) facet; final List<String> leftNames = memberGroupsFacet.getLeft(); final List<String> middleNames = memberGroupsFacet.getMiddle(); final List<String> rightNames = memberGroupsFacet.getRight(); final ColumnSpans columnSpans = memberGroupsFacet.getColumnSpans(); assertEquals(Arrays.asList("General", "Foo", "Bar"), leftNames); assertEquals(Arrays.asList("Baz", "Boz"), middleNames); assertEquals(Arrays.asList("Flip", "Flop"), rightNames); assertEquals(ColumnSpans.asSpans(2,4,6,0), columnSpans); assertNoMethodsRemoved(); }
@Test public void happyCase() throws Exception { properties.put("columnSpans", "2,3,0,7"); assertThat(MemberGroupLayoutFacetProperties.asColumnSpans(properties), is(ColumnSpans.asSpans(2,3,0,7))); }
@Test public void asSpans() { final ColumnSpans spans = MemberGroupLayout.ColumnSpans.asSpans(2,3,0,7); assertThat(spans.getLeft(), is(2)); assertThat(spans.getMiddle(), is(3)); assertThat(spans.getRight(), is(0)); assertThat(spans.getCollections(), is(7)); }