### Question:
TemplatedArchive extends AbstractArchive { @Override public String getPathToExecutable() { return applyTemplate(this.archiveFormat.getExecutableTemplate()); } TemplatedArchive(ArchiveFormat archiveFormat,
                          String version); @Override String getBaseUrl(); @Override String getExtension(); @Override String getArchiveName(); @Override String getPathToExecutable(); @Override String getVersion(); @Override String getClassifier();  }### Answer:
@Test public void testGetPathToExecutable() { when(archiveFormat.getExecutableTemplate()).thenReturn(EXECUTABLE_TEMPLATE); when(archiveFormat.getClassifier()).thenReturn(CLASSIFIER); when(archiveFormat.getExtension()).thenReturn(EXTENSION); assertThat(archive.getPathToExecutable()).isEqualTo(PATH_TO_EXECUTABLE); }