Mercurial > hg > mercurial
changeset 321:0f5d1baa2e2c
Use revision numbers again.
Because of the change in version format TeamCity core cannot
establish an order between changes in different formats (with and
without revision number).
author | Dmitry Neverov <dmitry.neverov@jetbrains.com> |
---|---|
date | Mon, 19 Sep 2011 11:31:58 +0400 |
parents | c247d4637a96 |
children | 6667765025c6 |
files | mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialVcsSupport.java mercurial-tests/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/DagFeaturesTest.java mercurial-tests/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialVcsSupportTest.java |
diffstat | 3 files changed, 28 insertions(+), 12 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialVcsSupport.java Thu Sep 15 11:05:57 2011 +0400 +++ b/mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialVcsSupport.java Mon Sep 19 11:31:58 2011 +0400 @@ -589,9 +589,9 @@ if (parents.isEmpty()) throw new IllegalStateException("Commit " + cset.getId() + " has no parents"); List<VcsChange> files = toVcsChanges(cset.getModifiedFiles(), parents.get(0).getFullVersion(), cset.getFullVersion(), checkoutRules); - final ModificationData result = new ModificationData(cset.getTimestamp(), files, cset.getDescription(), cset.getUser(), root, cset.getId(), cset.getId()); + final ModificationData result = new ModificationData(cset.getTimestamp(), files, cset.getDescription(), cset.getUser(), root, cset.getFullVersion(), cset.getId()); for (ChangeSetRevision parent : parents) { - result.addParentRevision(parent.getId()); + result.addParentRevision(parent.getFullVersion()); } if (result.getParentRevisions().size() > 1) result.setCanBeIgnored(false);
--- a/mercurial-tests/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/DagFeaturesTest.java Thu Sep 15 11:05:57 2011 +0400 +++ b/mercurial-tests/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/DagFeaturesTest.java Mon Sep 19 11:31:58 2011 +0400 @@ -2,10 +2,12 @@ import com.intellij.openapi.diagnostic.Logger; import jetbrains.buildServer.TempFiles; +import jetbrains.buildServer.buildTriggers.vcs.mercurial.command.ChangeSetRevision; import jetbrains.buildServer.log.Log4jFactory; import jetbrains.buildServer.vcs.CheckoutRules; import jetbrains.buildServer.vcs.ModificationData; import jetbrains.buildServer.vcs.impl.VcsRootImpl; +import org.jetbrains.annotations.NotNull; import org.jmock.Mockery; import org.testng.annotations.BeforeMethod; import org.testng.annotations.Test; @@ -15,6 +17,7 @@ import static org.testng.AssertJUnit.assertEquals; import static org.testng.AssertJUnit.assertFalse; +import static org.testng.AssertJUnit.assertTrue; /** * @author dmitry.neverov @@ -57,12 +60,14 @@ assertEquals(4, changes.size()); for (ModificationData change : changes) { assertFalse(change.getParentRevisions().isEmpty()); + checkVersionsHaveNumbers(change.getParentRevisions()); } changes = myHg.collectChanges(root, "12:1e620196c4b6", "18:df04faa7575a", CheckoutRules.DEFAULT); assertEquals(6, changes.size()); for (ModificationData change : changes) { assertFalse(change.getParentRevisions().isEmpty()); + checkVersionsHaveNumbers(change.getParentRevisions()); } } @@ -72,5 +77,16 @@ VcsRootImpl root = new VcsRootBuilder().repository(myRepository).build(); List<ModificationData> changes = myHg.collectChanges(root, "1e620196c4b6", "505c5b9d01e6", CheckoutRules.DEFAULT); assertEquals(2, changes.size()); + for (ModificationData change : changes) { + checkVersionsHaveNumbers(change.getParentRevisions()); + } + } + + + private void checkVersionsHaveNumbers(@NotNull List<String> versions) { + for (String version : versions) { + ChangeSetRevision rev = new ChangeSetRevision(version); + assertTrue(rev.getRevNumber() != -1); + } } }
--- a/mercurial-tests/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialVcsSupportTest.java Thu Sep 15 11:05:57 2011 +0400 +++ b/mercurial-tests/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialVcsSupportTest.java Mon Sep 19 11:31:58 2011 +0400 @@ -97,21 +97,21 @@ ModificationData md1 = changes.get(0); ModificationData md2 = changes.get(1); ModificationData md3 = changes.get(2); - assertEquals(md1.getVersion(), "1d446e82d356"); + assertEquals(md1.getVersion(), "1:1d446e82d356"); assertEquals(md1.getDescription(), "new file added"); List<VcsChange> files1 = md1.getChanges(); assertEquals(1, files1.size()); assertEquals(VcsChangeInfo.Type.ADDED, files1.get(0).getType()); assertEquals(normalizePath(files1.get(0).getRelativeFileName()), "dir1/file3.txt"); - assertEquals(md2.getVersion(), "7209b1f1d793"); + assertEquals(md2.getVersion(), "2:7209b1f1d793"); assertEquals(md2.getDescription(), "file4.txt added"); List<VcsChange> files2 = md2.getChanges(); assertEquals(1, files2.size()); assertEquals(files2.get(0).getType(), VcsChangeInfo.Type.ADDED); assertEquals(normalizePath(files2.get(0).getRelativeFileName()), "dir1/file4.txt"); - assertEquals(md3.getVersion(), "9522278aa38d"); + assertEquals(md3.getVersion(), "3:9522278aa38d"); assertEquals(md3.getDescription(), "file removed"); List<VcsChange> files3 = md3.getChanges(); assertEquals(1, files3.size()); @@ -267,7 +267,7 @@ assertEquals(1, changes.size()); ModificationData md1 = changes.get(0); - assertEquals(md1.getVersion(), "376dcf05cd2a"); + assertEquals(md1.getVersion(), "7:376dcf05cd2a"); assertEquals(md1.getDescription(), "new file added in the test_branch"); List<VcsChange> files1 = md1.getChanges(); assertEquals(1, files1.size()); @@ -278,7 +278,7 @@ assertEquals(1, changes.size()); md1 = changes.get(0); - assertEquals(md1.getVersion(), "04c3ae4c6312"); + assertEquals(md1.getVersion(), "8:04c3ae4c6312"); assertEquals(md1.getDescription(), "file modified"); } @@ -358,8 +358,8 @@ List<ModificationData> changes = myVcs.collectChanges(defaultRoot, "11:48177654181c", branchRoot, "10:fc524efc2bc4", CheckoutRules.DEFAULT); assertEquals(changes.size(), 2); - assertEquals("8c44244d6645", changes.get(0).getVersion()); - assertEquals("fc524efc2bc4", changes.get(1).getVersion()); + assertEquals("9:8c44244d6645", changes.get(0).getVersion()); + assertEquals("10:fc524efc2bc4", changes.get(1).getVersion()); } public void collectChanges_should_return_all_changes_from_branch() throws Exception { @@ -375,9 +375,9 @@ List<ModificationData> changes = collectChanges(vcsRoot, "1:a3d15477d297", "4:6eeb8974fe67", CheckoutRules.DEFAULT); assertEquals(changes.size(), 3); - assertEquals("db8a04d262f3", changes.get(0).getVersion()); - assertEquals("2538c02bafeb", changes.get(1).getVersion()); - assertEquals("6eeb8974fe67", changes.get(2).getVersion()); + assertEquals("2:db8a04d262f3", changes.get(0).getVersion()); + assertEquals("3:2538c02bafeb", changes.get(1).getVersion()); + assertEquals("4:6eeb8974fe67", changes.get(2).getVersion()); assertFiles(Arrays.asList("A dir1/file1.txt"), changes.get(0)); assertFiles(Arrays.asList("A dir2/file2.txt"), changes.get(1));