@Test(expected=IllegalArgumentException.class) public void mustThrowExceptionWhenNoExplicitDisplayNameAndNoBoundObject() { fixture.createChild().build(); }
@Test public void mustReturnTheChildrenInOrder() { final HItem item1 = fixture.createChild().withDisplayName("name 1").build(); final HItem item2 = fixture.createChild().withDisplayName("name 2").build(); final HItem item3 = fixture.createChild().withDisplayName("name 3").build(); final List<? extends HItem> children = fixture.findChildren().results(); assertThat(children, is(notNullValue())); assertThat(children.size(), is(3)); assertThat(children.get(0), is(sameInstance(item1))); assertThat(children.get(1), is(sameInstance(item2))); assertThat(children.get(2), is(sameInstance(item3))); } }
@Test public void aDefaultViewCannotBeRenamed() { final HView view = hvManager.createView(). withDisplayName("My View 1"). build(); assertThat(view, is(notNullValue())); assertThat(view.as(Displayable), is(not(instanceOf(MutableDisplayable.class)))); }
@Test public void testFindOrCreateItemWithExistingItem() { final HItem item1 = fixture.createChild().withDisplayName("a name").build(); final HItem item2 = fixture.findOrCreateChild().withId(item1.getId()). withDisplayName("the name"). build(); assertThat(item2, is(sameInstance(item1))); assertThat(item1.as(Displayable).getDisplayName(), is("a name")); }
@Override @Nonnull public Boolean run() { keys.addAll(hView.findChildren().results()); return true; } });
@Test public void testFindOrCreateViewWithExistingView() { final HView view1 = hvManager.createView().withDisplayName("a name").build(); final HView view2 = hvManager.findOrCreateView().withId(view1.getId()). withDisplayName("the name"). build(); assertThat(view2, is(sameInstance(view1))); assertThat(view1.as(Displayable).getDisplayName(), is("a name")); }
/******************************************************************************************************************* * * ******************************************************************************************************************/ public HViewNode (final @Nonnull HView hView) { super(hView, Children.create(new HChildFactory(hView), true), new ProxyLookup(hView.getLookup(), Lookups.fixed(hView))); } }
@Test public void testFindOrCreateItemWithNoItem() { final HItem item = fixture.findOrCreateChild().withId("id1"). withDisplayName("the name"). build(); assertThat(item.getId(), is(new Id("id1"))); }
@Test public void aDefaultViewMustBeInitiallyEmpty() { final HView view = hvManager.createView(). withDisplayName("My View 1"). build(); assertThat(view.findChildren().count(), is(0)); }
@Test public void aDefaultViewMustHaveAnId() { final HView view = hvManager.createView(). withDisplayName("My View 1"). build(); assertThat(view, is(notNullValue())); assertThat(view.getId(), is(notNullValue())); }
@Test(expected=IllegalArgumentException.class) public void mustThrowExceptionWhenNoExplicitDisplayNameAndBoundObjectHasNoDisplayName() { final Lookup.Provider boundObject = mock(Lookup.Provider.class); when(boundObject.getLookup()).thenReturn(Lookup.EMPTY); fixture.createChild().boundTo(boundObject).build(); }
@Test public void mustBeAbleToFindItemById() throws NotFoundException { final HItem item1 = fixture.createChild(). withDisplayName("My Item 1"). build(); final HItem item2 = fixture.createChild(). withDisplayName("My Item 2"). build(); assertThat(fixture.findChildren().id(item1.getId()).result(), is(sameInstance(item1))); assertThat(fixture.findChildren().id(item2.getId()).result(), is(sameInstance(item2))); assertThat(fixture.findChildren().id("fakeId").count(), is(0)); }
@Test public void aRenamableViewMustBeInitiallyEmpty() { final HView view = hvManager.createView(). withDisplayName("My View 1"). thatCanBeRenamed(). build(); assertThat(view.findChildren().count(), is(0)); }
@Test public void aRenamableViewCanBeRenamed() { final HView view = hvManager.createView(). withDisplayName("My View 1"). thatCanBeRenamed(). build(); assertThat(view, is(notNullValue())); view.as(MutableDisplayable.class).setDisplayName("New View Name"); assertThat(view.as(Displayable).getDisplayName(), is("New View Name")); }
@Test public void aRenamableViewMustHaveAnId() { final HView view = hvManager.createView(). withDisplayName("My View 1"). thatCanBeRenamed(). build(); assertThat(view, is(notNullValue())); assertThat(view.getId(), is(notNullValue())); }
@Test public void aDefaultItemCannotBeRenamed() { final HItem item = fixture.createChild(). withDisplayName("My Item 1"). build(); assertThat(item, is(notNullValue())); assertThat(item.as(Displayable), is(not(instanceOf(MutableDisplayable.class)))); }
@Test public void aDefaultViewMustHaveTheCorrectName() { final HView view = hvManager.createView(). withDisplayName("My View 1"). build(); assertThat(view, is(notNullValue())); assertThat(view.as(Displayable).getDisplayName(), is("My View 1")); }
@Test public void testFindOrCreateViewWithNoView() { final HView view = hvManager.findOrCreateView().withId("id1"). withDisplayName("the name"). build(); assertThat(view.getId(), is(new Id("id1"))); }
@Test public void aDefaultItemMustHaveAnId() { final HItem item = fixture.createChild(). withDisplayName("My Item 1"). build(); assertThat(item, is(notNullValue())); assertThat(item.getId(), is(notNullValue())); }