public static MvcForm BeginForm <U>(this HtmlHelper self, RequestPattern <U> route, Func <U, AppLocalUrl> instantiate, object htmlAttributes = null)
            where U : AbstractUrlPattern
        {
            var location = instantiate(route.Url);

            return(self.BeginForm(location, route.FormMethod, htmlAttributes));
        }
Example #2
0
 public static FuncRouteHandler Create <P1, P2, P3>(RequestPattern <UrlPattern <P1, P2, P3> > pattern, Func <HttpContextBase, P1, P2, P3, ActionResult> handler)
 {
     return(new FuncRouteHandler(pattern, (req) =>
     {
         var p = pattern.Url.ExtractParameters(req);
         return handler.Invoke(req.HttpContext, p.Item1, p.Item2, p.Item3);
     }));
 }
Example #3
0
            public void loadMappingsInto(StubMappings stubMappings)
            {
                RequestPattern     requestPattern = RequestPatternBuilder.newRequestPattern(RequestMethod.ANY, com.github.tomakehurst.wiremock.client.WireMock.anyUrl()).build();
                ResponseDefinition responseDef    = com.github.tomakehurst.wiremock.client.ResponseDefinitionBuilder.responseDefinition()
                                                    .proxiedFrom(baseUrl)
                                                    .build();

                StubMapping proxyBasedMapping = new StubMapping(requestPattern, responseDef);

                proxyBasedMapping.setPriority(new java.lang.Integer(10));
                stubMappings.addMapping(proxyBasedMapping);
            }
Example #4
0
        public void ExperimentWithDevTools()
        {
            _driver.Navigate().GoToUrl("http://demos.bellatrix.solutions/");

            var devToolssession = _driver.CreateDevToolsSession();

            var setCacheDisabledCommandSettings = new SetCacheDisabledCommandSettings();

            setCacheDisabledCommandSettings.CacheDisabled = true;
            devToolssession.Network.SetCacheDisabled(setCacheDisabledCommandSettings);
            devToolssession.Network.ClearBrowserCache();

            var setExtraHTTPHeadersCommandSettings = new SetExtraHTTPHeadersCommandSettings();

            setExtraHTTPHeadersCommandSettings.Headers.Add("Accept-Encoding", "gzip, deflate");
            devToolssession.Network.SetExtraHTTPHeaders(setExtraHTTPHeadersCommandSettings);

            var captureScreenshotCommandSettings = new CaptureScreenshotCommandSettings();

            devToolssession.Page.CaptureScreenshot(captureScreenshotCommandSettings);

            EventHandler <LoadingFailedEventArgs> loadingFailed = (sender, e) =>
            {
                Assert.AreEqual(BlockedReason.Inspector, e.BlockedReason);
            };

            EventHandler <RequestInterceptedEventArgs> requestIntercepted = (sender, e) =>
            {
                Assert.IsTrue(e.Request.Url.EndsWith("jpg"));
            };

            RequestPattern requestPattern = new RequestPattern();

            requestPattern.InterceptionStage = InterceptionStage.HeadersReceived;
            requestPattern.ResourceType      = ResourceType.Image;
            requestPattern.UrlPattern        = "*.jpg";
            var setRequestInterceptionCommandSettings = new SetRequestInterceptionCommandSettings();

            setRequestInterceptionCommandSettings.Patterns = new RequestPattern[] { requestPattern };
            devToolssession.Network.SetRequestInterception(setRequestInterceptionCommandSettings);
            devToolssession.Network.RequestIntercepted += requestIntercepted;

            var setUserAgentOverrideCommandSettings = new SetUserAgentOverrideCommandSettings();

            setUserAgentOverrideCommandSettings.UserAgent = "Mozilla/5.0 CK={} (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko";
            devToolssession.Network.SetUserAgentOverride(setUserAgentOverrideCommandSettings);

            var blockedUrlSettings = new SetBlockedURLsCommandSettings();

            blockedUrlSettings.Urls = new string[] { "http://demos.bellatrix.solutions/wp-content/uploads/2018/04/440px-Launch_Vehicle__Verticalization__Proton-M-324x324.jpg" };
            devToolssession.Network.SetBlockedURLs(blockedUrlSettings);

            devToolssession.Performance.Enable();

            IWebElement imageTitle        = _driver.FindElement(By.XPath("//h2[text()='Falcon 9']"));
            IWebElement falconSalesButton = _driver.FindElement(RelativeBy.WithTagName("span").Below(imageTitle));

            falconSalesButton.Click();

            var setIgnoreCertificateErrorsCommandSettings = new SetIgnoreCertificateErrorsCommandSettings();

            setIgnoreCertificateErrorsCommandSettings.Ignore = true;
            devToolssession.Security.SetIgnoreCertificateErrors(setIgnoreCertificateErrorsCommandSettings);

            EventHandler <MessageAddedEventArgs> messageAdded = (sender, e) =>
            {
                Assert.AreEqual("BELLATRIX is cool", e.Message);
            };

            devToolssession.Console.Enable();
            devToolssession.Console.ClearMessages();
            devToolssession.Console.MessageAdded += messageAdded;

            _driver.ExecuteScript("console.log('BELLATRIX is cool');");

            var emulationSettings = new EmulateNetworkConditionsCommandSettings();

            emulationSettings.ConnectionType     = ConnectionType.Cellular3g;
            emulationSettings.DownloadThroughput = 20;
            emulationSettings.Latency            = 1.2;
            emulationSettings.UploadThroughput   = 50;
            devToolssession.Network.EmulateNetworkConditions(emulationSettings);

            var metrics = devToolssession.Performance.GetMetrics();

            foreach (var metric in metrics.Result.Metrics)
            {
                Console.WriteLine($"{metric.Name} = {metric.Value}");
            }
        }
Example #5
0
 public static FuncRouteHandler Create(RequestPattern <UrlPattern> pattern, Func <HttpContextBase, ActionResult> handler)
 {
     return(new FuncRouteHandler(pattern, (req) => handler(req.HttpContext)));
 }
 public static MvcForm BeginForm(this HtmlHelper self, RequestPattern <UrlPattern> route, object htmlAttributes = null)
 {
     return(self.BeginForm(route.Url.Url, route.FormMethod, htmlAttributes));
 }