public void ReplaceAssemblyAttribute_Should_Correctly_Replace_The_Existing_Attribute()
 {
     var modifier = new AssemblyInfoModifier();
     var result = modifier.ReplaceAssemblyAttribute(TestData.AssemblyInfoContent_WebApi, typeof(AssemblyVersionAttribute), "2.0.0.0");
     Assert.AreEqual(1, Regex.Matches(result, "AssemblyVersion").Count);
 }
 public void RemoveExistingAssemblyAttribute_Should_Correctly_Remove_The_Attribute()
 {
     var modifier = new AssemblyInfoModifier();
     var result = modifier.RemoveExistingAssemblyAttribute(TestData.AssemblyInfoContent_WebApi, typeof(AssemblyVersionAttribute));
     StringAssert.DoesNotContain("AssemblyVersion", result);
 }
 public void AddNewAssemblyAttribute_Should_Correctly_Add_The_Attribute()
 {
     var modifier = new AssemblyInfoModifier();
     var result = modifier.AddNewAssemblyAttribute(TestData.AssemblyInfoContent_WebApi, typeof(AssemblyCompanyAttribute), "Contoso");
     StringAssert.Contains(@"System.Reflection.AssemblyCompanyAttribute(@""Contoso"")", result);
 }
예제 #4
0
        private void SetVersionForProject(string projectPath, Version defaultVersion, string additionalInfo)
        {
            var helper = new ProjectPathHelper(this.fileSystem);

            this.output.WriteLine("Processing project '{0}'...", projectPath);

            this.output.WriteLine("-> Reading version...");
            Version version;
            if (!helper.TryRetrieveVersion(projectPath, out version))
            {
                version = defaultVersion;
            }

            this.output.WriteLine("-> Reading assembly info...");
            string assemblyInfoFile = helper.GetAssemblyInfoFileName(projectPath);
            string assemblyInfo = this.fileSystem.FileExists(assemblyInfoFile) ? this.fileSystem.ReadAllText(assemblyInfoFile) : string.Empty;

            this.output.WriteLine("-> AddingReplacing version information...");
            var modifier = new AssemblyInfoModifier();
            assemblyInfo = modifier.ReplaceAssemblyAttribute(assemblyInfo, typeof(AssemblyVersionAttribute), version.ToString());
            assemblyInfo = modifier.ReplaceAssemblyAttribute(assemblyInfo, typeof(AssemblyFileVersionAttribute), version.ToString());

            if (additionalInfo != null)
            {
                this.output.WriteLine("-> Adding/Replacing additional information...");
                assemblyInfo = modifier.ReplaceAssemblyAttribute(assemblyInfo, typeof(AssemblyInformationalVersionAttribute), additionalInfo);
            }

            this.output.WriteLine("-> Saving assembly info...");
            this.fileSystem.WriteAllText(assemblyInfoFile, assemblyInfo);

            this.output.WriteLine("Processing project finished.");
        }