From 1da2ff7242dfc6df4d470e8519bfd8267940791a Mon Sep 17 00:00:00 2001 From: David Pursehouse Date: Tue, 22 May 2018 08:34:53 +0900 Subject: [PATCH] Repository: Deprecate getTags method Callers should use getRefDatabase().getRefsByPrefix(R_TAGS) instead. Adjust the tests accordingly. Bug: 534731 Change-Id: Ib28ae365e42720268996ff46e34cae1745ad545c Signed-off-by: David Pursehouse --- .../tst/org/eclipse/jgit/pgm/TagTest.java | 11 ++++------- .../org/eclipse/jgit/api/TagCommandTest.java | 17 +++++++++++------ .../src/org/eclipse/jgit/lib/Repository.java | 2 ++ 3 files changed, 17 insertions(+), 13 deletions(-) diff --git a/org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/TagTest.java b/org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/TagTest.java index 03391a0fb6..d38a41dcb8 100644 --- a/org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/TagTest.java +++ b/org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/TagTest.java @@ -43,10 +43,11 @@ package org.eclipse.jgit.pgm; import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertNull; import org.eclipse.jgit.api.Git; import org.eclipse.jgit.lib.CLIRepositoryTestCase; -import org.eclipse.jgit.lib.Ref; import org.junit.Before; import org.junit.Test; @@ -75,13 +76,9 @@ public class TagTest extends CLIRepositoryTestCase { @Test public void testTagDelete() throws Exception { git.tag().setName("test").call(); - - Ref ref = git.getRepository().getTags().get("test"); - assertEquals("refs/tags/test", ref.getName()); - + assertNotNull(git.getRepository().exactRef("refs/tags/test")); assertEquals("", executeUnchecked("git tag -d test")[0]); - Ref deletedRef = git.getRepository().getTags().get("test"); - assertEquals(null, deletedRef); + assertNull(git.getRepository().exactRef("refs/tags/test")); } @Test diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/TagCommandTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/TagCommandTest.java index 87098b65f4..3b29a5bbfb 100644 --- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/TagCommandTest.java +++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/TagCommandTest.java @@ -42,6 +42,7 @@ */ package org.eclipse.jgit.api; +import static org.eclipse.jgit.lib.Constants.R_TAGS; import static org.junit.Assert.assertEquals; import static org.junit.Assert.fail; @@ -135,26 +136,30 @@ public class TagCommandTest extends RepositoryTestCase { } } + private List getTags() throws Exception { + return db.getRefDatabase().getRefsByPrefix(R_TAGS); + } + @Test public void testDelete() throws Exception { try (Git git = new Git(db)) { git.commit().setMessage("initial commit").call(); Ref tagRef = git.tag().setName("tag").call(); - assertEquals(1, db.getTags().size()); + assertEquals(1, getTags().size()); List deleted = git.tagDelete().setTags(tagRef.getName()) .call(); assertEquals(1, deleted.size()); assertEquals(tagRef.getName(), deleted.get(0)); - assertEquals(0, db.getTags().size()); + assertEquals(0, getTags().size()); Ref tagRef1 = git.tag().setName("tag1").call(); Ref tagRef2 = git.tag().setName("tag2").call(); - assertEquals(2, db.getTags().size()); + assertEquals(2, getTags().size()); deleted = git.tagDelete().setTags(tagRef1.getName(), tagRef2.getName()) .call(); assertEquals(2, deleted.size()); - assertEquals(0, db.getTags().size()); + assertEquals(0, getTags().size()); } } @@ -163,13 +168,13 @@ public class TagCommandTest extends RepositoryTestCase { try (Git git = new Git(db)) { git.commit().setMessage("initial commit").call(); Ref tagRef = git.tag().setName("tag").call(); - assertEquals(1, db.getTags().size()); + assertEquals(1, getTags().size()); List deleted = git.tagDelete() .setTags(Repository.shortenRefName(tagRef.getName())).call(); assertEquals(1, deleted.size()); assertEquals(tagRef.getName(), deleted.get(0)); - assertEquals(0, db.getTags().size()); + assertEquals(0, getTags().size()); } } diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/lib/Repository.java b/org.eclipse.jgit/src/org/eclipse/jgit/lib/Repository.java index e7e2b00349..2d34736111 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/lib/Repository.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/lib/Repository.java @@ -1108,7 +1108,9 @@ public abstract class Repository implements AutoCloseable { * @return mutable map of all tags; key is short tag name ("v1.0") and value * of the entry contains the ref with the full tag name * ("refs/tags/v1.0"). + * @deprecated use {@code getRefDatabase().getRefsByPrefix(R_TAGS)} instead */ + @Deprecated @NonNull public Map getTags() { try { -- 2.39.5