public void CaptureRoutesShouldNotMatch()
        {
            var path = MockRepository.GenerateStrictMock<IPath>();

            var routePath = MockRepository.GenerateStrictMock<IPath>();
            routePath.Expect(r => r.IsLiteral).Return(false);
            var route = MockRepository.GenerateStrictMock<IRoute>();
            route.Expect(r => r.Path).Return(routePath);

            var predicate = new LiteralRankedRoutePredicate();

            var match = predicate.Matches(route, path);

            Assert.IsFalse(match);
        }
        public void PathsStartingTheSameShouldNotMatch()
        {
            var path = MockRepository.GenerateStrictMock<IPath>();
            path.Expect(p => p.LiteralPath).Return("/first/third");

            var routePath = MockRepository.GenerateStrictMock<IPath>();
            routePath.Expect(r => r.IsLiteral).Return(true);
            routePath.Expect(r => r.LiteralPath).Return("/first/second");
            var route = MockRepository.GenerateStrictMock<IRoute>();
            route.Expect(r => r.Path).Return(routePath);

            var predicate = new LiteralRankedRoutePredicate();

            var match = predicate.Matches(route, path);

            Assert.IsFalse(match);
        }