Skip to content

Commit cb87663

Browse files
committed
cleanup: Restore nullable annotations checks in tests and cleanup dead code
1 parent 6bb00ea commit cb87663

File tree

8 files changed

+16
-33
lines changed

8 files changed

+16
-33
lines changed

src/CommandLineUtils/IO/Pager.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -122,8 +122,11 @@ public void Kill()
122122
FileName = "less",
123123
Arguments = ArgumentEscaper.EscapeAndConcatenate(args),
124124
RedirectStandardInput = true,
125-
#if NET46_OR_GREATER
125+
#if NET472_OR_GREATER
126126
UseShellExecute = false,
127+
#elif NET6_0_OR_GREATER
128+
#else
129+
#error Target framework misconfiguration
127130
#endif
128131
}
129132
};

src/CommandLineUtils/Properties/NullabilityHelpers.cs

Lines changed: 0 additions & 21 deletions
This file was deleted.

test/CommandLineUtils.Tests/CommandLineApplicationExecutorTests.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Copyright (c) Nate McMaster.
1+
// Copyright (c) Nate McMaster.
22
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
33

44
using System;
@@ -158,6 +158,7 @@ public void ThrowsForUnknownOnExecuteTypes()
158158
var ex = Assert.Throws<InvalidOperationException>(
159159
() => CommandLineApplication.Execute<ExecuteWithUnknownTypes>());
160160
var method = typeof(ExecuteWithUnknownTypes).GetMethod("OnExecute", BindingFlags.Instance | BindingFlags.NonPublic);
161+
Assert.NotNull(method);
161162
var param = Assert.Single(method.GetParameters());
162163
Assert.Equal(Strings.UnsupportedParameterTypeOnMethod(method.Name, param), ex.Message);
163164
}

test/CommandLineUtils.Tests/CommandLineApplicationTests.cs

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -492,7 +492,8 @@ public void AllowNoThrowBehaviorOnUnexpectedOptionAfterSubcommand()
492492
// (does not throw)
493493
app.Execute("k", "run", unexpectedOption);
494494
Assert.Empty(testCmd.RemainingArguments);
495-
var arg = Assert.Single(subCmd?.RemainingArguments);
495+
Assert.NotNull(subCmd);
496+
var arg = Assert.Single(subCmd.RemainingArguments);
496497
Assert.Equal(unexpectedOption, arg);
497498
}
498499

@@ -697,9 +698,10 @@ public void NestedInheritedOptions()
697698
Assert.Contains(subcmd1.GetOptions(), o => o.LongName == "nest1");
698699
Assert.Contains(subcmd1.GetOptions(), o => o.LongName == "global");
699700

700-
Assert.Contains(subcmd2?.GetOptions(), o => o.LongName == "nest2");
701-
Assert.Contains(subcmd2?.GetOptions(), o => o.LongName == "nest1");
702-
Assert.Contains(subcmd2?.GetOptions(), o => o.LongName == "global");
701+
Assert.NotNull(subcmd2);
702+
Assert.Contains(subcmd2.GetOptions(), o => o.LongName == "nest2");
703+
Assert.Contains(subcmd2.GetOptions(), o => o.LongName == "nest1");
704+
Assert.Contains(subcmd2.GetOptions(), o => o.LongName == "global");
703705

704706
Assert.ThrowsAny<CommandParsingException>(() => app.Execute("--nest2", "N2", "--nest1", "N1", "-g", "G"));
705707
Assert.ThrowsAny<CommandParsingException>(() => app.Execute("lvl1", "--nest2", "N2", "--nest1", "N1", "-g", "G"));

test/CommandLineUtils.Tests/CustomValidationAttributeTest.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ public void CustomValidationAttributeFails(params string?[] args)
3434
{
3535
var app = new CommandLineApplication<RedBlueProgram>();
3636
app.Conventions.UseAttributes();
37-
var result = app.Parse(args);
37+
var result = app.Parse(args!);
3838
var validationResult = result.SelectedCommand.GetValidationResult();
3939
Assert.NotEqual(ValidationResult.Success, validationResult);
4040
var program = Assert.IsType<CommandLineApplication<RedBlueProgram>>(result.SelectedCommand);

test/CommandLineUtils.Tests/DotNetExeTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33

44
// This file has been modified from the original form. See Notice.txt in the project root for more information.
55

6-
#if NETCOREAPP3_1_OR_GREATER
6+
#if NET6_0_OR_GREATER
77
using System.IO;
88
using Xunit;
99

test/CommandLineUtils.Tests/McMaster.Extensions.CommandLineUtils.Tests.csproj

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@
33
<PropertyGroup>
44
<TargetFrameworks>net8.0;net10.0</TargetFrameworks>
55
<TargetFrameworks Condition="'$(TestFullFramework)' != 'false'">$(TargetFrameworks);net472</TargetFrameworks>
6-
<!-- Once xunit supports nullable reference types, I might reconsider -->
7-
<Nullable>annotations</Nullable>
86
</PropertyGroup>
97

108
<ItemGroup>

test/CommandLineUtils.Tests/OptionAttributeTests.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ private class EmptyShortName
7171
public void CanSetShortNameToEmptyString()
7272
{
7373
var app = Create<EmptyShortName>();
74-
Assert.All(app.Options, o => Assert.Empty(o.ShortName));
74+
Assert.All(app.Options, o => Assert.True(o.ShortName is null or ""));
7575
}
7676

7777
private class AmbiguousShortOptionName
@@ -465,7 +465,7 @@ public void ApplyingOptionConventionTwice_WithLongOnlyOptions_DoesNotThrow()
465465
Assert.Single(app.Options, o => o.LongName == "count");
466466

467467
// Verify short names are empty
468-
Assert.All(app.Options, o => Assert.Empty(o.ShortName));
468+
Assert.All(app.Options, o => Assert.True(o.ShortName is null or ""));
469469
}
470470

471471
#endregion

0 commit comments

Comments
 (0)