### Question:
StringItemSource implements ItemSource<String> { @Override public String getSource() { return source; } StringItemSource(String source); @Override String getSource(); @Override String toString();  }### Answer:
@Test public void doesntChangeTheSource() { String expected = "expectedSource"; ItemSource<String> itemSource = new StringItemSource(expected); String actualSource = itemSource.getSource(); Assert.assertEquals(expected, actualSource); }
@Test public void releaseHasNoSideEffect() { String expected = "expectedSource"; ItemSource<String> itemSource = new StringItemSource(expected); itemSource.release(); Assert.assertEquals(expected, itemSource.getSource()); }