### Question:
StateHolders implements PartialStateHolder, Iterable<T> { public void add(T stateHolder) { Assert.notNull(stateHolder, "StateHolder must not be null"); clearInitialState(); this.stateHolders.add(stateHolder); }  void add(T stateHolder); boolean remove(T stateHolder); boolean isTransient(); void setTransient(boolean newTransientValue); void markInitialState(); void clearInitialState(); boolean initialStateMarked(); Object saveState(FacesContext context); @SuppressWarnings("unchecked") void restoreState(FacesContext context, Object state); Iterator<T> iterator(); List<T> asList();  }### Answer:
@Test public void shouldNotAddNull() throws Exception { this.thrown.expect(IllegalArgumentException.class); this.thrown.expectMessage("StateHolder must not be null"); this.stateHolders.add(null); }