ReplicationIT: Don't swallow exceptions on failed repository operations Change I02d8cda0a undid the improvements in the tests that were done by change I0f0caca03. Rework the tests to reintroduce those improvements. Change-Id: I812674325bb6756fbcdc3d9674fc8ca69c8f3c82
diff --git a/src/test/java/com/googlesource/gerrit/plugins/replication/ReplicationIT.java b/src/test/java/com/googlesource/gerrit/plugins/replication/ReplicationIT.java index ebb6862..0b57f11 100644 --- a/src/test/java/com/googlesource/gerrit/plugins/replication/ReplicationIT.java +++ b/src/test/java/com/googlesource/gerrit/plugins/replication/ReplicationIT.java
@@ -109,11 +109,13 @@ String[] replicationTasks = storagePath.toFile().list(); assertThat(replicationTasks).hasLength(1); - waitUntil(() -> getRef(getRepo(targetProject), sourceRef) != null); + try (Repository repo = repoManager.openRepository(targetProject)) { + waitUntil(() -> checkedGetRef(repo, sourceRef) != null); - Ref targetBranchRef = getRef(getRepo(targetProject), sourceRef); - assertThat(targetBranchRef).isNotNull(); - assertThat(targetBranchRef.getObjectId()).isEqualTo(sourceCommit.getId()); + Ref targetBranchRef = getRef(repo, sourceRef); + assertThat(targetBranchRef).isNotNull(); + assertThat(targetBranchRef.getObjectId()).isEqualTo(sourceCommit.getId()); + } } @Test @@ -154,18 +156,20 @@ String[] replicationTasks = storagePath.toFile().list(); assertThat(replicationTasks).hasLength(2); - waitUntil( - () -> - (getRef(getRepo(targetProject1), sourceRef) != null - && getRef(getRepo(targetProject2), sourceRef) != null)); + try (Repository repo1 = repoManager.openRepository(targetProject1); + Repository repo2 = repoManager.openRepository(targetProject2)) { + waitUntil( + () -> + (checkedGetRef(repo1, sourceRef) != null && checkedGetRef(repo2, sourceRef) != null)); - Ref targetBranchRef1 = getRef(getRepo(targetProject1), sourceRef); - assertThat(targetBranchRef1).isNotNull(); - assertThat(targetBranchRef1.getObjectId()).isEqualTo(sourceCommit.getId()); + Ref targetBranchRef1 = getRef(repo1, sourceRef); + assertThat(targetBranchRef1).isNotNull(); + assertThat(targetBranchRef1.getObjectId()).isEqualTo(sourceCommit.getId()); - Ref targetBranchRef2 = getRef(getRepo(targetProject2), sourceRef); - assertThat(targetBranchRef2).isNotNull(); - assertThat(targetBranchRef2.getObjectId()).isEqualTo(sourceCommit.getId()); + Ref targetBranchRef2 = getRef(repo2, sourceRef); + assertThat(targetBranchRef2).isNotNull(); + assertThat(targetBranchRef2.getObjectId()).isEqualTo(sourceCommit.getId()); + } } @Test @@ -183,23 +187,8 @@ assertThat(storagePath.toFile().list()).hasLength(4); } - private Repository getRepo(Project.NameKey targetProject) { - try { - return repoManager.openRepository(targetProject); - } catch (Exception e) { - logger.atSevere().withCause(e).log( - "Unable to open repository associated with project %s", targetProject); - return null; - } - } - - private Ref getRef(Repository repo, String branchName) { - try { - return repo.getRefDatabase().exactRef(branchName); - } catch (IOException e) { - e.printStackTrace(); - return null; - } + private Ref getRef(Repository repo, String branchName) throws IOException { + return repo.getRefDatabase().exactRef(branchName); } private Ref checkedGetRef(Repository repo, String branchName) {