public void VerifyAllAreConsumed_NotConsumed_Accessed()
        {
            var target = new ParsedArguments(new IParsedArgument[]
            {
                new ParsedPositionalArgument("test1"),
                new ParsedNamedArgument("b", "test2"),
                new ParsedFlagArgument("c")
            });

            target.Get(0);
            target.Get("b");
            target.GetFlag("c");
            Action act = () => target.VerifyAllAreConsumed();

            act.Should().Throw <CommandArgumentException>();
        }
        public void Get_Named_Consumed()
        {
            var target = new ParsedArguments(new[]
            {
                new ParsedNamedArgument("a", "1"),
                new ParsedNamedArgument("a", "2")
            });
            var result = target.Get("a");

            result.Value.Should().Be("1");
            result.MarkConsumed();

            result = target.Get("a");
            result.Value.Should().Be("2");
            result.MarkConsumed();

            result = target.Get("a");
            result.Should().BeOfType <MissingArgument>();
        }