예제 #1
0
        private static void AssertMergeMessage(string message, string expectedVersion, List <Commit> parents, Config config = null)
        {
            var commit = new MockCommit
            {
                MessageEx = message,
                ParentsEx = parents
            };

            var context = new GitVersionContextBuilder()
                          .WithConfig(config ?? new Config())
                          .WithRepository(new MockRepository
            {
                Head = new MockBranch("master")
                {
                    commit,
                    new MockCommit()
                }
            })
                          .Build();
            var sut = new MergeMessageVersionStrategy();

            var baseVersion = sut.GetVersions(context).SingleOrDefault();

            if (expectedVersion == null)
            {
                baseVersion.ShouldBe(null);
            }
            else
            {
                baseVersion.ShouldNotBeNull();
                baseVersion.SemanticVersion.ToString().ShouldBe(expectedVersion);
            }
        }
예제 #2
0
        public void ShouldNotAllowIncrementOfVersion()
        {
            // When a branch is merged in you want to start building stable packages of that version
            // So we shouldn't bump the version
            var context = new GitVersionContextBuilder().WithRepository(new MockRepository
            {
                Head = new MockBranch("master")
                {
                    new MockCommit
                    {
                        MessageEx = "Merge branch 'release-0.1.5'",
                        ParentsEx = GetParents(true)
                    }
                }
            }).Build();
            var sut = new MergeMessageVersionStrategy();

            var baseVersion = sut.GetVersions(context).Single();

            baseVersion.ShouldIncrement.ShouldBe(false);
        }