-
Notifications
You must be signed in to change notification settings - Fork 36
/
DockerLoginTest.cs
47 lines (40 loc) · 1.34 KB
/
DockerLoginTest.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
using Cake.Core.IO;
using Cake.Docker.Tests.Build;
using NUnit.Framework;
namespace Cake.Docker.Tests.Registry.Login
{
[TestFixture]
public class DockerLoginTest
{
[Test]
public void WhenOnlyPathIsSet_CommandLineIsCorrect()
{
var fixture = new DockerRegistryLoginFixture
{
Settings = new DockerRegistryLoginSettings(),
Path = "path"
};
var actual = fixture.Run();
Assert.That(actual.Args, Is.EqualTo("login path"));
}
[Test]
public void WhenOnlyUsernameIsSet_CommandLineIsCorrect()
{
var fixture = new DockerRegistryLoginFixture
{
Settings = new DockerRegistryLoginSettings { Username = "Tubo" },
Path = "path"
};
var actual = fixture.Run();
Assert.That(actual.Args, Is.EqualTo("login --username \"Tubo\" path"));
}
[Test]
public void WhenOnlyPasswordIsSet_ArgumentIsRedacted()
{
var builder = new ProcessArgumentBuilder();
builder.AppendAll("login", new DockerRegistryLoginSettings { Password = "Tubo" }, []);
var actual = builder.RenderSafe();
Assert.That(actual, Is.EqualTo("login --password \"[REDACTED]\""));
}
}
}