public override void RenderStatusById(TaskListener <List <RenderStatusResults> > taskListener, IList <string> testIds, IList <string> renderIds) { List <RenderStatusResults> results = new List <RenderStatusResults>(); foreach (string renderId in renderIds) { List <VGRegion> selectorRegions = new List <VGRegion>(); JToken request = renderRequestsById_[renderId]; JToken selectors = request["selectorsToFindRegionsFor"]; if (selectors != null && selectors is JArray selectorsArr) { IWebDriver driver = driverProvider_.ProvideDriver(); foreach (JObject selectorToken in selectorsArr) { string selector = selectorToken["selector"].Value <string>(); IWebElement elem = driver.FindElement(By.XPath(selector)); Rectangle r = EyesSeleniumUtils.GetElementBounds(elem); selectorRegions.Add(new VGRegion() { X = r.X, Y = r.Y, Width = r.Width, Height = r.Height }); } } RenderStatusResults result = new RenderStatusResults() { RenderId = renderId, Status = RenderStatus.Rendered, ImageLocation = "http://image.some.url.com/" + renderId, SelectorRegions = selectorRegions.ToArray() }; results.Add(result); } taskListener.OnComplete(results); }
public override MatchResult MatchWindow(Applitools.IConfiguration config, string resultImageURL, string domLocation, ICheckSettings checkSettings, IList <IRegion> regions, IList <VisualGridSelector[]> regionSelectors, IList <VGUserAction> userActions, Location location, RenderStatusResults results, string source) { return(new MatchResult() { AsExpected = true }); }
public MatchResult MatchWindow(Applitools.IConfiguration config, string resultImageURL, string domLocation, ICheckSettings checkSettings, IList <IRegion> regions, IList <VisualGridSelector[]> regionSelectors, Location location, RenderStatusResults results, string source) { MatchResult matchResult = WrappedConnector?.MatchWindow(config, resultImageURL, domLocation, checkSettings, regions, regionSelectors, location, results, source); return(matchResult ?? new MatchResult() { AsExpected = true }); }
//[Test] public void TestUFGVisualViewport_UnitTest() { JsonSerializer serializer = JsonUtils.CreateSerializer(); IWebDriver driver = SeleniumUtils.CreateChromeDriver(); EyesRunner runner = new VisualGridRunner(10); Eyes eyes = new Eyes(runner); TestUtils.SetupLogging(eyes); eyes.visualGridEyes_.EyesConnectorFactory = new Mock.MockEyesConnectorFactory(); Configuration config = eyes.GetConfiguration(); IosDeviceInfo iosDeviceInfo = new IosDeviceInfo(IosDeviceName.iPhone_11_Pro); config.AddBrowser(iosDeviceInfo); eyes.SetConfiguration(config); try { eyes.Open(driver, "Eyes Selenium SDK", "Eyes Selenium SDK - UFG Visual Viewport Test"); Mock.MockEyesConnector mockEyesConnector = (Mock.MockEyesConnector)eyes.visualGridEyes_.eyesConnector_; Mock.MockServerConnector mockServerConnector = new Mock.MockServerConnector(eyes.Logger, new Uri(eyes.ServerUrl)); EyesConnector eyesConnector = new EyesConnector(eyes.Logger, new RenderBrowserInfo(iosDeviceInfo), config) { runningSession_ = new RunningSession(), ServerConnector = mockServerConnector }; mockEyesConnector.WrappedConnector = eyesConnector; string inputJson = CommonUtils.ReadResourceFile("Test.Eyes.Selenium.DotNet.Resources.Misc.TestUFGVisualViewport_Input.json"); RenderStatusResults renderStatusResults = serializer.Deserialize <RenderStatusResults>(inputJson); mockEyesConnector.SetRenderStatusResultsList(renderStatusResults); driver.Url = "https://applitools.github.io/demo/TestPages/DynamicResolution/desktop.html"; eyes.Check(Target.Window().Fully()); eyes.Close(); runner.GetAllTestResults(); Assert.AreEqual(1, mockServerConnector.MatchWindowCalls.Count); MatchWindowData matchWindowData = mockServerConnector.MatchWindowCalls[0]; AppOutput appOutput = matchWindowData.AppOutput; Assert.AreEqual(980, appOutput.Viewport.Width); Assert.AreEqual(1659, appOutput.Viewport.Height); Assert.IsNotNull(mockEyesConnector.DeviceSize); Assert.AreEqual(375, mockEyesConnector.DeviceSize.Width); Assert.AreEqual(812, mockEyesConnector.DeviceSize.Height); } finally { eyes.AbortIfNotClosed(); driver.Quit(); } }
public List <RenderStatusResults> RenderStatusById(string[] renderIds) { List <RenderStatusResults> results = new List <RenderStatusResults>(); foreach (string renderId in renderIds) { RenderStatusResults result = new RenderStatusResults() { RenderId = renderId, Status = RenderStatus.Rendered }; results.Add(result); } return(results); }
public void TestUFGVisualViewport() { JsonSerializer serializer = JsonUtils.CreateSerializer(); IWebDriver driver = SeleniumUtils.CreateChromeDriver(); EyesRunner runner = new VisualGridRunner(10); Eyes eyes = new Eyes(runner); TestUtils.SetupLogging(eyes); Configuration config = eyes.GetConfiguration(); IosDeviceInfo iosDeviceInfo = new IosDeviceInfo(IosDeviceName.iPhone_11_Pro); config.AddBrowser(iosDeviceInfo); eyes.SetConfiguration(config); try { eyes.Open(driver, "Eyes Selenium SDK", "Eyes Selenium SDK - UFG Visual Viewport Test"); string inputJson = CommonUtils.ReadResourceFile("Test.Eyes.Selenium.DotNet.Resources.Misc.TestUFGVisualViewport_Input.json"); RenderStatusResults renderStatusResults = serializer.Deserialize <RenderStatusResults>(inputJson); driver.Url = "https://applitools.github.io/demo/TestPages/DynamicResolution/desktop.html"; eyes.Check(Target.Window().Fully()); eyes.Close(false); TestResultsSummary resultsSummary = runner.GetAllTestResults(false); Assert.AreEqual(1, resultsSummary.Count); TestResults results = resultsSummary[0].TestResults; SessionResults sessionResults = TestUtils.GetSessionResults(eyes.ApiKey, results); Assert.AreEqual(1, sessionResults.ActualAppOutput.Length); ActualAppOutput appOutput = sessionResults.ActualAppOutput[0]; Assert.AreEqual(980, appOutput.Image.Viewport.Width); Assert.AreEqual(1659, appOutput.Image.Viewport.Height); Assert.AreEqual(375, sessionResults.Env.DisplaySize.Width); Assert.AreEqual(812, sessionResults.Env.DisplaySize.Height); } finally { eyes.AbortIfNotClosed(); driver.Quit(); } }