### Question:
DesiredSourceFiles implements Desired<String, SourceFile> { @Override public Collection<String> getIds() { return Collections.unmodifiableCollection(sourceFiles().keySet()); } DesiredSourceFiles(Document radl, SourceFilesGenerator generator, File baseDir); @Override Collection<String> getIds(); @Override SourceFile get(String id);  }### Answer:
@Test public void returnsPathsOfSourceFilesAsIds() throws Exception { String path1 = "z" + RANDOM.string(); String path2 = "a" + RANDOM.string(); when(generator.generateFrom(radl, new File(basePath))).thenReturn( Arrays.asList(new SourceFile(path1), new SourceFile(path2))); List<String> expected = Arrays.asList(path2, path1); Collection<String> actual = desired.getIds(); TestUtil.assertCollectionEquals("IDs", expected, actual); }