예제 #1
0
        public static void RouteNotMatched <TValues>(
            this Assert assert,
            RouteBuilder.IBuildRoutesWithVariablesToMatch <TValues> routeInfo,
            UrlPathDetails url)
        {
            var routeWasMatched = false;
            var route           = routeInfo.ToRoute(extractedValue => routeWasMatched = true);

            route.ExecuteCallbackIfUrlMatches(url);
            assert.NotOk(routeWasMatched);
        }
        public static IMatchRoutes ToRoute <TValues>(this RouteBuilder.IBuildRoutesWithVariablesToMatch <TValues> source, Action <TValues> ifMatched)
        {
            if (source == null)
            {
                throw new ArgumentNullException(nameof(source));
            }
            if (ifMatched == null)
            {
                throw new ArgumentNullException("ifMatched");
            }

            return(source.ToRoute(ifMatched: (values, queryString) => ifMatched(values)));
        }
예제 #3
0
        public static void RouteMatched <TValues>(
            this Assert assert,
            RouteBuilder.IBuildRoutesWithVariablesToMatch <TValues> routeInfo,
            UrlPathDetails url,
            TValues expectedValue,
            ResultComparer <TValues> comparer)
        {
            var routeMatched = false;
            var route        = routeInfo.ToRoute(extractedValue => routeMatched = comparer(extractedValue, expectedValue));

            route.ExecuteCallbackIfUrlMatches(url);
            assert.Ok(routeMatched);
        }