1
0

Updating to VS 2026

This commit is contained in:
2025-11-13 20:30:44 +01:00
parent 1096186c40
commit 1767b55c8a
29 changed files with 230 additions and 277 deletions

View File

@@ -19,7 +19,7 @@ namespace AMWD.Common.Tests.Cli
// assert
Assert.IsNotNull(result);
Assert.AreEqual(9, result.Length);
Assert.HasCount(9, result);
Assert.AreEqual("Option1", result[0]);
Assert.AreEqual("Option 2", result[1]);
@@ -44,7 +44,7 @@ namespace AMWD.Common.Tests.Cli
// assert
Assert.IsNotNull(args);
Assert.AreEqual(2, args.Length);
Assert.HasCount(2, args);
Assert.AreEqual("Option1", args[0]);
Assert.AreEqual("Option 2", args[1]);
@@ -66,27 +66,27 @@ namespace AMWD.Common.Tests.Cli
// assert
Assert.IsNotNull(options);
Assert.AreEqual(4, options.Count);
Assert.HasCount(4, options);
Assert.AreEqual(1, options.ElementAt(0).Names.Count);
Assert.HasCount(1, options.ElementAt(0).Names);
Assert.AreEqual("opt1", options.ElementAt(0).Names.First());
Assert.AreEqual(0, options.ElementAt(0).ParameterCount);
Assert.IsFalse(options.ElementAt(0).IsSingle);
Assert.IsFalse(options.ElementAt(0).IsRequired);
Assert.AreEqual(1, options.ElementAt(1).Names.Count);
Assert.HasCount(1, options.ElementAt(1).Names);
Assert.AreEqual("opt2", options.ElementAt(1).Names.First());
Assert.AreEqual(1, options.ElementAt(1).ParameterCount);
Assert.IsFalse(options.ElementAt(1).IsSingle);
Assert.IsFalse(options.ElementAt(1).IsRequired);
Assert.AreEqual(1, options.ElementAt(2).Names.Count);
Assert.HasCount(1, options.ElementAt(2).Names);
Assert.AreEqual("opt3", options.ElementAt(2).Names.First());
Assert.AreEqual(2, options.ElementAt(2).ParameterCount);
Assert.IsTrue(options.ElementAt(2).IsSingle);
Assert.IsTrue(options.ElementAt(2).IsRequired);
Assert.AreEqual(2, options.ElementAt(3).Names.Count);
Assert.HasCount(2, options.ElementAt(3).Names);
Assert.AreEqual("opt4", options.ElementAt(3).Names.First());
Assert.AreEqual("option4", options.ElementAt(3).Names.Last());
Assert.AreEqual(0, options.ElementAt(3).ParameterCount);
@@ -115,45 +115,45 @@ namespace AMWD.Common.Tests.Cli
// assert
Assert.IsFalse(opt.IsSet);
Assert.AreEqual(7, parser.Arguments.Length);
Assert.AreEqual(2, parser.FreeArguments.Length);
Assert.HasCount(7, parser.Arguments);
Assert.HasCount(2, parser.FreeArguments);
Assert.AreEqual("foo", parser.FreeArguments.First());
Assert.AreEqual("bar", parser.FreeArguments.Last());
Assert.IsTrue(parser.Arguments.ElementAt(0).Option.IsSet);
Assert.IsNull(parser.Arguments.ElementAt(0).Option.Value);
Assert.AreEqual(0, parser.Arguments.ElementAt(0).Values.Length);
Assert.IsEmpty(parser.Arguments.ElementAt(0).Values);
Assert.IsTrue(parser.Arguments.ElementAt(1).Option.IsSet);
Assert.AreEqual("two", parser.Arguments.ElementAt(1).Option.Value);
Assert.AreEqual(1, parser.Arguments.ElementAt(1).Values.Length);
Assert.HasCount(1, parser.Arguments.ElementAt(1).Values);
Assert.AreEqual("two", parser.Arguments.ElementAt(1).Values.First());
Assert.IsTrue(parser.Arguments.ElementAt(2).Option.IsSet);
Assert.AreEqual("three1", parser.Arguments.ElementAt(2).Option.Value);
Assert.AreEqual(2, parser.Arguments.ElementAt(2).Values.Length);
Assert.HasCount(2, parser.Arguments.ElementAt(2).Values);
Assert.AreEqual("three1", parser.Arguments.ElementAt(2).Values.First());
Assert.AreEqual("three2", parser.Arguments.ElementAt(2).Values.Last());
Assert.IsTrue(parser.Arguments.ElementAt(3).Option.IsSet);
Assert.AreEqual("four", parser.Arguments.ElementAt(3).Option.Value);
Assert.AreEqual(1, parser.Arguments.ElementAt(3).Values.Length);
Assert.HasCount(1, parser.Arguments.ElementAt(3).Values);
Assert.AreEqual("four", parser.Arguments.ElementAt(3).Values.First());
Assert.IsTrue(parser.Arguments.ElementAt(4).Option.IsSet);
Assert.AreEqual("testing", parser.Arguments.ElementAt(4).Option.Names.First());
Assert.AreEqual("done", parser.Arguments.ElementAt(4).Option.Value);
Assert.AreEqual(1, parser.Arguments.ElementAt(4).Values.Length);
Assert.HasCount(1, parser.Arguments.ElementAt(4).Values);
Assert.AreEqual("done", parser.Arguments.ElementAt(4).Values.First());
Assert.IsNull(parser.Arguments.ElementAt(5).Option);
Assert.AreEqual("foo", parser.Arguments.ElementAt(5).Value);
Assert.AreEqual(1, parser.Arguments.ElementAt(5).Values.Length);
Assert.HasCount(1, parser.Arguments.ElementAt(5).Values);
Assert.IsNull(parser.Arguments.ElementAt(6).Option);
Assert.AreEqual("bar", parser.Arguments.ElementAt(6).Value);
Assert.AreEqual(1, parser.Arguments.ElementAt(6).Values.Length);
Assert.HasCount(1, parser.Arguments.ElementAt(6).Values);
}
[TestMethod]
@@ -193,28 +193,23 @@ namespace AMWD.Common.Tests.Cli
var opts = parser.SetOptions;
// assert
Assert.AreEqual(2, opts.Length);
Assert.HasCount(2, opts);
Assert.AreEqual("opt1", opts.First().Names.First());
Assert.AreEqual("opt3", opts.Last().Names.First());
}
[TestMethod]
[ExpectedException(typeof(ArgumentNullException))]
public void ShouldThrowExceptionOnNullArgs()
{
string[] args = null;
var parser = new CommandLineParser();
// act
parser.Parse(args);
// assert - ArgumentNullException
Assert.Fail();
// act & assert
Assert.ThrowsExactly<ArgumentNullException>(() => parser.Parse(args));
}
[TestMethod]
[ExpectedException(typeof(Exception))]
public void ShouldThrowExceptionOnMultipleAutocomplete()
{
// arrange
@@ -226,15 +221,11 @@ namespace AMWD.Common.Tests.Cli
parser.RegisterOption("Option1", 1);
parser.RegisterOption("Option2", 1);
// act
parser.Parse(args);
// assert - Exception
Assert.Fail();
// act & assert
Assert.ThrowsExactly<Exception>(() => parser.Parse(args));
}
[TestMethod]
[ExpectedException(typeof(Exception))]
public void ShouldThrowExceptionOnMissingOption()
{
// arrange
@@ -246,15 +237,11 @@ namespace AMWD.Common.Tests.Cli
parser.RegisterOption("Opt1", 1);
parser.RegisterOption("Opt2", 1);
// act
parser.Parse(args);
// assert - Exception
Assert.Fail();
// act & assert
Assert.ThrowsExactly<Exception>(() => parser.Parse(args));
}
[TestMethod]
[ExpectedException(typeof(Exception))]
public void ShouldTrhowExceptionOnDuplicateOption()
{
// arrange
@@ -262,15 +249,11 @@ namespace AMWD.Common.Tests.Cli
var parser = new CommandLineParser();
parser.RegisterOption("opt", 1).Single();
// act
parser.Parse(args);
// assert - Exception
Assert.Fail();
// act & assert
Assert.ThrowsExactly<Exception>(() => parser.Parse(args));
}
[TestMethod]
[ExpectedException(typeof(Exception))]
public void ShouldThrowExceptionOnMissingArgument()
{
// arrange
@@ -278,15 +261,11 @@ namespace AMWD.Common.Tests.Cli
var parser = new CommandLineParser();
parser.RegisterOption("option", 1);
// act
parser.Parse(args);
// assert - Exception
Assert.Fail();
// act & assert
Assert.ThrowsExactly<Exception>(() => parser.Parse(args));
}
[TestMethod]
[ExpectedException(typeof(Exception))]
public void ShouldThrowExceptionForMissingRequiredOption()
{
// arrange
@@ -295,11 +274,8 @@ namespace AMWD.Common.Tests.Cli
parser.RegisterOption("opt").Required();
parser.RegisterOption("foo").Required();
// act
parser.Parse(args);
// assert - Exception
Assert.Fail();
// act & assert
Assert.ThrowsExactly<Exception>(() => parser.Parse(args));
}
}
}