public static void Single()
        {
            var provider = new CommandLineOptionsProvider(new[] { new Option("a") });

            provider.Load();

            provider
            .GetChildKeys(Enumerable.Empty <string>(), null)
            .Should()
            .BeEquivalentTo("a");
        }
        public static void Operands()
        {
            var provider = new CommandLineOptionsProvider(new[] { new Operand("a") });

            provider.Load();

            provider
            .TryGet("", out var value)
            .Should()
            .BeTrue();

            value
            .Should()
            .Be("a");
        }
        public static void Values()
        {
            var provider = new CommandLineOptionsProvider(new[] { new OptionArgument("a", "1"), new OptionArgument("a", "2") });

            provider.Load();

            provider
            .TryGet("a:1", out var value)
            .Should()
            .BeTrue();

            value
            .Should()
            .Be("2");
        }
        public static void Multiple()
        {
            var provider = new CommandLineOptionsProvider(new[] { new OptionArgument("a", "1"), new OptionArgument("a", "2") });

            provider.Load();

            provider
            .GetChildKeys(Enumerable.Empty <string>(), null)
            .Should()
            .BeEquivalentTo("a", "a");

            provider
            .GetChildKeys(Enumerable.Empty <string>(), "a")
            .Should()
            .BeEquivalentTo("0", "1");
        }
Exemplo n.º 5
0
        public void TestParsing(string expected, string template, string fullName, CommandOptionType type, params string[] values)
        {
            // Arrange
            var option = new CommandOption(template, type);

            option.Values.AddRange(values.ToList());
            var optionList = new List <CommandOption> {
                option
            };

            // Act
            var provider = new CommandLineOptionsProvider(optionList);
            var builder  = new ConfigurationBuilder();
            var config   = provider.Build(builder);

            config.TryGet(fullName, out var actual);

            // Assert
            Assert.Equal(expected, actual);
        }