public void TestSerialization() { Uri webHook = new Uri("https://some.uri.com"); Uri url = new Uri("https://another.url.co.il"); Uri stitchingServiceUrl = new Uri("https://some.stitchingserviceuri.com"); RGridDom dom = new RGridDom(); Dictionary <string, RGridResource> resources = new Dictionary <string, RGridResource>(); int width = 1600; int height = 1200; SizeMode target = SizeMode.FullPage; VisualGridSelector selector = null; System.Drawing.Rectangle region = new System.Drawing.Rectangle(40, 50, 60, 70); EmulationBaseInfo emulationInfo = new ChromeEmulationInfo(DeviceName.Galaxy_S5, ScreenOrientation.Portrait); RenderInfo renderInfo = new RenderInfo(width, height, target, selector, region, emulationInfo, null); string platform = "android"; BrowserType browserName = BrowserType.IE_10; object scriptHooks = null; string xpath = "//html/body/some/path/to/some/element[@with:attribute]"; object category = "cat"; VisualGridSelector[] selectorsToFindRegionsFor = new VisualGridSelector[] { new VisualGridSelector(xpath, category) }; bool sendDom = true; RenderRequest request = new RenderRequest("id", webHook, url, stitchingServiceUrl, dom, resources, renderInfo, platform, browserName, scriptHooks, selectorsToFindRegionsFor, sendDom, null, null, null); JsonSerializerSettings settings = JsonUtils.CreateSerializerSettings(); settings.Formatting = Formatting.Indented; string json = JsonConvert.SerializeObject(request, settings); string expectedJson = CommonUtils.ReadResourceFile("Test.Eyes.Sdk.Core.DotNet.Resources.TestRenderRequestSerialization.json"); Assert.AreEqual(expectedJson, json); }
private List <RenderRequest> BuildRenderRequests_(FrameData currentFrame, IDictionary <string, RGridResource> resourceMapping) { Uri url = currentFrame.Url; RGridDom dom = new RGridDom(currentFrame.Cdt, resourceMapping, url, logger_, "buildRenderRequests"); //Create RG requests List <RenderRequest> allRequestsForRG = new List <RenderRequest>(); ICheckSettingsInternal csInternal = (ICheckSettingsInternal)settings_; foreach (VisualGridTask task in taskList_) { RenderBrowserInfo browserInfo = task.BrowserInfo; RenderInfo renderInfo = new RenderInfo(browserInfo.Width, browserInfo.Height, csInternal.GetSizeMode(), csInternal.GetTargetSelector(), csInternal.GetTargetRegion(), browserInfo.EmulationInfo, browserInfo.IosDeviceInfo); List <VisualGridSelector> regionSelectors = new List <VisualGridSelector>(); if (regionSelectors_ != null) { foreach (VisualGridSelector[] vgs in regionSelectors_) { regionSelectors.AddRange(vgs); } } RenderRequest request = new RenderRequest(renderingInfo_.ResultsUrl, url, renderingInfo_.StitchingServiceUrl, dom, resourceMapping, renderInfo, browserInfo.Platform, browserInfo.BrowserType, csInternal.GetScriptHooks(), regionSelectors.ToArray(), csInternal.GetSendDom() ?? false, task, csInternal.GetVisualGridOptions()); allRequestsForRG.Add(request); } return(allRequestsForRG); }