public void ArgTest_Cut() { var arg = new ArgInterpreter(Str, ArgTypes.Cut); Assert.AreEqual(2, arg.Tokens.Count); Assert.AreEqual("the", arg.Tokens[0], "First token[0]"); Assert.AreEqual("crazy brown fox jumps over a lazy dog\nLast night I found out something\r\nThat's the spirit\n\r", arg.Tokens[1], "Second token[1]"); }
public void ArgTest_ToString() { var arg = new ArgInterpreter(Str, ArgTypes.Cut); Assert.AreEqual(Str.TrimStart('\n', '\r'), arg.ToString()); }
public void ArgTest_Lines() { var arg = new ArgInterpreter(Str, ArgTypes.Lines); Assert.AreEqual(3, arg.Tokens.Count); }
public void ArgTest_Words() { var arg = new ArgInterpreter(Str, ArgTypes.Words); Assert.AreEqual(18, arg.Tokens.Count); }
/// <summary> /// ProcessCommand /// </summary> /// <param name="line"></param> /// <returns></returns> public KeyValuePair<Delegate, string> ProcessCommand(string line) { if (string.IsNullOrEmpty(line) || line[0] != Settings.Default.PromptChar) return default(KeyValuePair<Delegate, string>); var ai = new ArgInterpreter(line.TrimStart(' ', Settings.Default.PromptChar), ArgTypes.Cut); return new KeyValuePair<Delegate, string>(CMD.Where(x => x.Key == ai.Tokens[0].ToLower()).Select(x => x.Value).FirstOrDefault(), ai.Tokens[1].Trim()); }