### Question:
SpatialHierarchicalImpl2 implements Spatial { @Override public float getAngle() { return child.getAngle() + parent.getAngle(); } SpatialHierarchicalImpl2(Spatial parent, Spatial child); @Override float getX(); @Override float getY(); @Override Vector2 getPosition(); @Override void setPosition(float x, float y); @Override float getAngle(); @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 SpatialImpl(0f, 0f, 1f, 1f, 0f); Spatial hierarchicalSpatial = new SpatialHierarchicalImpl2(parent, child); assertThat(hierarchicalSpatial.getAngle(), IsEqual.equalTo(55f)); assertThat(child.getAngle(), IsEqual.equalTo(0f)); }