using Xunit; using Version = Application.Models.Version; namespace UpdateTag.Tests { public class VersionTests { [Theory] [InlineData(1, 0, 0, "", "", "2.0.0")] [InlineData(1, 1, 0, "", "", "2.0.0")] [InlineData(1, 1, 1, "", "", "2.0.0")] public void NextMajor(int major, int minor, int patch, string rc, string service, string expected) { var version = new Version(major, minor, patch, rc, service).NextMajor(); Assert.Equal(expected, version.ToString()); } [Theory] [InlineData(1, 0, 0, "", "", "1.1.0")] [InlineData(1, 1, 0, "", "", "1.2.0")] [InlineData(1, 1, 1, "", "", "1.2.0")] public void NextMinor(int major, int minor, int patch, string rc, string service, string expected) { var version = new Version(major, minor, patch, rc, service).NextMinor(); Assert.Equal(expected, version.ToString()); } [Theory] [InlineData(1, 0, 0, "", "", "1.0.1")] [InlineData(1, 1, 0, "", "", "1.1.1")] [InlineData(1, 1, 1, "", "", "1.1.2")] public void NextPatch(int major, int minor, int patch, string rc, string service, string expected) { var version = new Version(major, minor, patch, rc, service).NextPatch(); Assert.Equal(expected, version.ToString()); } [Theory] [InlineData(1, 1, 1, "RC.4", "", "1.1.1-RC.5")] [InlineData(1, 1, 1, "RC.4", "ErpNext", "1.1.1-RC.5+ErpNext")] public void NextRc(int major, int minor, int patch, string rc, string service, string expected) { var version = new Version(major, minor, patch, rc, service).NextRc(); Assert.Equal(expected, version.ToString()); } [Theory] [InlineData(1, 1, 1, "RC.4", "", "1.1.1")] [InlineData(1, 1, 1, "RC.4", "ErpNext", "1.1.1+ErpNext")] public void ReleaseRc(int major, int minor, int patch, string rc, string service, string expected) { var version = new Version(major, minor, patch, rc, service).ReleaseRc(); Assert.Equal(expected, version.ToString()); } } }