public void Control_SpaContentPlaceHolder_SpaContentPlaceHolder_HistoryApi_Navigation() { RunInAllBrowsers(browser => { browser.NavigateToUrl(SamplesRouteUrls.ControlSamples_SpaContentPlaceHolder_HistoryApi_PageB); browser.Wait(); AssertUI.AlertTextContains(browser, "javascript resource loaded!"); browser.ConfirmAlert(); browser.Wait(); AssertUI.AlertTextContains(browser, "javascript 2 resource loaded!"); browser.ConfirmAlert(); AssertUI.UrlEquals(browser, browser.BaseUrl + SamplesRouteUrls.ControlSamples_SpaContentPlaceHolder_HistoryApi_PageB); browser.First("input[data-ui=redirect-outside-spa]").Click(); browser.Wait(); AssertUI.UrlEquals(browser, browser.BaseUrl); browser.NavigateBack(); browser.Wait(); AssertUI.AlertTextContains(browser, "javascript resource loaded!"); browser.ConfirmAlert(); browser.Wait(); AssertUI.AlertTextContains(browser, "javascript 2 resource loaded!"); browser.ConfirmAlert(); AssertUI.UrlEquals(browser, browser.BaseUrl + SamplesRouteUrls.ControlSamples_SpaContentPlaceHolder_HistoryApi_PageB); browser.NavigateForward(); browser.Wait(); AssertUI.UrlEquals(browser, browser.BaseUrl); }); }
public void Control_SpaContentPlaceHolder_SpaContentPlaceHolder_HistoryApi() { RunInAllBrowsers(browser => { browser.NavigateToUrl(SamplesRouteUrls.ControlSamples_SpaContentPlaceHolder_HistoryApi); browser.Wait(2000); // verify the URL after redirect to the DefaultRoute AssertUI.AlertTextContains(browser, "javascript 2 resource loaded!"); browser.ConfirmAlert(); browser.Wait(2000); AssertUI.AlertTextContains(browser, "javascript resource loaded!"); browser.ConfirmAlert(); AssertUI.UrlEquals(browser, browser.BaseUrl + SamplesRouteUrls.ControlSamples_SpaContentPlaceHolder_HistoryApi_PageB); // go to first page browser.First("a").Click(); browser.Wait(); AssertUI.UrlEquals(browser, browser.BaseUrl + SamplesRouteUrls.ControlSamples_SpaContentPlaceHolder_HistoryApi_PageA + "/16"); // test first page AssertUI.TextEquals(browser.ElementAt("span", 0), "0"); browser.Click("input[type=button]"); browser.Wait(); browser.Click("input[type=button]"); browser.Wait(); browser.Click("input[type=button]"); browser.Wait(); AssertUI.TextEquals(browser.ElementAt("span", 0), "3"); // go to second page browser.FindElements("a").Single(l => l.GetText() == "Go to Task List").Click(); browser.Wait(); AssertUI.UrlEquals(browser, browser.BaseUrl + SamplesRouteUrls.ControlSamples_SpaContentPlaceHolder_HistoryApi_PageB); // try the task list browser.FindElements(".table tr").ThrowIfDifferentCountThan(3); browser.SendKeys("input[type=text]", "DotVVM rocks!"); browser.Click("input[type=button]"); browser.Wait(); browser.FindElements(".table tr").ThrowIfDifferentCountThan(4); browser.Last("tr a").Click(); browser.Wait(); AssertUI.HasClass(browser.Last(".table tr"), "completed"); // test the browse back button browser.NavigateBack(); browser.Wait(); AssertUI.UrlEquals(browser, browser.BaseUrl + SamplesRouteUrls.ControlSamples_SpaContentPlaceHolder_HistoryApi_PageA + "/16"); // test first page AssertUI.TextEquals(browser.ElementAt("span", 0), "0"); browser.Click("input[type=button]"); browser.Wait(); browser.Click("input[type=button]"); browser.Wait(); browser.Click("input[type=button]"); browser.Wait(); AssertUI.TextEquals(browser.ElementAt("span", 0), "3"); // test the forward button browser.NavigateForward(); browser.Wait(); // test the redirect inside SPA browser.FindElements(".table tr").ThrowIfDifferentCountThan(3); browser.First("input[data-ui=redirect-inside-spa]").Click(); browser.Wait(2000); AssertUI.UrlEquals(browser, browser.BaseUrl + SamplesRouteUrls.ControlSamples_SpaContentPlaceHolder_HistoryApi_PageA + "/15"); // test the redirect outside SPA AssertUI.TextEquals(browser.ElementAt("span", 0), "0"); browser.FindElements("a").Single(l => l.GetText().Contains("Exit SPA")).Click(); browser.Wait(); AssertUI.UrlEquals(browser, browser.BaseUrl + SamplesRouteUrls.ComplexSamples_TaskList_ServerRenderedTaskList); browser.NavigateBack(); browser.Wait(); AssertUI.AlertTextContains(browser, "javascript 2 resource loaded!"); browser.ConfirmAlert(); browser.Wait(2000); AssertUI.UrlEquals(browser, browser.BaseUrl + SamplesRouteUrls.ControlSamples_SpaContentPlaceHolder_HistoryApi_PageA + "/15"); }); }