Example #1
0
        public void TestStrMatch()
        {
            var target  = new MockManosTarget();
            var rh      = new RouteHandler("^foo", HttpMethod.HTTP_GET, target);
            var request = new MockHttpRequest(HttpMethod.HTTP_GET, "foo");

            Assert.AreEqual(target, rh.Find(request), "should-match");

            request = new MockHttpRequest(HttpMethod.HTTP_GET, "garbage-foo");
            Assert.IsNull(rh.Find(request), "garbage-input");
        }
Example #2
0
        public void TestSetPatternsNull()
        {
            var target  = new MockManosTarget();
            var rh      = new RouteHandler("^foo", HttpMethod.HTTP_GET, target);
            var request = new MockHttpRequest(HttpMethod.HTTP_GET, "foo");

            Assert.AreEqual(target, rh.Find(request), "sanity-1");

            rh.Patterns = null;

            Assert.IsNull(rh.Find(request), "is null");
        }
Example #3
0
        public void TestStrMatchDeep()
        {
            var target = new MockManosTarget();
            var rh     = new RouteHandler("foo/", HttpMethod.HTTP_GET)
            {
                new RouteHandler("bar", HttpMethod.HTTP_GET, target),
            };

            var request = new MockHttpRequest(HttpMethod.HTTP_GET, "foo/bar");

            Assert.AreEqual(target, rh.Find(request));

            request = new MockHttpRequest(HttpMethod.HTTP_GET, "foo/foo");
            Assert.IsNull(rh.Find(request), "repeate-input");

            request = new MockHttpRequest(HttpMethod.HTTP_GET, "foo/badbar");
            Assert.IsNull(rh.Find(request), "matched-input");
        }
Example #4
0
        public void TestChangePatterns()
        {
            //
            // Ensure that changing the patterns property works.
            // This is a bit of an edge case because internally
            // the patterns strings are cached as an array of
            // regexes.
            //

            var target  = new MockManosTarget();
            var rh      = new RouteHandler("^foo", HttpMethod.HTTP_GET, target);
            var request = new MockHttpRequest(HttpMethod.HTTP_GET, "foo");

            Assert.AreEqual(target, rh.Find(request), "sanity-1");

            rh.Patterns [0] = "baz";
            Assert.IsNull(rh.Find(request), "sanity-2");

            request = new MockHttpRequest(HttpMethod.HTTP_GET, "baz");
            Assert.AreEqual(target, rh.Find(request), "changed");
        }