### Question:
SpatialHierarchicalImpl implements Spatial { @Override public float getAngle() { return localAngle + parent.getAngle(); } SpatialHierarchicalImpl(Spatial parent, float width, float height);  SpatialHierarchicalImpl(Spatial parent, float width, float height, float localX, float localY, float localAngle);  SpatialHierarchicalImpl();  SpatialHierarchicalImpl(Spatial parent); static SpatialHierarchicalImpl hierarchicalWithParent(Spatial parent, boolean updateWithParent); Spatial getParent(); void setParent(Spatial parent); @Override float getX(); @Override float getY(); @Override Vector2 getPosition(); @Override void setPosition(float x, float y); void setLocalPosition(float x, float y); @Override float getAngle(); void setLocalAngle(float angle); @Override void setAngle(float angle); @Override float getWidth(); @Override float getHeight(); @Override void setSize(float width, float height); @Override void set(Spatial spatial);  }### Answer:
@Test public void shouldReturnParentAngle() { Spatial parent = new SpatialImpl(0f, 0f, 1f, 1f, 55f); Spatial child = new SpatialHierarchicalImpl(parent, 1f, 1f); assertThat(child.getAngle(), IsEqual.equalTo(55f)); }