@Test public void testHandlesIncludeCyclesDifferentInstances() { HasDisplayData component = new DelegatingDisplayData(new DelegatingDisplayData(new NoopDisplayData())); DisplayData data = DisplayData.from(component); assertThat(data.items(), hasSize(2)); }
@Override public void populateDisplayData(Builder builder) { builder.include("", new NoopDisplayData()); } });
@Test public void testIncludeNullPath() { thrown.expectCause(isA(NullPointerException.class)); DisplayData.from( new HasDisplayData() { @Override public void populateDisplayData(Builder builder) { builder.include(null, new NoopDisplayData()); } }); }
@Test public void testIncludeEmptyPath() { thrown.expectCause(isA(IllegalArgumentException.class)); DisplayData.from( new HasDisplayData() { @Override public void populateDisplayData(Builder builder) { builder.include("", new NoopDisplayData()); } }); }
@Test public void testIncludesComponentsAtSamePath() { HasDisplayData component = new HasDisplayData() { @Override public void populateDisplayData(Builder builder) { builder.include("p", new NoopDisplayData()).include("p", new NoopDisplayData()); } }; thrown.expectCause(isA(IllegalArgumentException.class)); DisplayData.from(component); }
@Override public void populateDisplayData(Builder builder) { builder.include("p", new NoopDisplayData()).include("p", new NoopDisplayData()); } };
@Override public void populateDisplayData(Builder builder) { builder.include(null, new NoopDisplayData()); } });