@Test public void getLatestMaterialVersion_couldNotCloneRepository_errorMessage() { GitMaterial gitMaterial = new GitMaterial(); gitMaterial.setErrorMessage("errorMessage"); Mockito.when(this.mockedGitService.repositoryExists(gitMaterial)).thenReturn(false); Mockito.when(this.mockedFileManagementService.deleteDirectoryRecursively(Mockito.anyString())).thenReturn(null); Mockito.when(this.mockedGitService.cloneRepository(gitMaterial)).thenReturn(gitMaterial); String expectedResult = "errorMessage"; String actualResult = this.gitMaterialUpdater.getLatestMaterialVersion(gitMaterial).getErrorMessage(); Assert.assertEquals(expectedResult, actualResult); }
@Override public GitMaterial getLatestMaterialVersion(GitMaterial gitMaterial) { boolean repositoryExists = this.gitService.repositoryExists(gitMaterial); if (!repositoryExists) { this.fileManagementService.deleteDirectoryRecursively(gitMaterial.getDestination()); this.gitService.cloneRepository(gitMaterial); if (!gitMaterial.getErrorMessage().isEmpty()) { this.fileManagementService.deleteDirectoryRecursively(gitMaterial.getDestination()); return gitMaterial; } } this.gitService.fetchLatestCommit(gitMaterial); return gitMaterial; }
GitMaterialUpdater extends MaterialUpdater<GitMaterial> { @Override public GitMaterial getLatestMaterialVersion(GitMaterial gitMaterial) { boolean repositoryExists = this.gitService.repositoryExists(gitMaterial); if (!repositoryExists) { this.fileManagementService.deleteDirectoryRecursively(gitMaterial.getDestination()); this.gitService.cloneRepository(gitMaterial); if (!gitMaterial.getErrorMessage().isEmpty()) { this.fileManagementService.deleteDirectoryRecursively(gitMaterial.getDestination()); return gitMaterial; } } this.gitService.fetchLatestCommit(gitMaterial); return gitMaterial; } }
GitMaterialUpdater extends MaterialUpdater<GitMaterial> { @Override public GitMaterial getLatestMaterialVersion(GitMaterial gitMaterial) { boolean repositoryExists = this.gitService.repositoryExists(gitMaterial); if (!repositoryExists) { this.fileManagementService.deleteDirectoryRecursively(gitMaterial.getDestination()); this.gitService.cloneRepository(gitMaterial); if (!gitMaterial.getErrorMessage().isEmpty()) { this.fileManagementService.deleteDirectoryRecursively(gitMaterial.getDestination()); return gitMaterial; } } this.gitService.fetchLatestCommit(gitMaterial); return gitMaterial; } GitMaterialUpdater();  GitMaterialUpdater(IGitService gitService, IFileManagementService fileManagementService); }
GitMaterialUpdater extends MaterialUpdater<GitMaterial> { @Override public GitMaterial getLatestMaterialVersion(GitMaterial gitMaterial) { boolean repositoryExists = this.gitService.repositoryExists(gitMaterial); if (!repositoryExists) { this.fileManagementService.deleteDirectoryRecursively(gitMaterial.getDestination()); this.gitService.cloneRepository(gitMaterial); if (!gitMaterial.getErrorMessage().isEmpty()) { this.fileManagementService.deleteDirectoryRecursively(gitMaterial.getDestination()); return gitMaterial; } } this.gitService.fetchLatestCommit(gitMaterial); return gitMaterial; } GitMaterialUpdater();  GitMaterialUpdater(IGitService gitService, IFileManagementService fileManagementService); @Override GitMaterial getLatestMaterialVersion(GitMaterial gitMaterial); @Override boolean areMaterialsSameVersion(GitMaterial latestMaterial, GitMaterial dbMaterial); }
GitMaterialUpdater extends MaterialUpdater<GitMaterial> { @Override public GitMaterial getLatestMaterialVersion(GitMaterial gitMaterial) { boolean repositoryExists = this.gitService.repositoryExists(gitMaterial); if (!repositoryExists) { this.fileManagementService.deleteDirectoryRecursively(gitMaterial.getDestination()); this.gitService.cloneRepository(gitMaterial); if (!gitMaterial.getErrorMessage().isEmpty()) { this.fileManagementService.deleteDirectoryRecursively(gitMaterial.getDestination()); return gitMaterial; } } this.gitService.fetchLatestCommit(gitMaterial); return gitMaterial; } GitMaterialUpdater();  GitMaterialUpdater(IGitService gitService, IFileManagementService fileManagementService); @Override GitMaterial getLatestMaterialVersion(GitMaterial gitMaterial); @Override boolean areMaterialsSameVersion(GitMaterial latestMaterial, GitMaterial dbMaterial);  }