示例#1
0
        public void Accept_Returns_Null_On_UnhandledInput(string[] input, int index)
        {
            var option = new MultiArgOption(1, "-", "foo", 2);

            int idx = 0;
            var arg = option.Accept(input, ref idx);

            Assert.Equal(index, idx);
            Assert.Null(arg);
        }
示例#2
0
        public void Alias(string[] input, string spelling)
        {
            var option   = new MultiArgOption(1, new[] { "-", "/", "--" }, "qux", 2);
            var option2  = new MultiArgOption(2, new[] { "-", "/", "--" }, "foo", 2, aliasId: 1);
            var optTable = new OptTable(new[] { option, option2 });

            int idx = 0;
            var arg = option2.Accept(input, ref idx);

            Assert.NotNull(arg);
            Assert.Equal(1, arg.Option.Id);
            Assert.Equal(spelling, arg.Spelling);
            Assert.Equal("1", arg.Value);
            Assert.Equal(new[] { "1", "2" }, arg.Values);
        }
示例#3
0
        public void Accept(string[] input, int argCount, string[] values)
        {
            var option = new MultiArgOption(1, "-", "foo", argCount);

            int idx = 0;
            var arg = option.Accept(input, ref idx);

            Assert.Equal(argCount + 1, idx);
            Assert.NotNull(arg);
            Assert.Same(option, arg.Option);
            Assert.Equal(0, arg.Index);
            Assert.False(arg.IsClaimed);
            Assert.Equal("-foo", arg.Spelling);
            Assert.Equal(values[0], arg.Value);
            Assert.Equal(values, arg.Values);
        }