### Question:
AbstractParentStructure implements HierarchicalStructureMember { @Override public String toString() { return ToStringBuilder.reflectionToString(this); } AbstractParentStructure(final String name, final int level); void addChildMember(final StructureMember child); @Override boolean equals(final Object obj); @SuppressWarnings("unchecked") T getChildMember(final int index); int getChildMemberCount(); @Override int getLevel(); @Override String getName(); @Override int hashCode(); @Override String toString();  }### Answer:
@Test public void testConstructZeroLevel() { IllegalArgumentException e = assertThrows(IllegalArgumentException.class, () -> { new ConcreteStructure(name, 0); }); assertThat(e.getMessage()).isEqualTo("Level cannot be less than 1: " + Integer.toString(0)); }