### Question:
RealSourceFiles implements Reality<String, SourceFile> { @Override public void remove(String path) { File result = toFile(path); scm.prepareForDelete(result); IO.delete(result); } RealSourceFiles(File baseDir, String generatedSourceDir, String manualSourceDir,
      String codeDir, SourceCodeManagementSystem scm); @Override Collection<String> getIds(); @Override SourceFile get(String id); @Override void add(String path, SourceFile sourceFile); @Override void remove(String path); @Override void update(String path, SourceFile oldSourceFile, SourceFile newSourceFile);  }### Answer:
@Test public void deletesFile() throws IOException { File file = ensureRandomFile(aSourceSetDir(), codeDir, ""); reality.remove(file.getPath()); assertFalse("File still exists", file.exists()); }