Exemplo n.º 1
0
        public CommandTemplateWithEntry(ParsedPhraseType phraseType, Func <UserInput, string> inputField, params string[] regexParts) : base(phraseType, inputField, regexParts)
        {
            var groups = this.Regex.GetGroupNames();

            _nameGroupId     = Array.IndexOf(groups, RegexHelper.EntryNameGroupName);
            _quantityGroupId = Array.IndexOf(groups, RegexHelper.EntryQuantityGroupName);
            _unitGroupId     = Array.IndexOf(groups, RegexHelper.EntryUnitGroupName);
        }
        public CommandTemplate(ParsedPhraseType phraseType, Func <UserInput, string> inputField, params string[] regexParts)
        {
            GetInputField = inputField;
            PhraseType    = phraseType;
            var expression = InsertWordAroundWords(regexParts, RegexHelper.CanBeIgnoreWordPattern);

            Regex = new Regex(@"^" + expression + @"$", RegexOptions.None);
        }
        public void MiscButtonParsing(string button, ParsedPhraseType phraseType)
        {
            var input = new UserInput
            {
                Button      = button,
                CultureInfo = _defaultCulture
            };
            ParsedCommand parsedCommand = _parser.ParseInput(input);

            Assert.Equal(phraseType, parsedCommand.Type);
            Assert.Null(parsedCommand.Data);
        }
        public void MiscPreparedParsing(string prepared, ParsedPhraseType phraseType)
        {
            var input = new UserInput
            {
                Prepared    = prepared,
                CultureInfo = _defaultCulture
            };
            ParsedCommand parsedCommand = _parser.ParseInput(input);

            Assert.Equal(phraseType, parsedCommand.Type);
            Assert.Null(parsedCommand.Data);
        }
        public void SendMailPreparedParsingTest(string prepared, ParsedPhraseType phraseType, string expectedEmail)
        {
            var input = new UserInput
            {
                Prepared    = prepared,
                CultureInfo = _defaultCulture
            };
            var parsedCommand = _parser.ParseInput(input);

            Assert.Equal(phraseType, parsedCommand.Type);

            var email = parsedCommand.Data as string;

            Assert.Equal(expectedEmail, email);
        }
 public CommandTemplateWithEmail(ParsedPhraseType phraseType, Func <UserInput, string> inputField, params string[] regexParts) : base(phraseType, inputField, regexParts)
 {
 }