public void ShouldRetrieveRevisionsWithModifiedFiles()
        {
            using (var mercurial = CreateMercurial())
            {
                MercurialRevisionId startRevisionId = CreateMercurialRevisionId(DateTime.Parse("2012-04-09 15:03:02 PM"));
                var revisionRange = mercurial.GetFromTillHead(startRevisionId, 100).Single();

                var revision = mercurial.GetRevisions(revisionRange).OrderBy(x => x.Time).First();

                AssertEqual(revision.Entries, new[]
                {
                    new RevisionEntryInfo {
                        Path = "firstFile.txt", Action = FileActionEnum.Modify
                    },
                    new RevisionEntryInfo
                    {
                        Path = @"firstFolder/firstFolderFile.txt", Action = FileActionEnum.Modify
                    },
                    new RevisionEntryInfo {
                        Path = "secondFile.txt", Action = FileActionEnum.Modify
                    },
                    new RevisionEntryInfo
                    {
                        Path = @"secondFolder/secondFolderFile.txt", Action = FileActionEnum.Modify
                    }
                });
            }
        }
        public void ShouldRetrieveRevisionsWithAddedFiles()
        {
            using (var mercurial = CreateMercurial())
            {
                MercurialRevisionId startRevisionId = CreateMercurialRevisionId(DateTime.Parse("2012-04-09 11:43:18 AM"));
                var revisionRange = mercurial.GetFromTillHead(startRevisionId, 100).Single();

                var revision = mercurial.GetRevisions(revisionRange).OrderBy(x => x.Time).First();

                AssertEqual(revision.Entries, new[]
                {
                    new RevisionEntryInfo {
                        Path = ".hgignore", Action = FileActionEnum.Add
                    },                                                                                                       // mercurial auxiliary file
                    new RevisionEntryInfo {
                        Path = "firstFile.txt", Action = FileActionEnum.Add
                    },
                    new RevisionEntryInfo
                    {
                        Path = @"firstFolder/firstFolderFile.txt", Action = FileActionEnum.Add
                    },
                    new RevisionEntryInfo {
                        Path = "secondFile.txt", Action = FileActionEnum.Add
                    },
                    new RevisionEntryInfo
                    {
                        Path = @"secondFolder/secondFolderFile.txt", Action = FileActionEnum.Add
                    }
                });
            }
        }
 public void ShouldCheckCorrectRevision()
 {
     using (var mercurial = CreateMercurial())
     {
         MercurialRevisionId correctRevisionId = CreateMercurialRevisionId(MercurialRevisionId.UtcTimeMin);
         var errors = new PluginProfileErrorCollection();
         mercurial.CheckRevision(correctRevisionId, errors);
         errors.Should(Be.Empty);
     }
 }
        private void AssertCommits(params string[] commits)
        {
            using (var mercurial = CreateMercurial())
            {
                MercurialRevisionId startRevisionId = CreateMercurialRevisionId(DateTime.Parse("2011-11-02 1:57:19 PM"));
                var revisionRange = mercurial.GetFromTillHead(startRevisionId, 100).Single();

                var revisions = mercurial.GetRevisions(revisionRange);
                revisions.Select(x => x.Comment).ToArray().Should(Be.EquivalentTo(commits));
                revisions.Select(x => x.Author).Distinct().ToArray().Should(Be.EquivalentTo(new[] { "msuhinin" }));
            }
        }
        public void ShouldRetrieveRevisionRangeFromBeginningTillHead()
        {
            using (var mercurial = CreateMercurial())
            {
                var revisionRange = mercurial.GetFromTillHead(CreateMercurialRevisionId(MercurialRevisionId.UtcTimeMin), 100).Single();
                MercurialRevisionId fromChangeSet = revisionRange.FromChangeset;
                fromChangeSet.Time.Should(Be.EqualTo(DateTime.Parse("2012-04-09 11:43:18 AM")));

                MercurialRevisionId toChangeSet = revisionRange.ToChangeset;
                toChangeSet.Time.Should(Be.EqualTo(DateTime.Parse("2012-04-09 15:08:01 PM")));
            }
        }
Esempio n. 6
0
        public void ShouldHandlePosixTime()
        {
            var initialTime = DateTime.Today.AddHours(6);
            MercurialRevisionId revisionId = new RevisionId {
                Time = initialTime, Value = Guid.NewGuid().ToString()
            };

            RevisionId          revisionIdDto      = revisionId;
            MercurialRevisionId restoredRevisionId = revisionIdDto;

            restoredRevisionId.Time.Should(Be.EqualTo(initialTime));
        }
        public void ShouldRetrieveRevisionRangeFromRevisionTillHead()
        {
            using (var mercurial = CreateMercurial())
            {
                MercurialRevisionId startRevisionId = CreateMercurialRevisionId(DateTime.Parse(("2012-04-09 11:43:18 AM")));
                var revisionRange = mercurial.GetFromTillHead(startRevisionId, 100).Single();
                MercurialRevisionId fromChangeSet = revisionRange.FromChangeset;
                fromChangeSet.Time.Should(Be.EqualTo(startRevisionId.Time));

                MercurialRevisionId toChangeSet = revisionRange.ToChangeset;
                toChangeSet.Time.Should(Be.EqualTo(DateTime.Parse("2012-04-09 15:08:01 PM")));
            }
        }
        public void ShouldCheckIncorrectRevision()
        {
            using (var mercurial = CreateMercurial())
            {
                MercurialRevisionId correctRevisionId = CreateMercurialRevisionId(MercurialRevisionId.UtcTimeMax.AddYears(1));
                var errors = new PluginProfileErrorCollection();
                mercurial.CheckRevision(correctRevisionId, errors);

                string localizedMessage = string.Format(
                    "Revision: should be between {0} and {1}",
                    MercurialRevisionId.UtcTimeMin.ToShortDateString(),
                    MercurialRevisionId.UtcTimeMax.ToShortDateString());

                errors.Single().ToString().Should(Be.EqualTo(localizedMessage));
            }
        }
        public void ShouldRetrieveRevisionsFromAndBefore()
        {
            using (var mercurial = CreateMercurial())
            {
                var revisionRange = mercurial.GetFromAndBefore(CreateMercurialRevisionId("0f07bc12a328"), CreateMercurialRevisionId("d95d67882060"), 100).Single();
                MercurialRevisionId fromChangeSet = revisionRange.FromChangeset;

                MercurialRevisionId fromExpected = CreateMercurialRevisionId(DateTime.Parse("2012-04-09 11:44:23 AM"));
                fromChangeSet.Time.Should(Be.EqualTo(fromExpected.Time));


                MercurialRevisionId toExpected  = CreateMercurialRevisionId(DateTime.Parse("2012-04-09 15:06:47 PM"));
                MercurialRevisionId toChangeSet = revisionRange.ToChangeset;
                toChangeSet.Time.Should(Be.EqualTo(toExpected.Time));
            }
        }
        public void ShouldRetrieveRevisionsWithRemovedFiles()
        {
            var testRepo = new MercurialTestRepositoryWithFileDeleted();

            _mercurialRepoUri = testRepo.Uri.ToString();
            using (var mercurial = CreateMercurial())
            {
                MercurialRevisionId startRevisionId = CreateMercurialRevisionId(MercurialRevisionId.UtcTimeMin);
                var revisionRange = mercurial.GetFromTillHead(startRevisionId, 100).Single();

                var revision = mercurial.GetRevisions(revisionRange).OrderByDescending(x => x.Time).First();

                AssertEqual(revision.Entries, new[] { new RevisionEntryInfo {
                                                          Path = "deletedFile.txt", Action = FileActionEnum.Delete
                                                      } });
            }
        }
        public void ShouldRetrieveRevisionRangeAfterSpecifiedTillHead()
        {
            using (var mercurial = CreateMercurial())
            {
                var startRevisionId = new RevisionId()
                {
                    Value = "94001070fc6a"
                };
                var revisionRange = mercurial.GetAfterTillHead(startRevisionId, 100).Single();
                MercurialRevisionId fromChangeSet = revisionRange.FromChangeset;

                MercurialRevisionId fromExpected = CreateMercurialRevisionId(DateTime.Parse("2012-04-09 11:44:23 AM"));
                fromChangeSet.Time.Should(Be.EqualTo(fromExpected.Time));

                MercurialRevisionId toChangeSet = revisionRange.ToChangeset;
                toChangeSet.Time.Should(Be.EqualTo(DateTime.Parse("2012-04-09 15:08:01 PM")));
            }
        }