|
|
|
@ -62,28 +62,30 @@ public class TagCommandTest extends RepositoryTestCase {
|
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
|
public void testTaggingOnHead() throws GitAPIException, IOException { |
|
|
|
|
Git git = new Git(db); |
|
|
|
|
try (Git git = new Git(db); |
|
|
|
|
RevWalk walk = new RevWalk(db)) { |
|
|
|
|
RevCommit commit = git.commit().setMessage("initial commit").call(); |
|
|
|
|
Ref tagRef = git.tag().setName("tag").call(); |
|
|
|
|
assertEquals(commit.getId(), db.peel(tagRef).getPeeledObjectId()); |
|
|
|
|
RevWalk walk = new RevWalk(db); |
|
|
|
|
assertEquals("tag", walk.parseTag(tagRef.getObjectId()).getTagName()); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
|
public void testTagging() throws GitAPIException, JGitInternalException { |
|
|
|
|
Git git = new Git(db); |
|
|
|
|
try (Git git = new Git(db)) { |
|
|
|
|
git.commit().setMessage("initial commit").call(); |
|
|
|
|
RevCommit commit = git.commit().setMessage("second commit").call(); |
|
|
|
|
git.commit().setMessage("third commit").call(); |
|
|
|
|
Ref tagRef = git.tag().setObjectId(commit).setName("tag").call(); |
|
|
|
|
assertEquals(commit.getId(), db.peel(tagRef).getPeeledObjectId()); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
|
public void testUnannotatedTagging() throws GitAPIException, |
|
|
|
|
JGitInternalException { |
|
|
|
|
Git git = new Git(db); |
|
|
|
|
try (Git git = new Git(db)) { |
|
|
|
|
git.commit().setMessage("initial commit").call(); |
|
|
|
|
RevCommit commit = git.commit().setMessage("second commit").call(); |
|
|
|
|
git.commit().setMessage("third commit").call(); |
|
|
|
@ -91,10 +93,11 @@ public class TagCommandTest extends RepositoryTestCase {
|
|
|
|
|
.setAnnotated(false).call(); |
|
|
|
|
assertEquals(commit.getId(), tagRef.getObjectId()); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
|
public void testEmptyTagName() throws GitAPIException { |
|
|
|
|
Git git = new Git(db); |
|
|
|
|
try (Git git = new Git(db)) { |
|
|
|
|
git.commit().setMessage("initial commit").call(); |
|
|
|
|
try { |
|
|
|
|
// forget to tag name
|
|
|
|
@ -104,10 +107,11 @@ public class TagCommandTest extends RepositoryTestCase {
|
|
|
|
|
// should hit here
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
|
public void testInvalidTagName() throws GitAPIException { |
|
|
|
|
Git git = new Git(db); |
|
|
|
|
try (Git git = new Git(db)) { |
|
|
|
|
git.commit().setMessage("initial commit").call(); |
|
|
|
|
try { |
|
|
|
|
git.tag().setName("bad~tag~name").setMessage("some message").call(); |
|
|
|
@ -116,10 +120,11 @@ public class TagCommandTest extends RepositoryTestCase {
|
|
|
|
|
// should hit here
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
|
public void testFailureOnSignedTags() throws GitAPIException { |
|
|
|
|
Git git = new Git(db); |
|
|
|
|
try (Git git = new Git(db)) { |
|
|
|
|
git.commit().setMessage("initial commit").call(); |
|
|
|
|
try { |
|
|
|
|
git.tag().setSigned(true).setName("tag").call(); |
|
|
|
@ -128,10 +133,11 @@ public class TagCommandTest extends RepositoryTestCase {
|
|
|
|
|
// should hit here
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
|
public void testDelete() throws Exception { |
|
|
|
|
Git git = new Git(db); |
|
|
|
|
try (Git git = new Git(db)) { |
|
|
|
|
git.commit().setMessage("initial commit").call(); |
|
|
|
|
Ref tagRef = git.tag().setName("tag").call(); |
|
|
|
|
assertEquals(1, db.getTags().size()); |
|
|
|
@ -150,10 +156,11 @@ public class TagCommandTest extends RepositoryTestCase {
|
|
|
|
|
assertEquals(2, deleted.size()); |
|
|
|
|
assertEquals(0, db.getTags().size()); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
|
public void testDeleteFullName() throws Exception { |
|
|
|
|
Git git = new Git(db); |
|
|
|
|
try (Git git = new Git(db)) { |
|
|
|
|
git.commit().setMessage("initial commit").call(); |
|
|
|
|
Ref tagRef = git.tag().setName("tag").call(); |
|
|
|
|
assertEquals(1, db.getTags().size()); |
|
|
|
@ -164,56 +171,62 @@ public class TagCommandTest extends RepositoryTestCase {
|
|
|
|
|
assertEquals(tagRef.getName(), deleted.get(0)); |
|
|
|
|
assertEquals(0, db.getTags().size()); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
|
public void testDeleteEmptyTagNames() throws Exception { |
|
|
|
|
Git git = new Git(db); |
|
|
|
|
try (Git git = new Git(db)) { |
|
|
|
|
git.commit().setMessage("initial commit").call(); |
|
|
|
|
|
|
|
|
|
List<String> deleted = git.tagDelete().setTags().call(); |
|
|
|
|
assertEquals(0, deleted.size()); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
|
public void testDeleteNonExisting() throws Exception { |
|
|
|
|
Git git = new Git(db); |
|
|
|
|
try (Git git = new Git(db)) { |
|
|
|
|
git.commit().setMessage("initial commit").call(); |
|
|
|
|
|
|
|
|
|
List<String> deleted = git.tagDelete().setTags("tag").call(); |
|
|
|
|
assertEquals(0, deleted.size()); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
|
public void testDeleteBadName() throws Exception { |
|
|
|
|
Git git = new Git(db); |
|
|
|
|
try (Git git = new Git(db)) { |
|
|
|
|
git.commit().setMessage("initial commit").call(); |
|
|
|
|
|
|
|
|
|
List<String> deleted = git.tagDelete().setTags("bad~tag~name") |
|
|
|
|
.call(); |
|
|
|
|
assertEquals(0, deleted.size()); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
|
public void testShouldNotBlowUpIfThereAreNoTagsInRepository() |
|
|
|
|
throws Exception { |
|
|
|
|
Git git = new Git(db); |
|
|
|
|
try (Git git = new Git(db)) { |
|
|
|
|
git.add().addFilepattern("*").call(); |
|
|
|
|
git.commit().setMessage("initial commit").call(); |
|
|
|
|
List<Ref> list = git.tagList().call(); |
|
|
|
|
assertEquals(0, list.size()); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
|
public void testShouldNotBlowUpIfThereAreNoCommitsInRepository() |
|
|
|
|
throws Exception { |
|
|
|
|
Git git = new Git(db); |
|
|
|
|
try (Git git = new Git(db)) { |
|
|
|
|
List<Ref> list = git.tagList().call(); |
|
|
|
|
assertEquals(0, list.size()); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
|
public void testListAllTagsInRepositoryInOrder() throws Exception { |
|
|
|
|
Git git = new Git(db); |
|
|
|
|
try (Git git = new Git(db)) { |
|
|
|
|
git.add().addFilepattern("*").call(); |
|
|
|
|
git.commit().setMessage("initial commit").call(); |
|
|
|
|
|
|
|
|
@ -228,5 +241,6 @@ public class TagCommandTest extends RepositoryTestCase {
|
|
|
|
|
assertEquals("refs/tags/v2", list.get(1).getName()); |
|
|
|
|
assertEquals("refs/tags/v3", list.get(2).getName()); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|