public void TestVersionIncrement() { ChangeVersionParser parser = new ChangeVersionParser("*.*.*.+1", new ConsoleLogWriter()); Assert.Equal("1.0.0.1", parser.ChangeVersion("1.0.0.0")); parser = new ChangeVersionParser("*.*.+1000.*", new ConsoleLogWriter()); Assert.Equal("1.0.1001.0", parser.ChangeVersion("1.0.1.0")); }
public void ChangeVersionExplicitNamespaceTest() { string versionCode = "[assembly: System.Reflection.AssemblyVersion(\"1.0.0.0\")]\r\n"; ChangeVersionParser parser = new ChangeVersionParser("2.0.0.0", new Mock <ILogWriter>().Object); var sw = new StringWriter(); parser.ProcessAssemblyInfo(new StringReader(versionCode), sw); Assert.Equal("[assembly: System.Reflection.AssemblyVersion(\"2.0.0.0\")]\r\n", sw.ToString()); }
public void ChangeSmallerVersionTest() { string versionCode = "using System.Reflection;\r\n[assembly: AssemblyVersion(\"2.0.0.0\")]\r\n"; ChangeVersionParser parser = new ChangeVersionParser("1.0.0.0", new Mock <ILogWriter>().Object); var sw = new StringWriter(); parser.ProcessAssemblyInfo(new StringReader(versionCode), sw); Assert.Equal("using System.Reflection;\r\n[assembly: AssemblyVersion(\"2.0.0.0\")]\r\n", sw.ToString()); }
private void PatchVersion() { ChangeVersionParser parser = new ChangeVersionParser(NewVersion, this); foreach (var fileItem in Files) { if (!File.Exists(fileItem.ItemSpec)) { File.WriteAllText(fileItem.ItemSpec, "[assembly: System.Reflection.AssemblyVersion(\"0.0.0.0\")]\r\n"); } parser.ProcessAssemblyInfo(fileItem.ItemSpec); } }
public override bool Execute() { ChangeVersionParser parser = new ChangeVersionParser(Version, this); if (Files == null || Files.Length == 0) { Log.LogError("No version files specified"); return(false); } foreach (ITaskItem item in Files) { NewVersion = parser.ProcessAssemblyInfo(item.ItemSpec)?.ToString(); } return(!string.IsNullOrEmpty(NewVersion)); }
public void Execute() { TagVersionInfo currentVersion = null; string versionChangePattern = null; if (IsInHotfixBranch()) { currentVersion = GetHotFixVersion(); versionChangePattern = Task.HotfixVersionPattern; } if (currentVersion == null) { currentVersion = GetMasterVersion(); } if (string.IsNullOrWhiteSpace(versionChangePattern)) { versionChangePattern = Task.MasterVersionPattern; } if (currentVersion == null) { currentVersion = new TagVersionInfo(null, CreateDefaultVersion()); } ChangeVersionParser parser = new ChangeVersionParser(versionChangePattern, Task); NewVersion = new Version(parser.ChangeVersion(currentVersion.Version.ToString())); TagName = BuildVersionTag(GitTagProvider.CurrentBranchName, NewVersion.ToString()); if (!string.IsNullOrWhiteSpace(currentVersion.TagName)) { Task.ReleaseNotes = GitTagProvider.GetDescriptionsSinceTag(currentVersion.TagName); } }