public void ShouldNotGetPatternForEmptyURL() { RouteParser parser; parser = new RouteParser(); Assert.ThrowsException <ArgumentNullException>(() => parser.GetPattern(null)); Assert.ThrowsException <ArgumentNullException>(() => parser.GetPattern("")); }
public void ShouldGetPatternForStaticURLWithSpecialChars() { RouteParser parser; string result; parser = new RouteParser(); result = parser.GetPattern("/root/API/Books.Test/1"); Assert.AreEqual(@"^/root/API/Books\.Test/1$", result); result = parser.GetPattern("/root/API/Books?author={authorID}&year={yearNumber}"); Assert.AreEqual(@"^/root/API/Books\?author=(?<authorID>[^/&]+)&year=(?<yearNumber>[^/&]+)$", result); }
public void ShouldGetPatternForURLWithVariableAndFilters() { RouteParser parser; string result; parser = new RouteParser(); result = parser.GetPattern("/root/API/Books/{id}?author={authorID}&year={yearNumber}"); Assert.AreEqual(@"^/root/API/Books/(?<id>[^/&]+)\?author=(?<authorID>[^/&]+)&year=(?<yearNumber>[^/&]+)$", result); }
public void ShouldGetPatternForURLWithVariableBis() { RouteParser parser; string result; parser = new RouteParser(); result = parser.GetPattern("/root/API/Books/{id}/Name"); Assert.AreEqual("^/root/API/Books/(?<id>[^/&]+)/Name$", result); }
public void ShouldGetPatternForURLStartingWithSlash() { RouteParser parser; string result; parser = new RouteParser(); result = parser.GetPattern("/root/API"); Assert.AreEqual("^/root/API$", result); }
public void ShouldGetPatternForMediumStaticURL() { RouteParser parser; string result; parser = new RouteParser(); result = parser.GetPattern("/root/API/Books/1"); Assert.AreEqual("^/root/API/Books/1$", result); }
public void ShouldGetPatternForRootURL() { RouteParser parser; string result; parser = new RouteParser(); result = parser.GetPattern("/root"); Assert.AreEqual("^/root$", result); }