FilesystemInstallation implements Installation { @Override public synchronized void finish() { this.running = false; InstallationUtil.deleteMarkerFile(versionFolder); } private  FilesystemInstallation(File versionFolder); static Installation create(File versionFolder, ProgressReport report); @Override synchronized void addContent(DataInVersion dataInVersion); @Override synchronized void abort(); @Override synchronized void finish(); @Override boolean isRunning();  }
@Test public void removesProgressMarkerWhenDone() throws Exception { installation.finish(); assertThat(hasMarkerFile(folder.getRoot()), is(false)); }