public static async Task HasVersionOverride() { // arrange var path = MethodBase.GetCurrentMethod().GetTestDirectory(); await Sdk.CreateProject(path); await Git.Init(path); await Git.Commit(path); await Git.Tag(path, "2.3.4"); var envVars = ("MinVerVersionOverride".ToAltCase(), "3.4.5-alpha.6+build.7"); var expected = Package.WithVersion(3, 4, 5, new[] { "alpha", "6" }, 0, "build.7"); // act var(actual, _, _) = await Sdk.BuildProject(path, envVars : envVars); var(cliStandardOutput, _) = await MinVerCli.ReadAsync(path, envVars : envVars); // assert Assert.Equal(expected, actual); Assert.Equal(expected.Version, cliStandardOutput.Trim()); }
public static async Task HasHeightTwo() { // arrange var path = MethodBase.GetCurrentMethod().GetTestDirectory(); await Sdk.CreateProject(path); await Git.Init(path); await Git.Commit(path); await Git.Tag(path, "2.3.4-alpha.5"); await Git.Commit(path); await Git.Commit(path); var expected = Package.WithVersion(2, 3, 4, new[] { "alpha", "5", }, 2); // act var(actual, _, _) = await Sdk.BuildProject(path); var(cliStandardOutput, _) = await MinVerCli.ReadAsync(path); // assert Assert.Equal(expected, actual); Assert.Equal(expected.Version, cliStandardOutput.Trim()); }
public static async Task HasMinimumMajorMinorWithHeightOne() { // arrange var path = MethodBase.GetCurrentMethod().GetTestDirectory(); await Sdk.CreateProject(path); await Git.Init(path); await Git.Commit(path); await Git.Tag(path, "2.3.4"); await Git.Commit(path); var envVars = ("MinVerMinimumMajorMinor".ToAltCase(), "3.0"); var expected = Package.WithVersion(3, 0, 0, new[] { "alpha", "0" }, 1); // act var(actual, _, _) = await Sdk.BuildProject(path, envVars : envVars); var(cliStandardOutput, _) = await MinVerCli.ReadAsync(path, envVars : envVars); // assert Assert.Equal(expected, actual); Assert.Equal(expected.Version, cliStandardOutput.Trim()); }
public static async Task HasCustomDefaultPreReleasePhase() { // arrange var path = MethodBase.GetCurrentMethod().GetTestDirectory(); await Sdk.CreateProject(path); await Git.Init(path); await Git.Commit(path); await Git.Tag(path, "2.3.4"); await Git.Commit(path); var envVars = ("MinVerDefaultPreReleasePhase".ToAltCase(), "preview"); var expected = Package.WithVersion(2, 3, 5, new[] { "preview", "0" }, 1); // act var(actual, _, _) = await Sdk.BuildProject(path, envVars : envVars); var(cliStandardOutput, _) = await MinVerCli.ReadAsync(path, envVars : envVars); // assert Assert.Equal(expected, actual); Assert.Equal(expected.Version, cliStandardOutput.Trim()); }
public static async Task DefaultPreReleasePhaseBackToDefault(string value) { // arrange var path = MethodBase.GetCurrentMethod().GetTestDirectory(); FileSystem.EnsureEmptyDirectory(path); await Git.Init(path); await Git.Commit(path); await Git.Tag(path, "2.3.4"); await Git.Commit(path); var envVars = ("MinVerDefaultPreReleasePhase".ToAltCase(), "preview"); var args = $"--default-pre-release-phase {value}"; var expected = Package.WithVersion(2, 3, 5, new[] { "alpha", "0" }, 1); // act var(cliStandardOutput, _) = await MinVerCli.ReadAsync(path, args : args, envVars : envVars); // assert Assert.Equal(expected.Version, cliStandardOutput.Trim()); }
public static async Task HeightIsIgnored() { // arrange var path = MethodBase.GetCurrentMethod().GetTestDirectory(); await Sdk.CreateProject(path); await Git.Init(path); await Git.Commit(path); await Git.Tag(path, "2.3.4"); await Git.Commit(path); var envVars = ("MinVerIgnoreHeight".ToAltCase(), "true".ToAltCase()); var expected = Package.WithVersion(2, 3, 4); // act var(actual, _, _) = await Sdk.BuildProject(path, envVars); var(cliStandardOutput, _) = await MinVerCli.ReadAsync(path, envVars : envVars); // assert Assert.Equal(expected, actual); Assert.Equal(expected.Version, cliStandardOutput.Trim()); }
public static async Task VerbosityBackToDefault(string value) { // arrange var path = MethodBase.GetCurrentMethod().GetTestDirectory(); FileSystem.EnsureEmptyDirectory(path); var envVars = ("MinVerVerbosity", "error"); var args = $"--verbosity {value}"; // act var(_, cliStandardError) = await MinVerCli.ReadAsync(path, args : args, envVars : envVars); // assert Assert.Contains("MinVer:", cliStandardError, StringComparison.Ordinal); }
public static async Task BuildMetadataBackToDefault(string value) { // arrange var path = MethodBase.GetCurrentMethod().GetTestDirectory(); FileSystem.EnsureEmptyDirectory(path); var envVars = ("MinVerBuildMetadata", "build.123"); var args = $"--build-metadata {value}"; var expected = Package.WithVersion(0, 0, 0, new[] { "alpha", "0" }, 0); // act var(cliStandardOutput, _) = await MinVerCli.ReadAsync(path, args : args, envVars : envVars); // assert Assert.Equal(expected.Version, cliStandardOutput.Trim()); }
public static async Task HasBuildMetadata() { // arrange var path = MethodBase.GetCurrentMethod().GetTestDirectory(); await Sdk.CreateProject(path); var envVars = ("MinVerBuildMetadata", "build.123"); var expected = Package.WithVersion(0, 0, 0, new[] { "alpha", "0", }, 0, "build.123"); // act var(actual, _, _) = await Sdk.BuildProject(path, envVars); var(cliStandardOutput, _) = await MinVerCli.ReadAsync(path, envVars : envVars); // assert Assert.Equal(expected, actual); Assert.Equal(expected.Version, cliStandardOutput.Trim()); }
public static async Task HasDefaultVersion() { // arrange var path = MethodBase.GetCurrentMethod().GetTestDirectory(); await Sdk.CreateProject(path); var expected = Package.WithVersion(0, 0, 0, new[] { "alpha", "0", }); // act var(actual, sdkStandardOutput, _) = await Sdk.BuildProject(path); var(cliStandardOutput, cliStandardError) = await MinVerCli.ReadAsync(path); // assert Assert.Equal(expected, actual); Assert.Contains("MINVER1001", sdkStandardOutput, StringComparison.Ordinal); Assert.Equal(expected.Version, cliStandardOutput.Trim()); Assert.Contains("not a valid Git working directory", cliStandardError, StringComparison.Ordinal); }
public static async Task MinimumMajorMinorBackToDefault(string value) { // arrange var path = MethodBase.GetCurrentMethod().GetTestDirectory(); FileSystem.EnsureEmptyDirectory(path); await Git.Init(path); await Git.Commit(path); await Git.Tag(path, "2.3.4"); var envVars = ("MinVerMinimumMajorMinor".ToAltCase(), "3.0"); var args = $"--minimum-major-minor {value}"; var expected = Package.WithVersion(2, 3, 4); // act var(cliStandardOutput, _) = await MinVerCli.ReadAsync(path, args : args, envVars : envVars); // assert Assert.Equal(expected.Version, cliStandardOutput.Trim()); }
public static async Task TagPrefixBackToDefault(string value) { // arrange var path = MethodBase.GetCurrentMethod().GetTestDirectory(); FileSystem.EnsureEmptyDirectory(path); await Git.Init(path); await Git.Commit(path); await Git.Tag(path, "2.3.4-alpha.5"); var envVars = ("MinVerTagPrefix", "v."); var args = $"--tag-prefix {value}"; var expected = Package.WithVersion(2, 3, 4, new[] { "alpha", "5" }); // act var(cliStandardOutput, _) = await MinVerCli.ReadAsync(path, args : args, envVars : envVars); // assert Assert.Equal(expected.Version, cliStandardOutput.Trim()); }