Browse Source

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 <david.pursehouse@gmail.com>
tags/v5.0.0.201805221745-rc1
David Pursehouse 6 years ago
parent
commit
1da2ff7242

+ 4
- 7
org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/TagTest.java View File

@@ -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

+ 11
- 6
org.eclipse.jgit.test/tst/org/eclipse/jgit/api/TagCommandTest.java View File

@@ -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<Ref> 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<String> 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<String> 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());
}
}


+ 2
- 0
org.eclipse.jgit/src/org/eclipse/jgit/lib/Repository.java View File

@@ -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<String, Ref> getTags() {
try {

Loading…
Cancel
Save