mirror of
https://github.com/nsnail/spectre.console.git
synced 2025-12-16 16:15:47 +08:00
Trimming of TestConsole output by CommandAppTester is configurable
This commit is contained in:
@@ -8,20 +8,36 @@ public sealed class CommandAppTester
|
||||
private Action<CommandApp>? _appConfiguration;
|
||||
private Action<IConfigurator>? _configuration;
|
||||
|
||||
/// <summary>
|
||||
/// Initializes a new instance of the <see cref="CommandAppTester"/> class.
|
||||
/// </summary>
|
||||
/// <param name="registrar">The registrar.</param>
|
||||
public CommandAppTester(ITypeRegistrar? registrar = null)
|
||||
{
|
||||
Registrar = registrar;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the Registrar to use in the CommandApp.
|
||||
/// </summary>
|
||||
public ITypeRegistrar? Registrar { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the settings for the <see cref="CommandAppTester"/>.
|
||||
/// </summary>
|
||||
public CommandAppTesterSettings TestSettings { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Initializes a new instance of the <see cref="CommandAppTester"/> class.
|
||||
/// </summary>
|
||||
/// <param name="registrar">The registrar.</param>
|
||||
/// <param name="settings">The settings.</param>
|
||||
public CommandAppTester(ITypeRegistrar? registrar = null, CommandAppTesterSettings? settings = null)
|
||||
{
|
||||
Registrar = registrar;
|
||||
TestSettings = settings ?? new CommandAppTesterSettings();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Initializes a new instance of the <see cref="CommandAppTester"/> class.
|
||||
/// </summary>
|
||||
/// <param name="settings">The settings.</param>
|
||||
public CommandAppTester(CommandAppTesterSettings settings)
|
||||
{
|
||||
TestSettings = settings;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sets the default command.
|
||||
/// </summary>
|
||||
@@ -135,10 +151,8 @@ public sealed class CommandAppTester
|
||||
|
||||
var result = app.Run(args);
|
||||
|
||||
var output = console.Output
|
||||
.NormalizeLineEndings()
|
||||
.TrimLines()
|
||||
.Trim();
|
||||
var output = console.Output.NormalizeLineEndings();
|
||||
output = TestSettings.TrimConsoleOutput ? output.TrimLines().Trim() : output;
|
||||
|
||||
return new CommandAppResult(result, output, context, settings);
|
||||
}
|
||||
@@ -181,10 +195,8 @@ public sealed class CommandAppTester
|
||||
|
||||
var result = await app.RunAsync(args);
|
||||
|
||||
var output = console.Output
|
||||
.NormalizeLineEndings()
|
||||
.TrimLines()
|
||||
.Trim();
|
||||
var output = console.Output.NormalizeLineEndings();
|
||||
output = TestSettings.TrimConsoleOutput ? output.TrimLines().Trim() : output;
|
||||
|
||||
return new CommandAppResult(result, output, context, settings);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user