Skip to content

Commit 1c88d37

Browse files
committed
Merge branch 'mgaberc-biosistemika-bugs/generate-signature-options' into develop
2 parents af3e44f + 5f3a266 commit 1c88d37

File tree

2 files changed

+43
-2
lines changed

2 files changed

+43
-2
lines changed
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
using CommandLine;
2+
using NetSparkleUpdater.AppCastGenerator;
3+
using Xunit;
4+
5+
namespace NetSparkle.Tests.AppCastGenerator
6+
{
7+
public class OptionsTests
8+
{
9+
[Fact]
10+
public void ParseArguments_NoKeyOverrideInitially()
11+
{
12+
var args = new[]
13+
{
14+
"--generate-signature", "binary.exe",
15+
};
16+
17+
var result = Parser.Default.ParseArguments<Options>(args);
18+
19+
Assert.Empty(result.Errors);
20+
Assert.Equal("", result.Value.PublicKeyOverride);
21+
Assert.Equal("", result.Value.PrivateKeyOverride);
22+
}
23+
24+
[Fact]
25+
public void ParseArguments_KeysOverrideAndGenerateSignature_Compatibility()
26+
{
27+
var args = new[]
28+
{
29+
"--generate-signature", "binary.exe",
30+
"--public-key-override", "TestPublicKey",
31+
"--private-key-override", "TestPrivateKey"
32+
};
33+
34+
var result = Parser.Default.ParseArguments<Options>(args);
35+
36+
Assert.Empty(result.Errors);
37+
Assert.Equal("TestPublicKey", result.Value.PublicKeyOverride);
38+
Assert.Equal("TestPrivateKey", result.Value.PrivateKeyOverride);
39+
}
40+
}
41+
}

src/NetSparkle.Tools.AppCastGenerator/Options.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,12 +81,12 @@ public class Options
8181
Default = false)]
8282
public bool UseEd25519SignatureAttributeForXml { get; set; }
8383

84-
[Option("public-key-override", SetName = "local", Required = false, HelpText = "Public key override (ignores whatever is in the public key file) for signing binaries. This" +
84+
[Option("public-key-override", Required = false, HelpText = "Public key override (ignores whatever is in the public key file) for signing binaries. This" +
8585
" overrides ALL other public keys set when verifying binaries, INCLUDING public key set via environment variables! " +
8686
"If not set, uses --key-path (if set) or the default SignatureManager location. Not used in --generate-keys or --export.", Default = "")]
8787
public string? PublicKeyOverride { get; set; }
8888

89-
[Option("private-key-override", SetName = "local", Required = false, HelpText = "Private key override (ignores whatever is in the private key file) for signing binaries. This" +
89+
[Option("private-key-override", Required = false, HelpText = "Private key override (ignores whatever is in the private key file) for signing binaries. This" +
9090
" overrides ALL other private keys set when signing binaries, INCLUDING private key set via environment variables! " +
9191
"If not set, uses --key-path (if set) or the default SignatureManager location. Not used in --generate-keys or --export.", Default = "")]
9292
public string? PrivateKeyOverride { get; set; }

0 commit comments

Comments
 (0)