forked from GitTools/GitVersion
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
GitTools#3400 - added format command line switch
- Loading branch information
Showing
17 changed files
with
184 additions
and
4 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
[assembly: Parallelizable(ParallelScope.Fixtures)] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
2 changes: 1 addition & 1 deletion
2
...n.App.Tests/Helpers/TestConsoleAdapter.cs → ....Core.Tests/Helpers/TestConsoleAdapter.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
[assembly: Parallelizable(ParallelScope.Fixtures)] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,95 @@ | ||
using GitVersion.Core.Tests.Helpers; | ||
using GitVersion.Logging; | ||
using GitVersion.Output.OutputGenerator; | ||
using LibGit2Sharp; | ||
using Microsoft.Extensions.DependencyInjection; | ||
using Microsoft.Extensions.Options; | ||
|
||
namespace GitVersion.Core.Tests; | ||
|
||
[TestFixture] | ||
public class FormatArgumentTests : TestBase | ||
{ | ||
[TestCase("{SemVer}", "1.1.0-foo.1")] | ||
[TestCase("{Major}.{Minor}", "1.1")] | ||
[TestCase("{Major}.{Minor}.{Patch}", "1.1.0")] | ||
[TestCase("{Major}.{Minor}.{Patch}.{PreReleaseTag}", "1.1.0.foo.1")] | ||
public void ShouldOutputFormatTests(string format, string expectedValue) | ||
{ | ||
var fixture = CreateTestRepository(); | ||
|
||
var consoleBuilder = new StringBuilder(); | ||
IConsole consoleAdapter = new TestConsoleAdapter(consoleBuilder); | ||
|
||
var sp = ConfigureServices(services => | ||
{ | ||
var options = Options.Create(new GitVersionOptions | ||
{ | ||
WorkingDirectory = fixture.RepositoryPath, | ||
RepositoryInfo = { TargetBranch = fixture.Repository.Head.CanonicalName }, | ||
Format = format, | ||
Output = { OutputType.Json } | ||
}); | ||
var repository = fixture.Repository.ToGitRepository(); | ||
services.AddSingleton(options); | ||
services.AddSingleton(repository); | ||
services.AddSingleton(consoleAdapter); | ||
}); | ||
|
||
var versionVariables = sp.GetRequiredService<IGitVersionCalculateTool>().CalculateVersionVariables(); | ||
var outputGenerator = sp.GetRequiredService<IOutputGenerator>(); | ||
|
||
outputGenerator.Execute(versionVariables, new OutputContext()); | ||
var output = consoleBuilder.ToString().Replace("\n", "").Replace("\r", ""); | ||
output.ShouldBeEquivalentTo(expectedValue); | ||
} | ||
|
||
[TestCase("{Major}.{Minor}.{env:CustomVar}", "1.1.foo")] | ||
[TestCase("{Major}.{Minor}.{Patch}.{env:CustomVar}", "1.1.0.foo")] | ||
public void ShouldOutputFormatWithEnvironmentVariablesTests(string format, string expectedValue) | ||
{ | ||
var fixture = CreateTestRepository(); | ||
var consoleBuilder = new StringBuilder(); | ||
IConsole console = new TestConsoleAdapter(consoleBuilder); | ||
IEnvironment environment = new TestEnvironment(); | ||
environment.SetEnvironmentVariable("CustomVar", "foo"); | ||
|
||
var sp = ConfigureServices(services => | ||
{ | ||
var options = Options.Create(new GitVersionOptions | ||
{ | ||
WorkingDirectory = fixture.RepositoryPath, | ||
RepositoryInfo = { TargetBranch = fixture.Repository.Head.CanonicalName }, | ||
Format = format, | ||
Output = { OutputType.Json } | ||
}); | ||
var repository = fixture.Repository.ToGitRepository(); | ||
services.AddSingleton(options); | ||
services.AddSingleton(repository); | ||
services.AddSingleton(console); | ||
services.AddSingleton(environment); | ||
}); | ||
|
||
var versionVariables = sp.GetRequiredService<IGitVersionCalculateTool>().CalculateVersionVariables(); | ||
var outputGenerator = sp.GetRequiredService<IOutputGenerator>(); | ||
|
||
outputGenerator.Execute(versionVariables, new OutputContext()); | ||
var output = consoleBuilder.ToString().Replace("\n", "").Replace("\r", ""); | ||
output.ShouldBeEquivalentTo(expectedValue); | ||
} | ||
|
||
private static EmptyRepositoryFixture CreateTestRepository() | ||
{ | ||
var fixture = new EmptyRepositoryFixture(); | ||
_ = fixture.Repository.MakeACommit(); | ||
Commands.Checkout(fixture.Repository, fixture.Repository.CreateBranch("develop")); | ||
var secondCommit = fixture.Repository.MakeACommit(); | ||
_ = fixture.Repository.Tags.Add("1.0.0", secondCommit); | ||
var featureBranch = fixture.Repository.CreateBranch("feature/foo"); | ||
Commands.Checkout(fixture.Repository, featureBranch); | ||
_ = fixture.Repository.MakeACommit(); | ||
return fixture; | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters