public void MarcosWork() { var parser = new ParserBuilder() .AddMacro("MYMACRO", "val1", "val2") .CreateParser("MYMACRO some literal text"); var goodMatch = parser.Match("val1 some literal text"); Assert.IsNotNull(goodMatch); Assert.IsEmpty(goodMatch); Assert.IsNotNull(parser.Match("val2 some literal text")); Assert.IsNull(parser.Match("val3 some literal text")); Assert.IsNull(parser.Match("val1 some bad text")); }
public void LiteralsWork() { IParser parser = new ParserBuilder().CreateParser("someLiteralText"); var match = parser.Match("someLiteralText"); Assert.IsNotNull(match); Assert.IsEmpty(match); }
public void NamedGroupsWork() { IParser parser = new ParserBuilder().CreateParser("CAPTURE then literal"); var lookupTable = parser.Match("some text then literal"); Assert.AreEqual("some text", lookupTable !["CAPTURE"]);