public void Setup() { AdditionalCapabilities = new AdditionalDriverOptions(); //Setup Logs Resources.SetupFiles();//This goes as first line in TestSetup TestSetup(); }
public void PassingNullObjectInIsNullDoesNotThrowAndReturnsFailedCheckTrueWhenFlagIsFalse() { AdditionalDriverOptions data = null; Assert.DoesNotThrow(() => Helper.IsNullOrEmpty(data, false), "Passing empty object should throw."); Assert.IsTrue(Helper.IsNullOrEmpty(data, false), "Check should have failed and returned true"); }
public void OverridingBrowserNameInWebAppReplacesDefaultCapability() { TestEnvironmentParameters p = new TestEnvironmentParameters { RS_AppType = ApplicationType.WEB, RS_BrowserName = MobileBrowserType.Safari, RS_DeviceGroup = "iOS;Tablet" }; DriverCapabilities caps = new DriverCapabilities(p); Assert.AreEqual(MobileBrowserType.Safari, caps.GetDriverOptions().ToDictionary()[MobileCapabilityType.BrowserName], "Default browser name should be set as capability."); AdditionalDriverOptions additionalOptions = new AdditionalDriverOptions(); additionalOptions.AddCapability(MobileCapabilityType.BrowserName, MobileBrowserType.Chrome); caps.SetAdditionalOptions(additionalOptions.GetCapabilities()); Assert.AreEqual(MobileBrowserType.Chrome, caps.GetDriverOptions().ToDictionary()[MobileCapabilityType.BrowserName], "BrowserName capability should have been overridden."); }
/// <summary> /// Merge additional capabilities supplied by the user /// along with the default capabilities. .see AdditionalDriverOptions /// </summary> /// <param name="options">.seealso AdditionalDriverOptions</param> public void MergeCapabilities(AdditionalDriverOptions options) { if (options == null) { return; } //Overriding RunSettings if (options.GetCapabilities().Any(k => k.Key.Contains("RS_"))) { //Regenerate Driver Capabilities OverrideRunSettingsParams(options); } SetAdditionalOptions(options.GetCapabilities().Where(c => !c.Key.Contains("RS_")).ToDictionary(x => x.Key, x => x.Value)); if (options.GetArguments().Count > 0) { SetArguments(options.GetArguments().ToArray()); } PreReqChecks(); }
public void SpecifyingParametersWithRS_PrefixOverridesRunSettingsParameters() { TestEnvironmentParameters p = new TestEnvironmentParameters { RS_AppType = ApplicationType.WEB, RS_BrowserName = MobileBrowserType.Safari, RS_DeviceGroup = "iOS;Tablet" }; DriverCapabilities caps = new DriverCapabilities(p); Assert.AreEqual(MobileBrowserType.Safari, caps.GetDriverOptions().ToDictionary()[MobileCapabilityType.BrowserName], "Default browser name should be set as capability."); AdditionalDriverOptions additionalOptions = new AdditionalDriverOptions(); additionalOptions .AddCapability("RS_DeviceGroup", "Android;phone") .AddCapability("RS_BrowserName", "Chrome"); caps.MergeCapabilities(additionalOptions); Assert.AreEqual(p.RS_DeviceGroup, "Android;phone", "Device Group value should be overridden"); Assert.AreEqual(p.RS_BrowserName, "Chrome", "Browser Name should be overridden"); Assert.AreNotEqual(ApplicationType.NATIVE, p.RS_AppType, "Application Type runsettings parameter should not be overridden"); }
private void OverrideRunSettingsParams(AdditionalDriverOptions driverOptions) { TestLogs.WriteLogSection("Overriding RunSettings", () => { foreach (KeyValuePair <string, object> runSetting in driverOptions.GetCapabilities().Where(k => k.Key.Contains("RS_"))) { System.Reflection.PropertyInfo contextProperty = this.context.GetType().GetProperty(runSetting.Key); if (contextProperty != null && contextProperty.CanWrite) { if (contextProperty.PropertyType == typeof(ApplicationType)) { contextProperty.SetValue(this.context, (ApplicationType)Enum.Parse(typeof(ApplicationType), runSetting.Value.ToString())); isCapabilityRefreshNeeded = true; continue; } contextProperty.SetValue(this.context, runSetting.Value); isCapabilityRefreshNeeded = true; TestLogs.Write($"Overriding RunSettings Key: [{runSetting.Key}], New Value = [{runSetting.Value}]"); } } }); RefreshCapabilities(); }
public void PassingEmptyObjectInIsNullOrEmptyThrows() { AdditionalDriverOptions data = new AdditionalDriverOptions(); Assert.DoesNotThrow(() => Helper.IsNullOrEmpty(data), "Passing empty object should throw."); }