Пример #1
0
        public void UC_UpdateNuspecFile_Works()
        {
            b.Info.Flow();

            var    reid    = TestResources.GetIdentifiers(TestResourcesReferences.NuspecSample1);
            string srcFile = uth.GetTestDataFile(reid);

            MockVersionStorage mvs = new MockVersionStorage("0.0.0.1");
            Versioning         sut = new Versioning(mvs);

            sut.AddNugetFile(srcFile);
        }
Пример #2
0
        public void Versioning_MMLoadedFromFile()
        {
            b.Info.Flow();

            var    reid    = TestResources.GetIdentifiers(TestResourcesReferences.MMTypeData);
            string srcFile = uth.GetTestDataFile(reid);

            MockVersionStorage mva = new MockVersionStorage("");
            MockVersioning     v   = new MockVersioning(mva);

            v.LoadMiniMatches(srcFile);

            Assert.Equal(9, v.Mock.ReturnMinMatchers().Length);
        }
Пример #3
0
        public void UpdateStd_AddsStdInfoWhenMissing()
        {
            var                reid    = TestResources.GetIdentifiers(TestResourcesReferences.NetStdNone);
            string             srcFile = uth.GetTestDataFile(reid);
            CompleteVersion    cv      = new CompleteVersion(new VersionUnit("1"), new VersionUnit("1", "."), new VersionUnit("1", "."), new VersionUnit("1", "."));
            VersionFileUpdater sut     = new VersionFileUpdater(cv);
            var                before  = ts.GetVersion(FileUpdateType.StdInformational, srcFile);

            sut.PerformUpdate(srcFile, FileUpdateType.StdInformational);

            var after = ts.GetVersion(FileUpdateType.StdInformational, srcFile);

            Assert.True(string.IsNullOrEmpty(before));
            Assert.False(string.IsNullOrEmpty(after));
        }
Пример #4
0
        public void Update_AsmFileVer_Works()
        {
            b.Info.Flow();
            var                reid    = TestResources.GetIdentifiers(TestResourcesReferences.JustFileVer);
            string             srcFile = uth.GetTestDataFile(reid);
            CompleteVersion    cv      = new CompleteVersion(new VersionUnit("1"), new VersionUnit("1", "."), new VersionUnit("1", "."), new VersionUnit("1", "."));
            string             fn      = ts.GetFileAsTemporary(srcFile);
            VersionFileUpdater sut     = new VersionFileUpdater(cv);

            sut.PerformUpdate(fn, FileUpdateType.NetFile);

            Assert.False(ts.DoesFileContainThisText(fn, "0.0.0.0"), "No update was made to the file at all");
            Assert.True(ts.DoesFileContainThisText(fn, "1.1"), "The file does not appear to have been updated correctly.");
            Assert.True(ts.DoesFileContainThisText(fn, "AssemblyFileVersion(\"1.1.1.1\")"), "The file does not have the full version in it");
        }
Пример #5
0
        public void Update_StdCSProjInfo_Works()
        {
            var                reid    = TestResources.GetIdentifiers(TestResourcesReferences.NetStdAll3);
            string             srcFile = uth.GetTestDataFile(reid);
            CompleteVersion    cv      = new CompleteVersion(new VersionUnit("1"), new VersionUnit("1", "."), new VersionUnit("1", "."), new VersionUnit("1", "."));
            VersionFileUpdater sut     = new VersionFileUpdater(cv);
            var                before  = ts.GetVersion(FileUpdateType.StdInformational, srcFile);

            Assert.NotEmpty(before);

            sut.PerformUpdate(srcFile, FileUpdateType.StdInformational);

            var after = ts.GetVersion(FileUpdateType.StdInformational, srcFile);

            Assert.NotEqual <string>(before, after);
        }
Пример #6
0
        public void LiteralReplace_Version3_IsThreeDigits()
        {
            b.Info.Flow();

            var             reid    = TestResources.GetIdentifiers(TestResourcesReferences.VersionV3Txt);
            string          srcFile = uth.GetTestDataFile(reid);
            CompleteVersion cv      = new CompleteVersion(new VersionUnit("1"), new VersionUnit("1", "."), new VersionUnit("1", "."), new VersionUnit("1", "."));

            VersionFileUpdater sut = new VersionFileUpdater(cv);

            sut.PerformUpdate(srcFile, FileUpdateType.TextFile, DisplayType.Release);
            string result = File.ReadAllText(srcFile);

            Assert.DoesNotContain("XXX-VERSION3-XXX", result);
            Assert.DoesNotContain("1.1.1.1", result);
            Assert.Contains("1.1.1", result);
        }
Пример #7
0
        public void Bug464_BuildVersionsNotUpdatedDuringBuild()
        {
            var ident = TestResources.GetIdentifiers(TestResourcesReferences.Bug464RefContent);

            string srcFile = uth.GetTestDataFile(ident);

            string fn = ts.GetFileAsTemporary(srcFile);
            var    cv = new CompleteVersion(new VersionUnit("2"), new VersionUnit("0", "."),
                                            new VersionUnit("Unicorn", "-"),
                                            new VersionUnit("0", ".", DigitIncremementBehaviour.ContinualIncrement));
            VersionFileUpdater sut = new VersionFileUpdater(cv);

            sut.PerformUpdate(fn, FileUpdateType.NetAssembly);
            sut.PerformUpdate(fn, FileUpdateType.NetInformational);
            sut.PerformUpdate(fn, FileUpdateType.NetFile);

            Assert.False(ts.DoesFileContainThisText(fn, "AssemblyFileVersion(\"2.0.0\""), "The file version should be three digits and present");
            Assert.True(ts.DoesFileContainThisText(fn, "AssemblyInformationalVersion(\"2.0-Unicorn.0\""), "The informational version should be present");
            Assert.True(ts.DoesFileContainThisText(fn, "AssemblyVersion(\"2.0\")"), "the assembly version should be two digits and present.");
        }
Пример #8
0
        public void Update_DoesNotAlterOtherAttributes()
        {
            b.Info.Flow();

            var    reid    = TestResources.GetIdentifiers(TestResourcesReferences.NoChangeAssemInfo);
            string srcFile = uth.GetTestDataFile(reid);

            CompleteVersion cv = new CompleteVersion(new VersionUnit("1"), new VersionUnit("1", "."), new VersionUnit("1", "."), new VersionUnit("1", "."));
            string          fn = ts.GetFileAsTemporary(srcFile);

            VersionFileUpdater sut = new VersionFileUpdater(cv);

            sut.PerformUpdate(fn, FileUpdateType.NetAssembly);

            Assert.False(ts.DoesFileContainThisText(fn, " AssemblyVersion(\"1.0.0.0\")"), "No update was made to the file at all");
            Assert.True(ts.DoesFileContainThisText(fn, "[assembly: AssemblyFileVersion(\"1.0.0.0\")]"), "The file does not appear to have been updated correctly.");
            Assert.True(ts.DoesFileContainThisText(fn, "[assembly: AssemblyCompany(\"\")]"), "Collatoral Damage - Another element in the file was updated - Company");
            Assert.True(ts.DoesFileContainThisText(fn, "[assembly: Guid(\"557cc26f-fcb2-4d0e-a34e-447295115fc3\")]"), "Collatoral Damage - Another element in the file was updated - Guid");
            Assert.True(ts.DoesFileContainThisText(fn, "// [assembly: AssemblyVersion(\"1.0.*\")]"), "Collatoral Damage - Another element in the file was updated - Comment");
            Assert.True(ts.DoesFileContainThisText(fn, "using System.Reflection;"), "Collatoral Damage - Another element in the file was updated - Reflection First Line");
        }
Пример #9
0
        public void Versioning_MultiMMSameFile_UpdatesMultipleTimes()
        {
            b.Info.Flow();

            // Get the Std CSroj with no attributes.
            var    reid    = TestResources.GetIdentifiers(TestResourcesReferences.NetStdNone);
            string srcFile = uth.GetTestDataFile(reid);

            // Find This file
            var v = new MockVersioning(new MockVersionStorage(""));

            v.Mock.AddFilenameToFind(srcFile);
            v.LoadMiniMatches("**/csproj|StdFile", srcFile + "|StdFile", srcFile + "|StdAssembly", srcFile + "|StdInformational");
            v.SearchForAllFiles("");
            v.UpdateAllRegisteredFiles();

            string s = File.ReadAllText(srcFile);

            Assert.Contains("<Version>", s);
            Assert.Contains("<AssemblyVersion>", s);
            Assert.Contains("<FileVersion>", s);
        }
Пример #10
0
        public void LiteralReplace_DefaultReplacesVersionAndReleaseName()
        {
            b.Info.Flow();

            var             reid    = TestResources.GetIdentifiers(TestResourcesReferences.ReleaseNameAndVerTxt);
            string          srcFile = uth.GetTestDataFile(reid);
            CompleteVersion cv      = new CompleteVersion(new VersionUnit("1"), new VersionUnit("1", "."), new VersionUnit("1", "."), new VersionUnit("1", "."));

            cv.ReleaseName = "Unicorn";

            VersionFileUpdater sut = new VersionFileUpdater(cv);

            sut.PerformUpdate(srcFile, FileUpdateType.TextFile, DisplayType.Release);


            string result = File.ReadAllText(srcFile);

            Assert.DoesNotContain("XXX-RELEASENAME-XXX", result);
            Assert.Contains("Unicorn", result);
            Assert.DoesNotContain("XXX-VERSION-XXX", result);
            Assert.Contains("1.1.1.1", result);
        }
Пример #11
0
        public void Update_Nuspec_BugNoUpdate()
        {
            b.Info.Flow();
            // BUG Case - for some reason nuspec was not being updated.  B_NuspecUpdateFailed

            var    reid    = TestResources.GetIdentifiers(TestResourcesReferences.BugNuspecUpdateFail);
            string srcFile = uth.GetTestDataFile(reid);

            CompleteVersion    cv  = new CompleteVersion(new VersionUnit("1"), new VersionUnit("1", "."), new VersionUnit("1", "."), new VersionUnit("1", "."));
            VersionFileUpdater sut = new VersionFileUpdater(cv);

            string knownStartPoint  = "<version>1.7.2.0</version>";
            string destinationPoint = "<version>1.1.1.1</version>";
            string txt = File.ReadAllText(srcFile);

            sut.PerformUpdate(srcFile, FileUpdateType.Nuspec, DisplayType.Release);
            string txt2 = File.ReadAllText(srcFile);

            Assert.True(txt.IndexOf(knownStartPoint) > 0);
            Assert.False(txt.IndexOf(destinationPoint) > 0);
            Assert.False(txt2.IndexOf(knownStartPoint) > 0);
            Assert.True(txt2.IndexOf(destinationPoint) > 0);
        }