Skip to content

Commit 0cb9ba9

Browse files
committed
Integration test
1 parent 1e0bb81 commit 0cb9ba9

File tree

6 files changed

+61
-11
lines changed

6 files changed

+61
-11
lines changed

src/SeqCli/Cli/Commands/HelpCommand.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -179,13 +179,13 @@ void PrintHelp(string executableName)
179179
{
180180
if (!printedGroups.Contains(avail.Metadata.Name))
181181
{
182-
Printing.Define($" {avail.Metadata.Name}", "<sub-command>", 13, Console.Out);
182+
Printing.Define($" {avail.Metadata.Name}", "<sub-command>", Console.Out);
183183
printedGroups.Add(avail.Metadata.Name);
184184
}
185185
}
186186
else
187187
{
188-
Printing.Define($" {avail.Metadata.Name}", avail.Metadata.HelpText, 13, Console.Out);
188+
Printing.Define($" {avail.Metadata.Name}", avail.Metadata.HelpText, Console.Out);
189189
}
190190
}
191191

@@ -201,7 +201,7 @@ void PrintHelp(string executableName, string topLevelCommand)
201201

202202
foreach (var avail in _orderedCommands.Where(c => c.Metadata.Name == topLevelCommand))
203203
{
204-
Printing.Define($" {avail.Metadata.SubCommand}", avail.Metadata.HelpText, 13, Console.Out);
204+
Printing.Define($" {avail.Metadata.SubCommand}", avail.Metadata.HelpText, Console.Out);
205205
}
206206

207207
Console.WriteLine();

src/SeqCli/Cli/Printing.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,11 @@ namespace SeqCli.Cli;
1919

2020
static class Printing
2121
{
22-
const int ConsoleWidth = 80;
22+
const int ConsoleWidth = 82, TermColumnWidth = 14;
2323

24-
public static void Define(string term, string definition, int termColumnWidth, TextWriter output)
24+
public static void Define(string term, string definition, TextWriter output)
2525
{
26-
var header = term.PadRight(termColumnWidth);
26+
var header = term.PadRight(TermColumnWidth);
2727
var right = ConsoleWidth - header.Length;
2828

2929
var rest = definition.ToCharArray();

test/SeqCli.EndToEnd/App/AppBasicsTestCase.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,9 @@ public Task ExecuteAsync(SeqConnection connection, ILogger logger, CliCommandRun
1717
exit = runner.Exec("app install", "--package-id Seq.App.EmailPlus");
1818
Assert.Equal(0, exit);
1919

20+
exit = runner.Exec("app list", "--package-id Seq.App.EmailPlus");
21+
Assert.Equal(0, exit);
22+
2023
exit = runner.Exec("app update", "--all");
2124
Assert.Equal(0, exit);
2225

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
using System;
2+
using System.Linq;
3+
using System.Threading.Tasks;
4+
using Seq.Api;
5+
using SeqCli.EndToEnd.Support;
6+
using Serilog;
7+
using Xunit;
8+
9+
namespace SeqCli.EndToEnd.AppInstance;
10+
11+
public class AppInstanceBasicsTestCase : ICliTestCase
12+
{
13+
public async Task ExecuteAsync(SeqConnection connection, ILogger logger, CliCommandRunner runner)
14+
{
15+
var exit = runner.Exec("appinstance list", "-i appinstance-none");
16+
Assert.Equal(1, exit);
17+
18+
exit = runner.Exec("app install", "--package-id Seq.App.EmailPlus");
19+
Assert.Equal(0, exit);
20+
21+
var app = (await connection.Apps.ListAsync()).Single();
22+
23+
var title = Guid.NewGuid().ToString("N");
24+
exit = runner.Exec("appinstance create", $"-t {title} --app {app.Id} -p To=");
25+
Assert.Equal(0, exit);
26+
27+
var appInstance = (await connection.AppInstances.ListAsync()).Single();
28+
29+
exit = runner.Exec("appinstance list", $"-t {title}");
30+
Assert.Equal(0, exit);
31+
32+
var output = runner.LastRunProcess?.Output;
33+
Assert.Equal(appInstance.Id, output?.Trim());
34+
Assert.Equal(appInstance.Title, output?.Trim());
35+
36+
exit = runner.Exec("appinstance remove", $"-t {title}");
37+
Assert.Equal(0, exit);
38+
39+
exit = runner.Exec("appinstance list", $"-i {appInstance.Id}");
40+
Assert.Equal(1, exit);
41+
42+
exit = runner.Exec("appinstance list", $"-t {title}");
43+
Assert.Equal(0, exit);
44+
}
45+
}

test/SeqCli.EndToEnd/Signal/SignalBasicsTestCase.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ public Task ExecuteAsync(
1919
exit = runner.Exec("signal list", "-t Warnings");
2020
Assert.Equal(0, exit);
2121

22-
var output = runner.LastRunProcess.Output;
23-
Assert.Equal("signal-m33302 Warnings", output.Trim());
22+
var output = runner.LastRunProcess?.Output;
23+
Assert.Equal("signal-m33302 Warnings", output?.Trim());
2424

2525
exit = runner.Exec("signal remove", "-t Warnings");
2626
Assert.Equal(0, exit);

test/SeqCli.EndToEnd/Support/TestConfiguration.cs

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,12 @@ public TestConfiguration(Args args)
1212
{
1313
_args = args;
1414
}
15-
16-
public int ServerListenPort { get; } = 9989;
1715

16+
static int ServerListenPort => 9989;
17+
18+
#pragma warning disable CA1822
1819
public string ServerListenUrl => $"http://localhost:{ServerListenPort}";
20+
#pragma warning restore CA1822
1921

2022
string EquivalentBaseDirectory { get; } = AppDomain.CurrentDomain.BaseDirectory
2123
.Replace(Path.Combine("test", "SeqCli.EndToEnd"), Path.Combine("src", "SeqCli"));
@@ -48,4 +50,4 @@ public CaptiveProcess SpawnServerProcess(string storagePath)
4850
}
4951
return new CaptiveProcess("seq", commandWithArgs);
5052
}
51-
}
53+
}

0 commit comments

Comments
 (0)