Beispiel #1
0
        public async Task UseParserForRun()
        {
            var flag       = new Flag("test", "this is test flag");
            var option     = new Option <bool>(1, "this is test flag");
            var args       = new[] { "-a", "b" };
            var parserMock = new Mock <IArgumentsParser>(MockBehavior.Strict);

            parserMock.Setup(x => x.ParseArgs(
                                 args,
                                 It.Is <List <Argument> >(y => y.Count == 2 && y[0] == flag && y[1] == option)));

            var sut = new ParserCommand(flag, option);
            await sut.RunAsync(parserMock.Object, args);
        }
Beispiel #2
0
        private void TryParse(string input)
        {
            if (string.IsNullOrEmpty(input))
            {
                throw new ArgumentNullException("input");
            }

            var data = input.Split(COMMAND_SEPARATOR);

            if (this.IsValid = data.Length == 2)
            {
                char          rawCommand;
                ParserCommand command = (ParserCommand)'u';
                if (this.IsValid = (char.TryParse(data[0], out rawCommand) &&
                                    Enum.TryParse(((int)rawCommand).ToString(), out command)))
                {
                    this.Command = command;
                    if (this.IsValid = InstanceResolverFor <IFSController> .Instance.Exists(data[1]))
                    {
                        this.PathToFile = data[1];
                    }
                }
            }
        }