summaryrefslogtreecommitdiffstats
path: root/gerrit-server/src/test/java/com/google/gerrit/server/change/IncludedInResolverTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'gerrit-server/src/test/java/com/google/gerrit/server/change/IncludedInResolverTest.java')
-rw-r--r--gerrit-server/src/test/java/com/google/gerrit/server/change/IncludedInResolverTest.java207
1 files changed, 0 insertions, 207 deletions
diff --git a/gerrit-server/src/test/java/com/google/gerrit/server/change/IncludedInResolverTest.java b/gerrit-server/src/test/java/com/google/gerrit/server/change/IncludedInResolverTest.java
deleted file mode 100644
index e91c3b411a..0000000000
--- a/gerrit-server/src/test/java/com/google/gerrit/server/change/IncludedInResolverTest.java
+++ /dev/null
@@ -1,207 +0,0 @@
-// Copyright (C) 2013 The Android Open Source Project
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-package com.google.gerrit.server.change;
-
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-import org.eclipse.jgit.api.Git;
-import org.eclipse.jgit.api.MergeCommand.FastForwardMode;
-import org.eclipse.jgit.junit.RepositoryTestCase;
-import org.eclipse.jgit.lib.ObjectId;
-import org.eclipse.jgit.lib.Ref;
-import org.eclipse.jgit.revwalk.RevCommit;
-import org.eclipse.jgit.revwalk.RevTag;
-import org.eclipse.jgit.revwalk.RevWalk;
-import org.junit.After;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
-
-public class IncludedInResolverTest extends RepositoryTestCase {
-
- // Branch names
- private static final String BRANCH_MASTER = "master";
- private static final String BRANCH_1_0 = "rel-1.0";
- private static final String BRANCH_1_3 = "rel-1.3";
- private static final String BRANCH_2_0 = "rel-2.0";
- private static final String BRANCH_2_5 = "rel-2.5";
-
- // Tag names
- private static final String TAG_1_0 = "1.0";
- private static final String TAG_1_0_1 = "1.0.1";
- private static final String TAG_1_3 = "1.3";
- private static final String TAG_2_0_1 = "2.0.1";
- private static final String TAG_2_0 = "2.0";
- private static final String TAG_2_5 = "2.5";
- private static final String TAG_2_5_ANNOTATED = "2.5-annotated";
- private static final String TAG_2_5_ANNOTATED_TWICE = "2.5-annotated_twice";
-
- // Commits
- private RevCommit commit_initial;
- private RevCommit commit_v1_3;
- private RevCommit commit_v2_5;
-
- private List<String> expTags = new ArrayList<>();
- private List<String> expBranches = new ArrayList<>();
-
- private RevWalk revWalk;
-
- @Override
- @Before
- public void setUp() throws Exception {
- super.setUp();
-
- /*- The following graph will be created.
-
- o tag 2.5, 2.5_annotated, 2.5_annotated_twice
- |\
- | o tag 2.0.1
- | o tag 2.0
- o | tag 1.3
- |/
- o c3
-
- | o tag 1.0.1
- |/
- o tag 1.0
- o c2
- o c1
-
- */
-
- // TODO(dborowitz): Use try/finally when this doesn't double-close the repo.
- @SuppressWarnings("resource")
- Git git = new Git(db);
- revWalk = new RevWalk(db);
- // Version 1.0
- commit_initial = git.commit().setMessage("c1").call();
- git.commit().setMessage("c2").call();
- RevCommit commit_v1_0 = git.commit().setMessage("version 1.0").call();
- git.tag().setName(TAG_1_0).setObjectId(commit_v1_0).call();
- RevCommit c3 = git.commit().setMessage("c3").call();
- // Version 1.01
- createAndCheckoutBranch(commit_v1_0, BRANCH_1_0);
- RevCommit commit_v1_0_1 = git.commit().setMessage("verREFS_HEADS_RELsion 1.0.1").call();
- git.tag().setName(TAG_1_0_1).setObjectId(commit_v1_0_1).call();
- // Version 1.3
- createAndCheckoutBranch(c3, BRANCH_1_3);
- commit_v1_3 = git.commit().setMessage("version 1.3").call();
- git.tag().setName(TAG_1_3).setObjectId(commit_v1_3).call();
- // Version 2.0
- createAndCheckoutBranch(c3, BRANCH_2_0);
- RevCommit commit_v2_0 = git.commit().setMessage("version 2.0").call();
- git.tag().setName(TAG_2_0).setObjectId(commit_v2_0).call();
- RevCommit commit_v2_0_1 = git.commit().setMessage("version 2.0.1").call();
- git.tag().setName(TAG_2_0_1).setObjectId(commit_v2_0_1).call();
-
- // Version 2.5
- createAndCheckoutBranch(commit_v1_3, BRANCH_2_5);
- git.merge()
- .include(commit_v2_0_1)
- .setCommit(false)
- .setFastForward(FastForwardMode.NO_FF)
- .call();
- commit_v2_5 = git.commit().setMessage("version 2.5").call();
- git.tag().setName(TAG_2_5).setObjectId(commit_v2_5).setAnnotated(false).call();
- Ref ref_tag_2_5_annotated =
- git.tag().setName(TAG_2_5_ANNOTATED).setObjectId(commit_v2_5).setAnnotated(true).call();
- RevTag tag_2_5_annotated = revWalk.parseTag(ref_tag_2_5_annotated.getObjectId());
- git.tag()
- .setName(TAG_2_5_ANNOTATED_TWICE)
- .setObjectId(tag_2_5_annotated)
- .setAnnotated(true)
- .call();
- }
-
- @Override
- @After
- public void tearDown() throws Exception {
- revWalk.close();
- super.tearDown();
- }
-
- @Test
- public void resolveLatestCommit() throws Exception {
- // Check tip commit
- IncludedInResolver.Result detail = resolve(commit_v2_5);
-
- // Check that only tags and branches which refer the tip are returned
- expTags.add(TAG_2_5);
- expTags.add(TAG_2_5_ANNOTATED);
- expTags.add(TAG_2_5_ANNOTATED_TWICE);
- assertEquals(expTags, detail.getTags());
- expBranches.add(BRANCH_2_5);
- assertEquals(expBranches, detail.getBranches());
- }
-
- @Test
- public void resolveFirstCommit() throws Exception {
- // Check first commit
- IncludedInResolver.Result detail = resolve(commit_initial);
-
- // Check whether all tags and branches are returned
- expTags.add(TAG_1_0);
- expTags.add(TAG_1_0_1);
- expTags.add(TAG_1_3);
- expTags.add(TAG_2_0);
- expTags.add(TAG_2_0_1);
- expTags.add(TAG_2_5);
- expTags.add(TAG_2_5_ANNOTATED);
- expTags.add(TAG_2_5_ANNOTATED_TWICE);
- assertEquals(expTags, detail.getTags());
-
- expBranches.add(BRANCH_MASTER);
- expBranches.add(BRANCH_1_0);
- expBranches.add(BRANCH_1_3);
- expBranches.add(BRANCH_2_0);
- expBranches.add(BRANCH_2_5);
- assertEquals(expBranches, detail.getBranches());
- }
-
- @Test
- public void resolveBetwixtCommit() throws Exception {
- // Check a commit somewhere in the middle
- IncludedInResolver.Result detail = resolve(commit_v1_3);
-
- // Check whether all succeeding tags and branches are returned
- expTags.add(TAG_1_3);
- expTags.add(TAG_2_5);
- expTags.add(TAG_2_5_ANNOTATED);
- expTags.add(TAG_2_5_ANNOTATED_TWICE);
- assertEquals(expTags, detail.getTags());
-
- expBranches.add(BRANCH_1_3);
- expBranches.add(BRANCH_2_5);
- assertEquals(expBranches, detail.getBranches());
- }
-
- private IncludedInResolver.Result resolve(RevCommit commit) throws Exception {
- return IncludedInResolver.resolve(db, revWalk, commit);
- }
-
- private void assertEquals(List<String> list1, List<String> list2) {
- Collections.sort(list1);
- Collections.sort(list2);
- Assert.assertEquals(list1, list2);
- }
-
- private void createAndCheckoutBranch(ObjectId objectId, String branchName) throws IOException {
- String fullBranchName = "refs/heads/" + branchName;
- super.createBranch(objectId, fullBranchName);
- super.checkoutBranch(fullBranchName);
- }
-}