Browse Source

Add tests for existing command line parsing

pull/3205/head
Christoph Wille 1 year ago
parent
commit
a433203b7d
  1. 48
      ILSpy.Tests/CommandLineArgumentsTests.cs
  2. 1
      ILSpy.Tests/ILSpy.Tests.csproj

48
ILSpy.Tests/CommandLineArgumentsTests.cs

@ -0,0 +1,48 @@ @@ -0,0 +1,48 @@
using FluentAssertions;
using NUnit.Framework;
namespace ICSharpCode.ILSpy.Tests
{
[TestFixture]
public class CommandLineArgumentsTests
{
[Test]
public void VerifyEmptyArgumentsArray()
{
var cmdLineArgs = new CommandLineArguments(new string[] { });
cmdLineArgs.AssembliesToLoad.Should().BeEmpty();
cmdLineArgs.SingleInstance.Should().BeNull();
cmdLineArgs.NavigateTo.Should().BeNull();
cmdLineArgs.Search.Should().BeNull();
cmdLineArgs.Language.Should().BeNull();
cmdLineArgs.NoActivate.Should().BeFalse();
cmdLineArgs.ConfigFile.Should().BeNull();
}
[Test]
public void VerifySeparateOption()
{
var cmdLineArgs = new CommandLineArguments(new string[] { "/separate" });
cmdLineArgs.SingleInstance.Should().BeFalse();
}
[Test]
public void VerifySingleInstanceOption()
{
var cmdLineArgs = new CommandLineArguments(new string[] { "/singleInstance" });
cmdLineArgs.SingleInstance.Should().BeTrue();
}
[Test]
public void VerifySeparateSingleInstanceOptionOrdering()
{
var cmdLineArgsCase1 = new CommandLineArguments(new string[] { "/singleInstance", "/separate" });
cmdLineArgsCase1.SingleInstance.Should().BeFalse();
var cmdLineArgsCase2 = new CommandLineArguments(new string[] { "/separate", "/singleInstance" });
cmdLineArgsCase2.SingleInstance.Should().BeTrue();
}
}
}

1
ILSpy.Tests/ILSpy.Tests.csproj

@ -39,6 +39,7 @@ @@ -39,6 +39,7 @@
<Compile Include="Analyzers\MethodUsesAnalyzerTests.cs" />
<Compile Include="Analyzers\TestCases\MainAssembly.cs" />
<Compile Include="Analyzers\TypeUsedByAnalyzerTests.cs" />
<Compile Include="CommandLineArgumentsTests.cs" />
</ItemGroup>
<ItemGroup>

Loading…
Cancel
Save