@Test(expected=IllegalArgumentException.class) public void mustThrowExceptionWhenNoExplicitDisplayNameAndNoBoundObject() { fixture.createChild().build(); }
@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 aRenamableViewMustHaveAnId() { final HView view = hvManager.createView(). withDisplayName("My View 1"). thatCanBeRenamed(). build(); assertThat(view, is(notNullValue())); assertThat(view.getId(), is(notNullValue())); }
@Test public void aRenamableItemMustHaveAnId() { final HItem item = fixture.createChild(). withDisplayName("My Item 1"). thatCanBeRenamed(). build(); assertThat(item, is(notNullValue())); assertThat(item.getId(), is(notNullValue())); }
@Before public void setUp() { hViewManager = Locator.find(HViewManager); hViewManager.as(Resettable.class).reset(); hView = hViewManager.createView().withDisplayName("view 1").build(); hItems[0] = hView.createChild().withDisplayName("item 1").build(); hItems[1] = hView.createChild().withDisplayName("item 2").build(); hItems[2] = hView.createChild().withDisplayName("item 3").build(); }
@Test public void mustCreateViewsWithDifferentIds() { final List<Id> ids = new ArrayList<Id>(); for (int i = 0; i < 100; i++) { final HView view1 = hvManager.createView(). withDisplayName("My View " + i). build(); assertFalse(ids.contains(view1.getId())); ids.add(view1.getId()); } }
@Test public void mustUseTheDisplayableOfBoundObjectWhenNoExpicitDisplayableIsProvided() { final Displayable displayable = mock(Displayable.class); final Lookup lookup = Lookups.fixed(displayable); final Lookup.Provider boundObject = mock(Lookup.Provider.class); when(boundObject.getLookup()).thenReturn(lookup); final HItem item = fixture.createChild().boundTo(boundObject).build(); assertThat(item.as(Displayable), is(sameInstance(displayable))); }
@Test public void aDefaultItemMustReturnTheRightView() { final HItem item = fixture.createChild(). withDisplayName("My Item 1"). build(); assertThat(item, is(notNullValue())); assertThat(item.getView(), is(sameInstance(fixture))); }
@Test public void mustUseTheProvidedDisplayableEvenWhenTheBoundObjectHasGotExpicitDisplayable() { final Displayable displayable = mock(Displayable.class); final Lookup lookup = Lookups.fixed(displayable); final Lookup.Provider boundObject = mock(Lookup.Provider.class); when(boundObject.getLookup()).thenReturn(lookup); final HItem item = fixture.createChild().boundTo(boundObject).withDisplayName("new name").build(); assertThat(item.as(Displayable), is(not(sameInstance(displayable)))); assertThat(item.as(Displayable).getDisplayName(), is("new name")); }
@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 aRenamableItemMustReturnTheRightView() { final HItem item = fixture.createChild(). withDisplayName("My Item 1"). thatCanBeRenamed(). build(); assertThat(item, is(notNullValue())); assertThat(item.getView(), is(sameInstance(fixture))); }
@Before public void setUp() { hViewManager = Locator.find(HViewManager); hViewManager.as(Resettable.class).reset(); assertThat(hViewManager.findViews().count(), is(0)); hViews[0] = hViewManager.createView().withDisplayName("view 1").build(); hViews[1] = hViewManager.createView().withDisplayName("view 2").build(); hViews[2] = hViewManager.createView().withDisplayName("view 3").build(); }
@Test public void aDefaultItemMustReturnTheRightView() { final HItem item = fixture.createChild(). withDisplayName("My Item 1"). build(); assertThat(item, is(notNullValue())); assertThat(item.getView(), is(sameInstance(fixture.getView()))); }
@Test(expected=AsException.class) public void aDefaultViewMustNotBeMovable() { final HView view = hvManager.createView(). withDisplayName("My View 1"). build(); view.as(Movable); }
@Test(expected=AsException.class) public void aDefaultItemMustNotBeMovable() { final HItem item = fixture.createChild(). withDisplayName("My Item 1"). build(); item.as(Movable); }
@Before public void setUp() { final HViewManager hvManager = new SimpleHViewManager(); fixture = hvManager.createView().withDisplayName("View 1").build(); } }
@Test public void mustMakeTheBoundObjectAvailableInTheLookup() { final BoundObject boundObject = new BoundObject(); final HItem hItem = fixture.createChild().boundTo(boundObject).withDisplayName("name").build(); assertThat(hItem.getLookup().lookup(BoundObject.class), is(sameInstance(boundObject))); }
@Test(expected=AsException.class) public void aRenamableItemMustNotBeMovable() { final HItem item = fixture.createChild(). withDisplayName("My Item 1"). thatCanBeRenamed(). build(); item.as(Movable); }
@Test public void mustMakeTheBoundObjectAvailableAsAPersonality() { final BoundObject boundObject = new BoundObject(); final HItem hItem = fixture.createChild().boundTo(boundObject).withDisplayName("name").build(); assertThat(hItem.as(BoundObject.class), is(sameInstance(boundObject))); }