public void SimpleMaybeTest() { dynamic se = new SimpleExpression(); SimpleExpression result = se .Text("http") .Maybe("s") .Text("://") .Generate(); Assert.AreEqual(@"http(s)?://", result.Expression); }
public void SimpleWordTest() { dynamic se = new SimpleExpression(); SimpleExpression result = se .Text("ponys") .Alphanumerics.And(" ") .Text("rainbows") .Generate(); Assert.AreEqual(@"ponys[a-zA-Z0-9 ]*rainbows", result.Expression); }
public void SimpleOr() { dynamic se = new SimpleExpression(); SimpleExpression result = se .Text("http") .Or .Text("ftp") .Generate(); Assert.AreEqual("(http|ftp)", result.Expression); }
public void GroupTogetherAsStructuralChecksTest() { dynamic se = new SimpleExpression(); SimpleExpression result = se .Text("Group").Anything .Text("Together").Maybe(".As") .Generate(); Assert.AreEqual(@"Group.*Together(.As)?", result.Expression); var regex = new Regex(result.Expression); Assert.IsTrue(regex.IsMatch("Group.http.Together.As(\"Something\")")); }
public void SimpleSubExpression() { dynamic subSe = new SimpleExpression(); SimpleExpression subResult = subSe .Text("DEF") .Generate(); Assert.AreEqual("DEF", subResult.Expression); dynamic se = new SimpleExpression(); SimpleExpression result = se .Text("ABC") .SubExpression(subSe) .Text("GHI") .Generate(); Assert.AreEqual("ABCDEFGHI", result.Expression); Assert.IsTrue(result.IsMatch("ABCDEFGHI")); }