public override View GetView(PropertyInfo property, object o, out BindableProperty targetProperty, out IValueConverter converter) { targetProperty = Label.TextProperty; converter = new ValueConverter(); return new Label(); }
public DynamicXmlElement(XElement element, ValueConverter valueConverter, NamespaceRegistry namespaceRegistry) { _element = element; _valueConverter = valueConverter; _namespaceRegistry = namespaceRegistry; }
public void ChoseValueConverter(PropertyInfo property, ValueConverter converter) { _report .AddBindingDetail(new ValueConverterSelection{ ConverterType = converter.GetType(), PropertyName = property.Name, PropertyType = property.PropertyType }); }
public override View GetView(PropertyInfo property, object o, out BindableProperty targetProperty, out IValueConverter converter) { targetProperty = Editor.TextProperty; converter = new ValueConverter(); return new Editor { HorizontalOptions = LayoutOptions.FillAndExpand }; }
public override View GetView(PropertyInfo property, object o, out BindableProperty targetProperty, out IValueConverter converter) { targetProperty = Entry.TextProperty; converter = new ValueConverter(); return new Entry { Keyboard = Keyboard.Numeric, HorizontalOptions = LayoutOptions.FillAndExpand }; }
public void TestBasicConversion() { var converter = new ValueConverter(); Assert.That(converter.Get<int>("3"), Is.EqualTo(3)); Assert.That(converter.Get<string>(3), Is.EqualTo("3")); Assert.That(converter.Get<string>(true), Is.EqualTo("True")); Assert.That(converter.Get<int>(true), Is.EqualTo(1)); Assert.That(converter.Get<int>(false), Is.EqualTo(0)); Assert.That(converter.Get<bool>("false"), Is.EqualTo(false)); }
public ConvertibleStringValue(string value, ValueConverter valueConverter) { _value = value; _valueConverter = valueConverter; }
void ITestModule.Run() { Mouse.DefaultMoveTime = 300; Keyboard.DefaultKeyPressTime = 100; Delay.SpeedFactor = 1.00; Init(); // Step## Pre-Condition - Initial setup and Access code setup is done. Customer created with audiogram configured and Custom molds is enabled. //Report.Log(ReportLevel.Info, "Section", "Step## Pre-Condition - Initial setup and Access code setup is done. Customer created with audiogram configured and Custom molds is enabled.", new RecordItemIndex(0)); TapOnRightButton("Tap on 'Settings'"); Delay.Milliseconds(0); SwitchSettingUseMold(ValueConverter.ArgumentFromString <bool>("YesNo", "True")); Delay.Milliseconds(0); TapOnLeftButton("Press Back key"); Delay.Milliseconds(0); CreatePatient(LastName, FirstName); Delay.Milliseconds(0); SelectCustomerContinue(); Delay.Milliseconds(0); CloseApp(); Delay.Milliseconds(0); // Step## Open the app, goto List. Select the existing customer Report.Log(ReportLevel.Info, "Section", "Step## Open the app, goto List. Select the existing customer", new RecordItemIndex(7)); StartApp(); Delay.Milliseconds(0); SearchCustomer(FirstName); Delay.Milliseconds(0); SelectCustomer(LastName, FirstName); Delay.Milliseconds(0); // Step## Enter (Right), @500Hz, @1kHz, @2kHz, @4kHz.Press Done Report.Log(ReportLevel.Info, "Section", "Step## Enter (Right), @500Hz, @1kHz, @2kHz, @4kHz.Press Done", new RecordItemIndex(11)); TapEnterAudiogram(); Delay.Milliseconds(0); DrawAudiogramPoints("Right", AUPoints); Delay.Milliseconds(0); TapOnRightButton("Click on 'Done'"); Delay.Milliseconds(0); ValidateALertMessage("Do you want to enter values for the \"left\" ear side too?"); Delay.Milliseconds(0); ClickOnAlertMessage("No"); Delay.Milliseconds(0); CloseApp(); Delay.Milliseconds(0); StartApp(); Delay.Milliseconds(0); SearchCustomer(FirstName); Delay.Milliseconds(0); SelectCustomer(LastName, FirstName); Delay.Milliseconds(0); // Validation## Audiogram is saved - Recommendation should be @HI , @coupling type & @Cluster Report.Log(ReportLevel.Info, "Section", "Validation## Audiogram is saved - Recommendation should be @HI , @coupling type & @Cluster", new RecordItemIndex(21)); TapOnMonauralHI("Tap on MonauralHI"); Delay.Milliseconds(0); TapOn("Fit right ear with hearing aid"); Delay.Milliseconds(0); TapOnWithContentDesc(HIName); Delay.Milliseconds(0); SelectCouplingIfAvailable(ValueConverter.ArgumentFromString <bool>("isCouplingAvailable", isCouplingAvailable), Coupling); Delay.Milliseconds(0); ValidateMonauralHISelected(HIName, "Right"); Delay.Milliseconds(0); ValidateMonauralCouplingSelected(Coupling, "Right"); Delay.Milliseconds(0); ValidateMonauralClusterSelected(Cluster, "Right"); Delay.Milliseconds(0); // Step## Press Send data to HI and Connect to HI //Report.Log(ReportLevel.Info, "Section", "Step## Press Send data to HI and Connect to HI", new RecordItemIndex(29)); // Validation## Attention message is displayed as Selected sound profile has high amplification output. //Report.Log(ReportLevel.Info, "Section", "Validation## Attention message is displayed as Selected sound profile has high amplification output.", new RecordItemIndex(30)); TapOn("Send Data to Hearing Aid"); Delay.Milliseconds(0); ValidateALertMessage("Selected Sound Profile has high amplification output.", ValueConverter.ArgumentFromString <bool>("isAlert", isAlert)); Delay.Milliseconds(0); ClickOnAlertMessage("OK"); Delay.Milliseconds(0); try { ConnectHI(); Delay.Milliseconds(0); } catch (Exception ex) { Report.Log(ReportLevel.Warn, "Module", "(Optional Action) " + ex.Message, new RecordItemIndex(34)); } ConfirmationToneYes(); Delay.Milliseconds(0); // Step## Press Sound Comfort and Press OK //Report.Log(ReportLevel.Info, "Section", "Step## Press Sound Comfort and Press OK", new RecordItemIndex(36)); TapOn("Check Sound Comfort"); Delay.Milliseconds(0); SoundComfortOk(); Delay.Milliseconds(0); // Step## Close session. //Report.Log(ReportLevel.Info, "Section", "Step## Close session.", new RecordItemIndex(39)); CloseSession(); Delay.Milliseconds(0); SearchCustomer(FirstName); Delay.Milliseconds(0); SelectCustomer(LastName, FirstName); Delay.Milliseconds(0); // Step## Press audiogram tab and open the edit screen //Report.Log(ReportLevel.Info, "Section", "Step## Press audiogram tab and open the edit screen", new RecordItemIndex(43)); EditAudiogram(); Delay.Milliseconds(0); // Step## Enter (Left), @500Hz, @1kHz, @2kHz, @4kHz.Press Done. Report.Log(ReportLevel.Info, "Section", "Step## Enter (Left), @500Hz, @1kHz, @2kHz, @4kHz.Press Done.", new RecordItemIndex(45)); DrawAudiogramPoints("Left", AUPoints); Delay.Milliseconds(0); TapOnRightButton("Click on 'Done'"); Delay.Milliseconds(0); ContinueWithLeftEar(); Delay.Milliseconds(0); ValidateBinauralHISelected(HIName, "Right"); Delay.Milliseconds(0); ValidateBinauralCouplingSelected(Coupling, "Right"); Delay.Milliseconds(0); ValidateBinauralClusterSelected(Cluster, "Right"); Delay.Milliseconds(0); TapOnBinauralHI("Tap On BinauralHI", "Left"); Delay.Milliseconds(0); TapOnWithContentDesc(HIName); Delay.Milliseconds(0); SelectCouplingIfAvailable(ValueConverter.ArgumentFromString <bool>("isCouplingAvailable", isCouplingAvailable), Coupling); Delay.Milliseconds(0); ValidateBinauralHISelected(HIName, "Left"); Delay.Milliseconds(0); ValidateBinauralCouplingSelected(Coupling, "Left"); Delay.Milliseconds(0); ValidateBinauralClusterSelected(Cluster, "Left"); Delay.Milliseconds(0); // Step## Press Send data to HI and Connect to HI for Left side //Report.Log(ReportLevel.Info, "Section", "Step## Press Send data to HI and Connect to HI for Left side", new RecordItemIndex(58)); // Validation## warning message is displayed as Selected sound profile has high amplification output. //Report.Log(ReportLevel.Info, "Section", "Validation## warning message is displayed as Selected sound profile has high amplification output.", new RecordItemIndex(59)); SendDataToHearingAid("Left"); Delay.Milliseconds(0); ValidateALertMessage("Selected Sound Profile has high amplification output.", ValueConverter.ArgumentFromString <bool>("isAlert", isAlert)); Delay.Milliseconds(0); ClickOnAlertMessage("OK"); Delay.Milliseconds(0); ConnectHI(); Delay.Milliseconds(0); ConfirmationToneYes(); Delay.Milliseconds(0); // Step## Press Sound Comfort and Press OK //Report.Log(ReportLevel.Info, "Section", "Step## Press Sound Comfort and Press OK", new RecordItemIndex(65)); SelectPage("Check Sound Comfort"); Delay.Milliseconds(0); ClickOnAlertMessage("OK"); Delay.Milliseconds(0); SoundComfortOk(); Delay.Milliseconds(0); // Step## Press Close session //Report.Log(ReportLevel.Info, "Section", "Step## Press Close session", new RecordItemIndex(69)); CloseSession(); Delay.Milliseconds(0); // Validation## Returns to Customer list screen //Report.Log(ReportLevel.Info, "Section", "Validation## Returns to Customer list screen", new RecordItemIndex(71)); VerifyActionBarTitle("Client"); Delay.Milliseconds(0); }
void ITestModule.Run() { Mouse.DefaultMoveTime = 300; Keyboard.DefaultKeyPressTime = 100; Delay.SpeedFactor = 1.00; Init(); // Step## Pre-Condition - Initial setup and Access code setup is done. Customer created with audiogram configured Report.Log(ReportLevel.Info, "Section", "Step## Pre-Condition - Initial setup and Access code setup is done. Customer created with audiogram configured", new RecordItemIndex(0)); TapOnRightButton("Tap on 'Settings'"); Delay.Milliseconds(0); SwitchSettingUseMold(ValueConverter.ArgumentFromString <bool>("YesNo", "True")); Delay.Milliseconds(0); BackAction(); Delay.Milliseconds(0); CreatePatient(LastName, FirstName); Delay.Milliseconds(0); SelectCustomerContinue(); Delay.Milliseconds(0); CloseApp(); Delay.Milliseconds(0); // Step## Open the app, goto List. Select the existing customer Report.Log(ReportLevel.Info, "Section", "Step## Open the app, goto List. Select the existing customer", new RecordItemIndex(7)); StartApp(); Delay.Milliseconds(0); SearchCustomer(FirstName); Delay.Milliseconds(0); SelectCustomer(LastName, FirstName); Delay.Milliseconds(0); // Step## Enter (Right), @500Hz, @1kHz, @2kHz, @4kHz.Press Done Report.Log(ReportLevel.Info, "Section", "Step## Enter (Right), @500Hz, @1kHz, @2kHz, @4kHz.Press Done", new RecordItemIndex(11)); TapEnterAudiogram(); Delay.Milliseconds(0); DrawAudiogramPoints("Right", AUPoints); Delay.Milliseconds(0); TapOnRightButton("Click on 'Done'"); Delay.Milliseconds(0); ValidateALertMessage("Do you want to enter values for the \"right\" ear side too?"); Delay.Milliseconds(0); ClickOnAlertMessage("No"); Delay.Milliseconds(0); // Validation## Audiogram is saved - Recommendation should be @HI , @coupling type & @Cluster Report.Log(ReportLevel.Info, "Section", "Validation## Audiogram is saved - Recommendation should be @HI , @coupling type & @Cluster", new RecordItemIndex(17)); ValidateMonauralHISelected(HIName, "Right"); Delay.Milliseconds(0); ValidateMonauralCouplingSelected(Coupling, "Right"); Delay.Milliseconds(0); ValidateMonauralClusterSelected(Cluster, "Right"); Delay.Milliseconds(0); // Step## Press Send data to HI and Connect to HI Report.Log(ReportLevel.Info, "Section", "Step## Press Send data to HI and Connect to HI", new RecordItemIndex(21)); // Validation## warning message is displayed as Selected sound profile has high amplification output. Report.Log(ReportLevel.Info, "Section", "Validation## warning message is displayed as Selected sound profile has high amplification output.", new RecordItemIndex(22)); TapOn("Send Data to Hearing Aid"); Delay.Milliseconds(0); ValidateALertMessage("Selected Sound Profile has high amplification output."); Delay.Milliseconds(0); ClickOnAlertMessage("OK"); Delay.Milliseconds(0); ConnectHI(); Delay.Milliseconds(0); // Step## Press Sound Comfort and Press OK Report.Log(ReportLevel.Info, "Section", "Step## Press Sound Comfort and Press OK", new RecordItemIndex(27)); TapOn("Check Sound Comfort"); Delay.Milliseconds(0); SoundComfortOk(); Delay.Milliseconds(0); // Step## Close session. Report.Log(ReportLevel.Info, "Section", "Step## Close session.", new RecordItemIndex(30)); CloseSession(); Delay.Milliseconds(0); // Step## Reselect same customer Report.Log(ReportLevel.Info, "Section", "Step## Reselect same customer", new RecordItemIndex(32)); SearchCustomer(FirstName); Delay.Milliseconds(0); SelectCustomer(LastName, FirstName); Delay.Milliseconds(0); // Step## Press audiogram tab and open the edit screen Report.Log(ReportLevel.Info, "Section", "Step## Press audiogram tab and open the edit screen", new RecordItemIndex(35)); EditAudiogram(); Delay.Milliseconds(0); // Step## Enter (Left), @500Hz, @1kHz, @2kHz, @4kHz.Press Done. Report.Log(ReportLevel.Info, "Section", "Step## Enter (Left), @500Hz, @1kHz, @2kHz, @4kHz.Press Done.", new RecordItemIndex(37)); DrawAudiogramPoints("Left", AUPoints); Delay.Milliseconds(0); TapOnRightButton("Click on 'Done'"); Delay.Milliseconds(0); // Validation## Audiogram is saved and Recommendation is given @HI, @Coupling type & @Cluster Report.Log(ReportLevel.Info, "Section", "Validation## Audiogram is saved and Recommendation is given @HI, @Coupling type & @Cluster", new RecordItemIndex(40)); ValidateMonauralHISelected(HIName, "Right"); Delay.Milliseconds(0); ValidateMonauralCouplingSelected(Coupling, "Right"); Delay.Milliseconds(0); ValidateMonauralClusterSelected(Cluster, "Right"); Delay.Milliseconds(0); // Step## Check the cluster recommended in the overview screen and the cluster Highlighted in the sound profile screen Report.Log(ReportLevel.Info, "Section", "Step## Check the cluster recommended in the overview screen and the cluster Highlighted in the sound profile screen", new RecordItemIndex(44)); // Validation## Should be the same bearing-"Suitable" tag and marked as the current selection Report.Log(ReportLevel.Info, "Section", "Validation## Should be the same bearing-\"Suitable\" tag and marked as the current selection", new RecordItemIndex(45)); TapOn(HIName); Delay.Milliseconds(0); TapOn("Fit right ear with hearing aid"); Delay.Milliseconds(0); ValidateSuitableHISelected(HIName, "Right"); Delay.Milliseconds(0); BackAction(); Delay.Milliseconds(0); BackAction(); Delay.Milliseconds(0); ContinueWithLeftEar(); Delay.Milliseconds(0); // Step## Press Send data to HI and Connect to HI for Left side Report.Log(ReportLevel.Info, "Section", "Step## Press Send data to HI and Connect to HI for Left side", new RecordItemIndex(52)); // Validation## warning message is displayed as Selected sound profile has high amplification output. Report.Log(ReportLevel.Info, "Section", "Validation## warning message is displayed as Selected sound profile has high amplification output.", new RecordItemIndex(53)); SendDataToHearingAid("Left"); Delay.Milliseconds(0); ValidateALertMessage("Selected Sound Profile has high amplification output."); Delay.Milliseconds(0); ClickOnAlertMessage("OK"); Delay.Milliseconds(0); ConnectHI(); Delay.Milliseconds(0); SelectPage("Check Sound Comfort"); Delay.Milliseconds(0); // Step## Press Sound Comfort and Press OK Report.Log(ReportLevel.Info, "Section", "Step## Press Sound Comfort and Press OK", new RecordItemIndex(59)); SoundComfortOk(); Delay.Milliseconds(0); // Step## Press Close session Report.Log(ReportLevel.Info, "Section", "Step## Press Close session", new RecordItemIndex(61)); CloseSession(); Delay.Milliseconds(0); // Validation## Returns to Customer list screen Report.Log(ReportLevel.Info, "Section", "Validation## Returns to Customer list screen", new RecordItemIndex(63)); VerifyActionBarTitle("Client"); Delay.Milliseconds(0); }
/// <summary> /// This is an internal API that supports the Entity Framework Core infrastructure and not subject to /// the same compatibility standards as public APIs. It may be changed or removed without notice in /// any release. You should only use it directly in your code with extreme caution and knowing that /// doing so can result in application failures when updating to a new Entity Framework Core release. /// </summary> public override CoreTypeMapping Clone(ValueConverter converter) => new CosmosTypeMapping(Parameters.WithComposedConverter(converter));
void ITestModule.Run() { Mouse.DefaultMoveTime = 300; Keyboard.DefaultKeyPressTime = 100; Delay.SpeedFactor = 1.00; Init(); TapOnHome(); Delay.Milliseconds(0); TapOn("My Hearing Care Professional"); Delay.Milliseconds(0); SwipePageVerticle(ValueConverter.ArgumentFromString <int>("count", "3"), ValueConverter.ArgumentFromString <double>("startY", "0.6"), ValueConverter.ArgumentFromString <double>("endY", "0.2"), ValueConverter.ArgumentFromString <bool>("takeScreenshot", "True")); Delay.Milliseconds(0); ValidateContents("Opening Hours;PM - ;Mo;Tu;We;Th;Fr"); Delay.Milliseconds(0); }
public override CoreTypeMapping Clone(ValueConverter converter) => new OracleDoubleTypeMapping(StoreType, ComposeConverter(converter), DbType);
/// <summary> /// Loading <see cref="IEnumerable{T}"/> from specified excel file. /// /// </summary> /// <typeparam name="T">The type of the model.</typeparam> /// <param name="excelFile">The excel file.</param> /// <param name="startRow">The row to start read.</param> /// <param name="sheetIndex">Which sheet to read.</param> /// <param name="valueConverter">The cell value convert.</param> /// <returns>The <see cref="IEnumerable{T}"/> loading from excel.</returns> public static IEnumerable <T> Load <T>(string excelFile, int startRow = 1, int sheetIndex = 0, ValueConverter valueConverter = null) where T : class, new() { if (!File.Exists(excelFile)) { throw new FileNotFoundException(); } var workbook = InitializeWorkbook(excelFile); // currently, only handle sheet one (or call side using foreach to support multiple sheet) var sheet = workbook.GetSheetAt(sheetIndex); // get the writable properties var properties = typeof(T).GetProperties(BindingFlags.Public | BindingFlags.Instance | BindingFlags.SetProperty); bool fluentConfigEnabled = false; // get the fluent config if (Excel.Setting.FluentConfigs.TryGetValue(typeof(T), out var fluentConfig)) { fluentConfigEnabled = true; } var cellConfigs = new CellConfig[properties.Length]; for (var j = 0; j < properties.Length; j++) { var property = properties[j]; if (fluentConfigEnabled && fluentConfig.PropertyConfigs.TryGetValue(property, out var pc)) { // fluent configure first(Hight Priority) cellConfigs[j] = pc.CellConfig; } else { var attrs = property.GetCustomAttributes(typeof(ColumnAttribute), true) as ColumnAttribute[]; if (attrs != null && attrs.Length > 0) { cellConfigs[j] = attrs[0].CellConfig; } else { cellConfigs[j] = null; } } } var statistics = new List <StatisticsConfig>(); if (fluentConfigEnabled) { statistics.AddRange(fluentConfig.StatisticsConfigs); } else { var attributes = typeof(T).GetCustomAttributes(typeof(StatisticsAttribute), true) as StatisticsAttribute[]; if (attributes != null && attributes.Length > 0) { foreach (var item in attributes) { statistics.Add(item.StatisticsConfig); } } } var list = new List <T>(); int idx = 0; IRow headerRow = null; // get the physical rows var rows = sheet.GetRowEnumerator(); while (rows.MoveNext()) { var row = rows.Current as IRow; if (idx == 0) { headerRow = row; } idx++; if (row.RowNum < startRow) { continue; } var item = new T(); var itemIsValid = true; for (int i = 0; i < properties.Length; i++) { var prop = properties[i]; int index = i; var config = cellConfigs[i]; if (config != null) { index = config.Index; // Try to autodiscover index from title and cache if (index < 0 && config.AutoIndex && !string.IsNullOrEmpty(config.Title)) { foreach (var cell in headerRow.Cells) { if (!string.IsNullOrEmpty(cell.StringCellValue)) { if (cell.StringCellValue.Equals(config.Title, StringComparison.InvariantCultureIgnoreCase)) { index = cell.ColumnIndex; // cache config.Index = index; break; } } } } // check again if (index < 0) { throw new ApplicationException("Please set the 'index' or 'autoIndex' by fluent api or attributes"); } } var value = row.GetCellValue(index); if (valueConverter != null) { value = valueConverter(row.RowNum, index, value); } if (value == null) { continue; } // check whether is statics row if (idx > startRow + 1 && index == 0 && statistics.Any(s => s.Name.Equals(value.ToString(), StringComparison.InvariantCultureIgnoreCase))) { var st = statistics.FirstOrDefault(s => s.Name.Equals(value.ToString(), StringComparison.InvariantCultureIgnoreCase)); var formula = row.GetCellValue(st.Columns.First()).ToString(); if (formula.StartsWith(st.Formula, StringComparison.InvariantCultureIgnoreCase)) { itemIsValid = false; break; } } // property type var propType = Nullable.GetUnderlyingType(prop.PropertyType) ?? prop.PropertyType; var safeValue = Convert.ChangeType(value, propType, CultureInfo.CurrentCulture); prop.SetValue(item, safeValue, null); } if (itemIsValid) { list.Add(item); } } return(list); }
public override object ParseValue(object value) => ValueConverter.ConvertTo(value, typeof(DateTime));
public bool TryCreateInstance <T>(IEnumerable <T> values, ValueConverter <T> converter, out object result) { return(OriginalAlienType.TryCreateInstance(values, converter, out result)); }
/// <summary> /// This API supports the Entity Framework Core infrastructure and is not intended to be used /// directly from your code. This API may change or be removed in future releases. /// </summary> protected SqlServerGeometryTypeMapping( RelationalTypeMappingParameters parameters, ValueConverter <TGeometry, SqlBytes> converter) : base(parameters, converter) { }
public IModifierBuilder WithValueConverter(ValueConverter converter) { return(new ModifierBuilder(Entries, StatConverter, converter)); }
void ITestModule.Run() { Mouse.DefaultMoveTime = 300; Keyboard.DefaultKeyPressTime = 100; Delay.SpeedFactor = 1.00; Init(); // Pre-condition: Initial setup is done. Report.Log(ReportLevel.Info, "Section", "Pre-condition: Initial setup is done.", new RecordItemIndex(0)); // Step## Customer configured with audiogram exists. Enabled Custom molds Report.Log(ReportLevel.Info, "Section", "Step## Customer configured with audiogram exists. Enabled Custom molds", new RecordItemIndex(1)); TapOnRightButton("Tap on 'Settings'"); Delay.Milliseconds(0); SwitchSettingUseMold(ValueConverter.ArgumentFromString<bool>("YesNo", "True")); Delay.Milliseconds(0); TapOnLeftButton("Press Back key"); Delay.Milliseconds(0); CreatePatient("Higher", "Cluster"); Delay.Milliseconds(0); SelectCustomerContinue(); Delay.Milliseconds(0); CloseApp(); Delay.Milliseconds(0); // Step## Open the app and select the customer from the list Report.Log(ReportLevel.Info, "Section", "Step## Open the app and select the customer from the list", new RecordItemIndex(8)); StartApp(); Delay.Milliseconds(0); SearchCustomer("Cluster"); Delay.Milliseconds(0); SelectCustomer("Higher", "Cluster"); Delay.Milliseconds(0); // Step## Enter audiogram - Right 80 dB, 80 dB, 80 dB, 80 dB for the required frequencies Report.Log(ReportLevel.Info, "Section", "Step## Enter audiogram - Right 80 dB, 80 dB, 80 dB, 80 dB for the required frequencies", new RecordItemIndex(12)); TapEnterAudiogram(); Delay.Milliseconds(0); DrawAudiogramPoints("Right", "500,80;1000,80;2000,80;4000,80"); Delay.Milliseconds(0); TapOnRightButton("Click on 'Done'"); Delay.Milliseconds(0); ValidateALertMessage("Do you want to enter values for the \"right\" ear side too?"); Delay.Milliseconds(0); ClickOnAlertMessage("No"); Delay.Milliseconds(0); // Validation## Overview screen is displayed with Send data to Hearing Aid step highlighted. Run SP & Custom Mold & P3 cluster is recommended Report.Log(ReportLevel.Info, "Section", "Validation## Overview screen is displayed with Send data to Hearing Aid step highlighted. Run SP & Custom Mold & P3 cluster is recommended", new RecordItemIndex(18)); ValidateMonauralHISelected(H2, "Right"); Delay.Milliseconds(0); ValidateMonauralCouplingSelected("Custom Mold", "Right"); Delay.Milliseconds(0); ValidateMonauralClusterSelected("P3", "Right"); Delay.Milliseconds(0); // Step## Select the cluster tab and choose a Cluster higher than the recommended cluster(i.e. P4) Report.Log(ReportLevel.Info, "Section", "Step## Select the cluster tab and choose a Cluster higher than the recommended cluster(i.e. P4)", new RecordItemIndex(22)); TapOn("P3"); Delay.Milliseconds(0); TapOn("P4"); Delay.Milliseconds(0); // Validation## The new cluster is selected and returns to overview screen Report.Log(ReportLevel.Info, "Section", "Validation## The new cluster is selected and returns to overview screen", new RecordItemIndex(25)); ValidateMonauralClusterSelected("P4", "Right"); Delay.Milliseconds(0); VerifyActionBarTitle("Higher, Cluster"); Delay.Milliseconds(0); // Step## Press Send data to HI Report.Log(ReportLevel.Info, "Section", "Step## Press Send data to HI", new RecordItemIndex(28)); // Validation## warning message is displayed as Selected sound profile has high amplification output. Report.Log(ReportLevel.Info, "Section", "Validation## warning message is displayed as Selected sound profile has high amplification output.", new RecordItemIndex(29)); TapOn("Send Data to Hearing Aid"); Delay.Milliseconds(0); ValidateALertMessage("Selected Sound Profile has high amplification output."); Delay.Milliseconds(0); // Step## Click on OK in the pop-up appeared and Tap on Connect HI Report.Log(ReportLevel.Info, "Section", "Step## Click on OK in the pop-up appeared and Tap on Connect HI", new RecordItemIndex(32)); // Validation## Tapping yes in connect confirmation should show HI is connected successfully. Report.Log(ReportLevel.Info, "Section", "Validation## Tapping yes in connect confirmation should show HI is connected successfully.", new RecordItemIndex(33)); ClickOnAlertMessage("OK"); Delay.Milliseconds(0); try { ConnectHI(); Delay.Milliseconds(0); } catch(Exception ex) { Report.Log(ReportLevel.Warn, "Module", "(Optional Action) " + ex.Message, new RecordItemIndex(35)); } ConfirmationToneYes(); Delay.Milliseconds(0); // Step## Press Check Sound Comfort Report.Log(ReportLevel.Info, "Section", "Step## Press Check Sound Comfort", new RecordItemIndex(37)); TapOn("Check Sound Comfort"); Delay.Milliseconds(0); // Validation## Sound coumfort page displayed Report.Log(ReportLevel.Info, "Section", "Validation## Sound coumfort page displayed", new RecordItemIndex(39)); VerifyActionBarTitle("Sound Comfort"); Delay.Milliseconds(0); // Step## Select the cluster tab and choose a sound profile higher than the recommended cluster.Ex : P5 Report.Log(ReportLevel.Info, "Section", "Step## Select the cluster tab and choose a sound profile higher than the recommended cluster.Ex : P5", new RecordItemIndex(41)); TapOnWithContentDesc("P4"); Delay.Milliseconds(0); TapOn("P5"); Delay.Milliseconds(0); ValidateALertMessage("Selected Sound Profile provides higher amplification than the recommended Profile. Are you sure of your selection?"); Delay.Milliseconds(0); ValidateContents("OK;Reselect"); Delay.Milliseconds(0); ClickOnAlertMessage("OK"); Delay.Milliseconds(0); ValidateMonauralClusterSelected("P5", "Right"); Delay.Milliseconds(0); LogSnapshot(); Delay.Milliseconds(0); // Step##Press OK and Close Session Report.Log(ReportLevel.Info, "Section", "Step##Press OK and Close Session", new RecordItemIndex(49)); SoundComfortOk(); Delay.Milliseconds(0); CloseSession(); Delay.Milliseconds(0); // Validation## Back to Client page Report.Log(ReportLevel.Info, "Section", "Validation## Back to Client page", new RecordItemIndex(52)); VerifyActionBarTitle("Client"); Delay.Milliseconds(0); }
/// <summary> /// This API supports the Entity Framework Core infrastructure and is not intended to be used /// directly from your code. This API may change or be removed in future releases. /// </summary> public override CoreTypeMapping Clone(ValueConverter converter) => new SqlServerDateTimeTypeMapping(StoreType, ComposeConverter(converter), DbType);
public static TokenValue ConvertFrom(ICustomData value) { return((TokenValue)ValueConverter <TokenValue> .ConvertFrom(value)); }
public static void DefineConverter(ValueConverter converter) { foreach (Type source in converter.Source) Shared.m_converter.Add(new Executive.ConverterKey(source, converter.Destination), converter); }
void ITestModule.Run() { Mouse.DefaultMoveTime = 300; Keyboard.DefaultKeyPressTime = 100; Delay.SpeedFactor = 1.00; Init(); // Step## Pre-Condition - Initial setup and Access code setup is done. Customer created with audiogram configured Report.Log(ReportLevel.Info, "Section", "Step## Pre-Condition - Initial setup and Access code setup is done. Customer created with audiogram configured", new RecordItemIndex(0)); TapOnRightButton("Tap on 'Settings'"); Delay.Milliseconds(0); SwitchSettingUseMold(ValueConverter.ArgumentFromString <bool>("YesNo", "True")); Delay.Milliseconds(0); TapOnLeftButton("Press the Back key"); Delay.Milliseconds(0); CreatePatient("CouplingSelection", "Discard"); Delay.Milliseconds(0); SelectCustomerContinue(); Delay.Milliseconds(0); CloseApp(); Delay.Milliseconds(0); // Step## Open the app, goto List. Select the existing customer //Report.Log(ReportLevel.Info, "Section", "Step## Open the app, goto List. Select the existing customer", new RecordItemIndex(7)); StartApp(); Delay.Milliseconds(0); SearchCustomer("Discard"); Delay.Milliseconds(0); SelectCustomer("CouplingSelection", "Discard"); Delay.Milliseconds(0); // Validation##Opens the overview screen with Enter Audiogram step highlighted Report.Log(ReportLevel.Info, "Section", "Validation##Opens the overview screen with Enter Audiogram step highlighted", new RecordItemIndex(11)); VerifyActionBarTitle("CouplingSelection, Discard"); Delay.Milliseconds(0); VerifyTextHighlighted("Enter Audiogram"); Delay.Milliseconds(0); // Step## Enter (Right), @500Hz, @1kHz, @2kHz, @4kHz.Press Done Report.Log(ReportLevel.Info, "Section", "Step## Enter (Right), @500Hz, @1kHz, @2kHz, @4kHz.Press Done", new RecordItemIndex(14)); TapOn("Enter Audiogram"); Delay.Milliseconds(0); DrawAudiogramPoints("Right", "500,90;1000,90;2000,90;4000,90"); Delay.Milliseconds(0); TapOnRightButton("Click on 'Done'"); Delay.Milliseconds(0); // Validation## Popup Appears as "Do you want to enter values for left ear side too?" Report.Log(ReportLevel.Info, "Section", "Validation## Popup Appears as \"Do you want to enter values for left ear side too?\"", new RecordItemIndex(18)); ValidateALertMessage("Do you want to enter values for the \"left\" ear side too?"); Delay.Milliseconds(0); // Step## Press No when popup appears. Report.Log(ReportLevel.Info, "Section", "Step## Press No when popup appears.", new RecordItemIndex(20)); ClickOnAlertMessage("No"); Delay.Milliseconds(0); // Validation## Returns to the overview screen with HI-Type : Run SP, coupling : Custom mold and Cluster : P5 and Send data to HI Report.Log(ReportLevel.Info, "Section", "Validation## Returns to the overview screen with HI-Type : Run SP, coupling : Custom mold and Cluster : P5 and Send data to HI", new RecordItemIndex(22)); ValidateMonauralHISelected(H2, "Right"); Delay.Milliseconds(0); ValidateMonauralCouplingSelected("Custom Mold", "Right"); Delay.Milliseconds(0); ValidateMonauralClusterSelected("P5", "Right"); Delay.Milliseconds(0); VerifyTextHighlighted("Send Data to Hearing Aid"); Delay.Milliseconds(0); // Step## Reselect HI to Run SP and select coupling to tip Report.Log(ReportLevel.Info, "Section", "Step## Reselect HI to Run SP and select coupling to tip", new RecordItemIndex(27)); TapOn(H2); Delay.Milliseconds(0); TapOn("Fit right ear with hearing aid"); Delay.Milliseconds(0); TapOnWithContentDesc(H2); Delay.Milliseconds(0); TapOn("Tip"); Delay.Milliseconds(0); // Validation## Coupling type should be changed to tip in overview screen and cluster should not be changed as HI is not changed. Report.Log(ReportLevel.Info, "Section", "Validation## Coupling type should be changed to tip in overview screen and cluster should not be changed as HI is not changed.", new RecordItemIndex(32)); ValidateMonauralCouplingSelected("Tip", "Right"); Delay.Milliseconds(0); ValidateMonauralClusterSelected("P5", "Right"); Delay.Milliseconds(0); }
void ITestModule.Run() { Mouse.DefaultMoveTime = 300; Keyboard.DefaultKeyPressTime = 20; Delay.SpeedFactor = 1.00; Init(); Report.Log(ReportLevel.Info, "Mouse", "Mouse Left Click item 'ContinuousIntegrationWithRanorexGit.SimgeDurumunaKuecuelt' at 10;21.", repo.ContinuousIntegrationWithRanorexGit.SimgeDurumunaKuecueltInfo, new RecordItemIndex(0)); repo.ContinuousIntegrationWithRanorexGit.SimgeDurumunaKuecuelt.Click("10;21"); Delay.Milliseconds(0); Ranorex.AutomationHelpers.UserCodeCollections.EmailLibrary.SendEmail("", "", "", "", "", "", ValueConverter.ArgumentFromString <int>("serverPort", "0"), ValueConverter.ArgumentFromString <bool>("useSSL", "False"), "", ""); Delay.Milliseconds(0); }
protected override void OnModelCreating(ModelBuilder builder) { base.OnModelCreating(builder); //!Define How Entities Are Mapped Here //Dimension inheritance mapping builder.Entity <ContinuousDimensionInterval>().HasBaseType <Dimension>(); builder.Entity <DiscreteDimensionInterval>().HasBaseType <Dimension>(); builder.Entity <SingleValueDimension>().HasBaseType <Dimension>(); builder.Entity <Algorithm>().HasMany(a => a.inputValues).WithOne(); builder.Entity <InputValue>().Property <long>("inputId"); builder.Entity <InputValue>().HasOne(iv => iv.input).WithOne().HasForeignKey <InputValue>("inputId"); //Algorithm inheritance mapping builder.Entity <WidthPercentageAlgorithm>().HasBaseType <Algorithm>(); builder.Entity <SameMaterialAndFinishAlgorithm>().HasBaseType <Algorithm>(); //PriceTableEntry inheritance mapping /* builder.Entity<MaterialPriceTableEntry>().HasBaseType<PriceTableEntry>(); * builder.Entity<FinishPriceTableEntry>().HasBaseType<PriceTableEntry>(); */ builder.Entity <DiscreteDimensionInterval>().HasMany(i => i.values).WithOne(); //one-to-many relationship builder.Entity <Measurement>().Property <long>("heightDimensionId"); builder.Entity <Measurement>().Property <long>("widthDimensionId"); builder.Entity <Measurement>().Property <long>("depthDimensionId"); builder.Entity <Measurement>().HasOne(m => m.height).WithOne().HasForeignKey <Measurement>("heightDimensionId").OnDelete(DeleteBehavior.Cascade); //one-to-one relationship builder.Entity <Measurement>().HasOne(m => m.width).WithOne().HasForeignKey <Dimension>("depthDimensionId").OnDelete(DeleteBehavior.Cascade); //one-to-one relationship builder.Entity <Measurement>().HasOne(m => m.depth).WithOne().HasForeignKey <Dimension>("widthDimensionId").OnDelete(DeleteBehavior.Cascade); //one-to-one relationship builder.Entity <Measurement>().HasMany(m => m.restrictions).WithOne().OnDelete(DeleteBehavior.Cascade); //one-to-many relationship //Configure many-to-one relationship between parent and child ProductCategory builder.Entity <ProductCategory>().HasOne(c => c.parent).WithMany().HasForeignKey(c => c.parentId); builder.Entity <Material>().HasMany(m => m.Colors).WithOne().OnDelete(DeleteBehavior.Cascade); //one-to-many relationship builder.Entity <Material>().HasMany(m => m.Finishes).WithOne().OnDelete(DeleteBehavior.Cascade); //one-to-many relationship //Configure many-to-many relationship between Product and Material builder.Entity <ProductMaterial>().HasKey(pm => new { pm.productId, pm.materialId }); builder.Entity <ProductMaterial>().HasOne(pm => pm.product).WithMany(p => p.productMaterials).HasForeignKey(pm => pm.productId); builder.Entity <ProductMaterial>().HasOne(pm => pm.material).WithMany().HasForeignKey(pm => pm.materialId); builder.Entity <ProductMaterial>().HasMany(pm => pm.restrictions).WithOne().OnDelete(DeleteBehavior.Cascade); //TODO: remove join class, if possible //NOTE: This "join class" is only here as a workaround for now builder.Entity <ProductMeasurement>().HasKey(pm => new { pm.productId, pm.measurementId }); builder.Entity <ProductMeasurement>().HasOne(pm => pm.product).WithMany(p => p.productMeasurements).HasForeignKey(pm => pm.productId); builder.Entity <ProductMeasurement>().HasOne(pm => pm.measurement); builder.Entity <Product>().HasOne(p => p.productCategory).WithMany(); //many-to-one relationship builder.Entity <Product>().OwnsOne(p => p.slotWidths); //embedded ProductSlotWidths builder.Entity <Component>().HasKey(c => new { c.fatherProductId, c.complementaryProductId }); builder.Entity <Component>().HasOne(c => c.fatherProduct).WithMany(p => p.components).HasForeignKey(cp => cp.fatherProductId); builder.Entity <Component>().HasOne(c => c.complementaryProduct).WithMany().HasForeignKey(cp => cp.complementaryProductId); builder.Entity <Component>().HasMany(c => c.restrictions).WithOne().OnDelete(DeleteBehavior.Cascade); builder.Entity <CustomizedProduct>().Property <long>("customizedDimensionsId"); builder.Entity <CustomizedProduct>().Property <long?>("customizedMaterialId"); builder.Entity <CustomizedProduct>().HasOne(cp => cp.product); //one-to-one relationship builder.Entity <CustomizedProduct>().HasOne(cp => cp.customizedDimensions).WithOne().HasForeignKey <CustomizedProduct>("customizedDimensionsId").OnDelete(DeleteBehavior.Cascade); //one-to-one relationship builder.Entity <CustomizedProduct>().HasOne(cp => cp.customizedMaterial).WithOne().HasForeignKey <CustomizedProduct>("customizedMaterialId").OnDelete(DeleteBehavior.Cascade); builder.Entity <CustomizedProduct>().HasMany(cp => cp.slots).WithOne().OnDelete(DeleteBehavior.Cascade); //one-to-many relationship builder.Entity <CustomizedMaterial>().Property <long?>("finishId"); builder.Entity <CustomizedMaterial>().Property <long?>("colorId"); builder.Entity <CustomizedMaterial>().HasOne(cm => cm.material).WithMany(); builder.Entity <CustomizedMaterial>().HasOne(cm => cm.finish).WithOne().HasForeignKey <CustomizedMaterial>("finishId").OnDelete(DeleteBehavior.Cascade); builder.Entity <CustomizedMaterial>().HasOne(cm => cm.color).WithOne().HasForeignKey <CustomizedMaterial>("colorId").OnDelete(DeleteBehavior.Cascade); builder.Entity <Slot>().Property <long>("customizedDimensionsId"); builder.Entity <Slot>().HasOne(s => s.slotDimensions).WithOne().HasForeignKey <Slot>("customizedDimensionsId").OnDelete(DeleteBehavior.Cascade); //one-to-one relationship builder.Entity <Slot>().HasMany(s => s.customizedProducts).WithOne(cp => cp.insertedInSlot).HasForeignKey(cp => cp.insertedInSlotId).OnDelete(DeleteBehavior.Cascade); //one-to-many relationship //Compound key for CollectionProduct builder.Entity <CollectionProduct>().HasKey(cp => new { cp.customizedProductId, cp.customizedProductCollectionId }); //Many-to-many relationship between CustomizedProductCollection and CustomizedProduct builder.Entity <CollectionProduct>().HasOne(cp => cp.customizedProductCollection) .WithMany(c => c.collectionProducts).HasForeignKey(cp => cp.customizedProductCollectionId); builder.Entity <CollectionProduct>().HasOne(cp => cp.customizedProduct).WithMany().HasForeignKey(cp => cp.customizedProductId); //Compound key for CatalogueCollectionProduct //Many-to-Many relationship between CatalogueCollection and CustomizedProduct builder.Entity <CatalogueCollectionProduct>().HasKey(ccp => new { ccp.commercialCatalogueId, ccp.customizedProductCollectionId, ccp.customizedProductId }); builder.Entity <CatalogueCollectionProduct>().HasOne(ccp => ccp.customizedProduct) .WithMany().HasForeignKey(ccp => ccp.customizedProductId); builder.Entity <CatalogueCollectionProduct>().HasOne(ccp => ccp.catalogueCollection) .WithMany(cc => cc.catalogueCollectionProducts).HasForeignKey(ccp => new { ccp.commercialCatalogueId, ccp.customizedProductCollectionId }); builder.Entity <CommercialCatalogue>().HasMany(catalogue => catalogue.catalogueCollectionList) .WithOne().HasForeignKey(catalogueCollection => catalogueCollection.commercialCatalogueId); builder.Entity <CatalogueCollection>().HasKey(cc => new { cc.commercialCatalogueId, cc.customizedProductCollectionId }); builder.Entity <CatalogueCollection>().HasOne(catalogueCollection => catalogueCollection.customizedProductCollection) .WithMany().HasForeignKey(cc => cc.customizedProductCollectionId); builder.Entity <CatalogueCollection>().HasMany(catalogueCollection => catalogueCollection.catalogueCollectionProducts); //TimePeriod conversion mapping var localDateTimeConverter = new ValueConverter <LocalDateTime, DateTime>(v => v.ToDateTimeUnspecified(), v => LocalDateTime.FromDateTime(v)); builder.Entity <TimePeriod>().Property(tp => tp.startingDate).HasConversion(localDateTimeConverter); builder.Entity <TimePeriod>().Property(tp => tp.endingDate).HasConversion(localDateTimeConverter); // Material Price Table Entries Mapping builder.Entity <MaterialPriceTableEntry>().HasKey(mpte => new { mpte.Id }); builder.Entity <MaterialPriceTableEntry>().HasOne(mpte => mpte.entity).WithMany(); builder.Entity <MaterialPriceTableEntry>().OwnsOne(mpte => mpte.price); builder.Entity <MaterialPriceTableEntry>().HasOne(mpte => mpte.timePeriod); // Finish Price Table Entries Mapping builder.Entity <FinishPriceTableEntry>().HasKey(fpte => new { fpte.Id }); builder.Entity <FinishPriceTableEntry>().HasOne(fpte => fpte.entity); builder.Entity <FinishPriceTableEntry>().OwnsOne(fpte => fpte.price); builder.Entity <FinishPriceTableEntry>().HasOne(fpte => fpte.timePeriod); }
void ITestModule.Run() { Mouse.DefaultMoveTime = 300; Keyboard.DefaultKeyPressTime = 100; Delay.SpeedFactor = 1.00; Init(); // Step## Pre-Condition - Initial setup and Access code setup is done.Customer created with audiogram configured with monaural audiogram(Right) -Prefilled recommendation done Report.Log(ReportLevel.Info, "Section", "Step## Pre-Condition - Initial setup and Access code setup is done.Customer created with audiogram configured with monaural audiogram(Right) -Prefilled recommendation done", new RecordItemIndex(0)); TapOnSettings("Tap on \"Settings\""); Delay.Milliseconds(0); SwitchSettingUseMold(ValueConverter.ArgumentFromString <bool>("YesNo", "True")); Delay.Milliseconds(0); CreatePatient("OverRiding", "Recommendation"); Delay.Milliseconds(0); SelectCustomerContinue(); Delay.Milliseconds(0); TapOn("Enter Audiogram"); Delay.Milliseconds(0); DrawAudiogramPoints("Right", "500,60;1000,65;2000,85;4000,90"); Delay.Milliseconds(0); TabTapOnRightButton("Tap on 'Done'"); Delay.Milliseconds(0); ValidateALertMessage("Do you want to enter values for the \"left\" ear side too?"); Delay.Milliseconds(0); ClickOnAlertMessage("No"); Delay.Milliseconds(0); TapOn("Send Data to Hearing Aid"); Delay.Milliseconds(0); ValidateALertMessage("Selected Sound Profile has high amplification output."); Delay.Milliseconds(0); ClickOnAlertMessage("OK"); Delay.Milliseconds(0); ConnectHI(); Delay.Milliseconds(0); ClickOnAlertMessage("OK"); Delay.Milliseconds(0); TabConfirmationToneYes(); Delay.Milliseconds(0); ClickOnAlertMessage("OK"); Delay.Milliseconds(0); TapOn("Check Sound Comfort"); Delay.Milliseconds(0); SoundComfortOk(); Delay.Milliseconds(0); TabVerifyActionBarDetailTitle("Session Completed"); Delay.Milliseconds(0); CloseSession(); Delay.Milliseconds(0); VerifyActionBarTitle("Client List"); Delay.Milliseconds(0); CloseApp(); Delay.Milliseconds(0); // Step## Open the App and go to List, Select the customer //Report.Log(ReportLevel.Info, "Section", "Step## Open the App and go to List, Select the customer", new RecordItemIndex(23)); StartApp(); Delay.Milliseconds(0); SearchCustomer("Recommendation"); Delay.Milliseconds(0); SelectCustomer("OverRiding", "Recommendation"); Delay.Milliseconds(0); // Validation## Overview screen is displayed for the selected customer Report.Log(ReportLevel.Info, "Section", "Validation## Overview screen is displayed for the selected customer", new RecordItemIndex(27)); VerifyActionBarTitle("OverRiding, Recommendation"); Delay.Milliseconds(0); // Step## Select the HI tab -Select right ear Report.Log(ReportLevel.Info, "Section", "Step## Select the HI tab -Select right ear", new RecordItemIndex(29)); TapOn(H1); Delay.Milliseconds(0); TapOn("Fit right ear with hearing aid"); Delay.Milliseconds(0); // Validation## HI screen is opened with list of available HI's- CIC, ITC Run P, Run SP and recommended HI is displayed. Report.Log(ReportLevel.Info, "Section", "Validation## HI screen is opened with list of available HI's- CIC, ITC Run P, Run SP and recommended HI is displayed.", new RecordItemIndex(32)); ValidateContents("Run Click CIC;Run Click ITC;Run P;Run SP"); Delay.Milliseconds(0); ValidateRecommendedHI(H1, "Right"); Delay.Milliseconds(0); // Step## Select the HI other than recommended Report.Log(ReportLevel.Info, "Section", "Step## Select the HI other than recommended", new RecordItemIndex(35)); TapOnWithContentDesc(H2); Delay.Milliseconds(0); // Validation## Coupling screen is displayed with recommendation based on HI selected(i.e Tip for Run P) Report.Log(ReportLevel.Info, "Section", "Validation## Coupling screen is displayed with recommendation based on HI selected(i.e Tip for Run P)", new RecordItemIndex(37)); ValidateRecommendedCoupling("Tip", "Right"); Delay.Milliseconds(0); // Step## Select Coupling Type other than recommended Report.Log(ReportLevel.Info, "Section", "Step## Select Coupling Type other than recommended", new RecordItemIndex(39)); TapOn("Custom Mold"); Delay.Milliseconds(0); // Validation## Automatically directs the overview screen with the corresponding new selections of -HI,Coupling type and recommended cluster is displayed. Report.Log(ReportLevel.Info, "Section", "Validation## Automatically directs the overview screen with the corresponding new selections of -HI,Coupling type and recommended cluster is displayed.", new RecordItemIndex(41)); VerifyActionBarTitle("OverRiding, Recommendation"); Delay.Milliseconds(0); ValidateMonauralHISelected(H2, ""); Delay.Milliseconds(0); ValidateMonauralCouplingSelected("Custom Mold", ""); Delay.Milliseconds(0); ValidateMonauralClusterSelected("P1", ""); Delay.Milliseconds(0); // Step## Click on cluster in overview screen Report.Log(ReportLevel.Info, "Section", "Step## Click on cluster in overview screen", new RecordItemIndex(46)); TapOn("P1"); Delay.Milliseconds(0); // Validation## The app shall highlight the matching cluster as “suitable”. Report.Log(ReportLevel.Info, "Section", "Validation## The app shall highlight the matching cluster as “suitable”.", new RecordItemIndex(48)); ValidateSuitableCluster("P1", "Right"); Delay.Milliseconds(0); // Step## Select any other cluster other than recommended Report.Log(ReportLevel.Info, "Section", "Step## Select any other cluster other than recommended", new RecordItemIndex(50)); TapOn("P2"); Delay.Milliseconds(0); // Validation## New cluster is selected and displayed in overview screen Report.Log(ReportLevel.Info, "Section", "Validation## New cluster is selected and displayed in overview screen", new RecordItemIndex(52)); VerifyActionBarTitle("OverRiding, Recommendation"); Delay.Milliseconds(0); ValidateMonauralClusterSelected("P2", ""); Delay.Milliseconds(0); }
void ITestModule.Run() { Mouse.DefaultMoveTime = 300; Keyboard.DefaultKeyPressTime = 100; Delay.SpeedFactor = 1.00; Init(); DeleteResults(); Delay.Milliseconds(0); RunAnalysis("PlateProtocolWith4Unknown.assay-protocol"); Delay.Milliseconds(0); openProperties(repo.ProtocolAnalysisDesktop.Transforms); Delay.Milliseconds(0); toWidescreen(ValueConverter.ArgumentFromString <int>("toLeft", "400")); Delay.Milliseconds(0); Report.Log(ReportLevel.Info, "Mouse", "Mouse Left Click item 'ProtocolAnalysisDesktop.ButtonAdd' at 29;11.", repo.ProtocolAnalysisDesktop.ButtonAddInfo, new RecordItemIndex(4)); repo.ProtocolAnalysisDesktop.ButtonAdd.Click("29;11"); Delay.Milliseconds(200); Report.Log(ReportLevel.Info, "Delay", "Waiting for 500ms.", new RecordItemIndex(5)); Delay.Duration(500, false); selectTransform(ValueConverter.ArgumentFromString <int>("num", "14")); Delay.Milliseconds(0); Report.Log(ReportLevel.Info, "Mouse", "Mouse Left Click item 'ProtocolAnalysisDesktop.CreateTransform' at 26;6.", repo.ProtocolAnalysisDesktop.CreateTransformInfo, new RecordItemIndex(7)); repo.ProtocolAnalysisDesktop.CreateTransform.Click("26;6"); Delay.Milliseconds(200); Report.Log(ReportLevel.Info, "Delay", "Waiting for 3s.", new RecordItemIndex(8)); Delay.Duration(3000, false); Report.Log(ReportLevel.Info, "Mouse", "Mouse Left Click item 'ProtocolAnalysisDesktop.StandardTypeDropdown' at Center.", repo.ProtocolAnalysisDesktop.StandardTypeDropdownInfo, new RecordItemIndex(9)); repo.ProtocolAnalysisDesktop.StandardTypeDropdown.Click(); Delay.Milliseconds(200); Report.Log(ReportLevel.Info, "Mouse", "Mouse Left Click item 'MyAssaysDesktopAnalysis.Unknown' at 37;5.", repo.MyAssaysDesktopAnalysis.UnknownInfo, new RecordItemIndex(10)); repo.MyAssaysDesktopAnalysis.Unknown.Click("37;5"); Delay.Milliseconds(200); Report.Log(ReportLevel.Info, "Delay", "Waiting for 5s.", new RecordItemIndex(11)); Delay.Duration(5000, false); CheckConcentrationsInDescription(); Delay.Milliseconds(0); Report.Log(ReportLevel.Info, "Mouse", "Mouse Left Click item 'ProtocolAnalysisDesktop.ConcentrationsDropdown' at 55;9.", repo.ProtocolAnalysisDesktop.ConcentrationsDropdownInfo, new RecordItemIndex(13)); repo.ProtocolAnalysisDesktop.ConcentrationsDropdown.Click("55;9"); Delay.Milliseconds(200); CheckConcentrations(); Delay.Milliseconds(0); Report.Log(ReportLevel.Info, "Mouse", "Mouse Left Click item 'ProtocolAnalysisDesktop.ConcentrationsDropdown' at 55;9.", repo.ProtocolAnalysisDesktop.ConcentrationsDropdownInfo, new RecordItemIndex(15)); repo.ProtocolAnalysisDesktop.ConcentrationsDropdown.Click("55;9"); Delay.Milliseconds(200); Report.Log(ReportLevel.Info, "Mouse", "Mouse Left Click item 'ProtocolAnalysisDesktop.CalculateButton' at Center.", repo.ProtocolAnalysisDesktop.CalculateButtonInfo, new RecordItemIndex(16)); repo.ProtocolAnalysisDesktop.CalculateButton.Click(); Delay.Milliseconds(200); WaitForCalculation(); Delay.Milliseconds(0); WaitForCalculation(); Delay.Milliseconds(0); Report.Log(ReportLevel.Info, "Validation", "Validating Exists on item 'ResultsAnalysis'.", repo.ResultsAnalysis.SelfInfo, new RecordItemIndex(19)); Validate.Exists(repo.ResultsAnalysis.SelfInfo); Delay.Milliseconds(0); ValidateSAAMsDoNotExist(); Delay.Milliseconds(0); ValidateStandardCurveFitTabExists(); Delay.Milliseconds(0); ExtractProtocol("PlateProtocolWith4Unknown (1).assay-results"); Delay.Milliseconds(0); CheckReportConcentrations(); Delay.Milliseconds(0); CheckGoodnessMeasure(); Delay.Milliseconds(0); CheckReportXMLByPattern("SCFPlateProtocolUnknownConcentrations.txt"); Delay.Milliseconds(0); }
public override CoreTypeMapping Clone(ValueConverter converter) => new TimestampLocalDateTimeMapping(Parameters.WithComposedConverter(converter));
public abstract TestPropertyBuilder <TProperty> HasConversion <TProvider>(ValueConverter <TProperty, TProvider> converter);
public override object ParseValue(object value) => ValueConverter.ConvertTo(value, typeof(short));
public abstract TestPropertyBuilder <TProperty> HasConversion(ValueConverter converter);
public RepositoryMap(ValueConverter primaryKeyConverter) { _primaryKeyConverter = primaryKeyConverter; }
public void ChoseValueConverter(PropertyInfo property, ValueConverter converter) { }
public static RationalValue ConvertFrom(ICustomData value) { return((RationalValue)ValueConverter <RationalValue> .ConvertFrom(value)); }
void ITestModule.Run() { Mouse.DefaultMoveTime = 300; Keyboard.DefaultKeyPressTime = 100; Delay.SpeedFactor = 1.00; Init(); DeleteResults(); Delay.Milliseconds(0); RunAnalysis("MultiplexProtocol12x8With4BlankSamples.assay-protocol"); Delay.Milliseconds(0); openProperties(repo.ProtocolAnalysisDesktop.Transforms); Delay.Milliseconds(0); toWidescreen(ValueConverter.ArgumentFromString <int>("toLeft", "400")); Delay.Milliseconds(0); Report.Log(ReportLevel.Info, "Mouse", "Mouse Left Click item 'ProtocolAnalysisDesktop.ButtonAdd' at 29;11.", repo.ProtocolAnalysisDesktop.ButtonAddInfo, new RecordItemIndex(4)); repo.ProtocolAnalysisDesktop.ButtonAdd.Click("29;11"); Delay.Milliseconds(200); Report.Log(ReportLevel.Info, "Delay", "Waiting for 500ms.", new RecordItemIndex(5)); Delay.Duration(500, false); selectTransform(ValueConverter.ArgumentFromString <int>("num", "14")); Delay.Milliseconds(0); Report.Log(ReportLevel.Info, "Mouse", "Mouse Left Click item 'ProtocolAnalysisDesktop.CreateTransform' at 26;6.", repo.ProtocolAnalysisDesktop.CreateTransformInfo, new RecordItemIndex(7)); repo.ProtocolAnalysisDesktop.CreateTransform.Click("26;6"); Delay.Milliseconds(200); Report.Log(ReportLevel.Info, "Delay", "Waiting for 3s.", new RecordItemIndex(8)); Delay.Duration(3000, false); Report.Log(ReportLevel.Info, "Mouse", "Mouse Left Click item 'ProtocolAnalysisDesktop.StandardTypeDropdown' at Center.", repo.ProtocolAnalysisDesktop.StandardTypeDropdownInfo, new RecordItemIndex(9)); repo.ProtocolAnalysisDesktop.StandardTypeDropdown.Click(); Delay.Milliseconds(200); Report.Log(ReportLevel.Info, "Delay", "Waiting for 5s.", new RecordItemIndex(10)); Delay.Duration(5000, false); Report.Log(ReportLevel.Info, "Mouse", "Mouse Left Click item 'MyAssaysDesktopAnalysis.Blank' at 37;5.", repo.MyAssaysDesktopAnalysis.BlankInfo, new RecordItemIndex(11)); repo.MyAssaysDesktopAnalysis.Blank.Click("37;5"); Delay.Milliseconds(200); Report.Log(ReportLevel.Info, "Mouse", "Mouse Left Click item 'ProtocolAnalysisDesktop.ConcentrationsDropdown' at 55;9.", repo.ProtocolAnalysisDesktop.ConcentrationsDropdownInfo, new RecordItemIndex(12)); repo.ProtocolAnalysisDesktop.ConcentrationsDropdown.Click("55;9"); Delay.Milliseconds(200); Report.Log(ReportLevel.Info, "Mouse", "Mouse Left Click item 'MyAssaysDesktopAnalysis.Grid.FactorInput' at 42;10.", repo.MyAssaysDesktopAnalysis.Grid.FactorInputInfo, new RecordItemIndex(13)); repo.MyAssaysDesktopAnalysis.Grid.FactorInput.Click("42;10"); Delay.Milliseconds(200); Report.Log(ReportLevel.Info, "Keyboard", "Key 'Ctrl+A' Press.", new RecordItemIndex(14)); Keyboard.Press(System.Windows.Forms.Keys.A | System.Windows.Forms.Keys.Control, 30, Keyboard.DefaultKeyPressTime, 1, true); Delay.Milliseconds(0); Report.Log(ReportLevel.Info, "Keyboard", "Key sequence '2'.", new RecordItemIndex(15)); Keyboard.Press("2"); Delay.Milliseconds(0); CheckConcentrations(); Delay.Milliseconds(0); CheckStartValues(); Delay.Milliseconds(0); Report.Log(ReportLevel.Info, "Mouse", "Mouse Left Click item 'MyAssaysDesktopAnalysis.SomeContainer.Analyte2' at 30;6.", repo.MyAssaysDesktopAnalysis.SomeContainer.Analyte2Info, new RecordItemIndex(18)); repo.MyAssaysDesktopAnalysis.SomeContainer.Analyte2.Click("30;6"); Delay.Milliseconds(200); CheckConcentrations(); Delay.Milliseconds(0); Report.Log(ReportLevel.Info, "Mouse", "Mouse Left Click item 'ProtocolAnalysisDesktop.ConcentrationsDropdown' at 55;9.", repo.ProtocolAnalysisDesktop.ConcentrationsDropdownInfo, new RecordItemIndex(20)); repo.ProtocolAnalysisDesktop.ConcentrationsDropdown.Click("55;9"); Delay.Milliseconds(200); Report.Log(ReportLevel.Info, "Mouse", "Mouse Left Click item 'ProtocolAnalysisDesktop.CalculateButton' at Center.", repo.ProtocolAnalysisDesktop.CalculateButtonInfo, new RecordItemIndex(21)); repo.ProtocolAnalysisDesktop.CalculateButton.Click(); Delay.Milliseconds(200); WaitForCalculation(); Delay.Milliseconds(0); WaitForCalculation(); Delay.Milliseconds(0); Report.Log(ReportLevel.Info, "Validation", "Validating Exists on item 'ResultsAnalysis'.", repo.ResultsAnalysis.SelfInfo, new RecordItemIndex(24)); Validate.Exists(repo.ResultsAnalysis.SelfInfo); Delay.Milliseconds(0); ValidateSAAMsDoNotExist(); Delay.Milliseconds(0); ValidateAnalyte1TabExists(); Delay.Milliseconds(0); ValidateAnalyte2TabExists(); Delay.Milliseconds(0); ExtractProtocol("MultiplexProtocol12x8With4BlankSamples (1).assay-results"); Delay.Milliseconds(0); CheckReportConcentrations(); Delay.Milliseconds(0); CheckGoodnessMeasure(); Delay.Milliseconds(0); CheckReportXMLByPattern("SCFMultiplexBlankConcentrations.txt"); Delay.Milliseconds(0); }
public void Chose(PropertyInfo property, ValueConverter converter) { if (_models.Any()) { currentReport.For(property).Chose(converter); } }
public void TestDefValues() { var converter = new ValueConverter(); Assert.That(converter.Get(null, 3), Is.EqualTo(3)); }
/// <summary> /// Preforms unit tests related to setting and reading value on all the built-in matrix types. /// </summary> /// <param name="doOutOfRangeTest">If true performs a test should throw a caught exception.</param> /// <param name="parallelOptions">A ParallelOptions instance that configures the multithreaded behavior of this operation.</param> public static void MainTest(bool doOutOfRangeTest, ParallelOptions parallelOptions) { //densematrix TestByKeysAndIndexes(() => CreateModelMatrix().ToDenseMatrix(), doOutOfRangeTest); //sparsematrix TestByKeysAndIndexes(() => CreateModelMatrix().ToSparseMatrix(), doOutOfRangeTest); //TransposeView TestByKeysAndIndexes(() => CreateModelMatrix().TransposeView().ToDenseMatrix().TransposeView(), doOutOfRangeTest); //ConvertValueView TestByKeysAndIndexes(() => CreateModelMatrix().ConvertValueView(ValueConverter.DoubleToInt, int.MaxValue).ToDenseMatrix().ConvertValueView(ValueConverter.IntToDouble, double.NaN), doOutOfRangeTest); //SelectRowsAndColsView TestByKeysAndIndexes(() => CreateModelMatrix().SelectRowsAndColsView(new int[] { 2, 1, 0 }, new int[] { 2, 1, 0 }).ToDenseMatrix().SelectRowsAndColsView(new int[] { 2, 1, 0 }, new int[] { 2, 1, 0 }), doOutOfRangeTest); //RenameColsView TestByKeysAndIndexes(() => CreateModelMatrix().RenameColsView(new Dictionary<string, string> { { "x", "X" }, { "y", "Y" }, { "z", "Z" } }).ToDenseMatrix().RenameColsView(new Dictionary<string, string> { { "X", "x" }, { "Y", "y" }, { "Z", "z" } }), doOutOfRangeTest); //PermuteColValuesForEachRowView TestByKeysAndIndexes(() => CreateModelMatrix().PermuteColValuesForEachRowView(new int[] { 2, 1, 0 }).ToDenseMatrix().PermuteColValuesForEachRowView(new int[] { 2, 1, 0 }), doOutOfRangeTest); //MergeColsView TestByKeysAndIndexes(() => CreateModelMatrix().SelectColsView(0).ToDenseMatrix().MergeColsView(/*rowsMustMatch*/true, CreateModelMatrix().SelectColsView(1, 2).ToDenseMatrix()), doOutOfRangeTest); //MergeRowsView TestByKeysAndIndexes(() => CreateModelMatrix().SelectRowsView(0).ToDenseMatrix().MergeRowsView(/*colsMustMatch*/true, CreateModelMatrix().SelectRowsView(1, 2).ToDenseMatrix()), doOutOfRangeTest); //rowkeyspaddeddouble TestByKeysAndIndexes(() => CreateModelMatrix().ToPaddedDouble(parallelOptions), doOutOfRangeTest); //rowkeysansi TestByKeysAndIndexes(() => CreateModelMatrix().ConvertValueView(ValueConverter.DoubleToChar, '?').ToDenseAnsi(parallelOptions).ConvertValueView(ValueConverter.CharToDouble, double.NaN), doOutOfRangeTest); //densepairansi ValueConverter<double, UOPair<char>> doubleToUOPairConvert = new ValueConverter<double, UOPair<char>>( r => new UOPair<char>(((int)r).ToString((IFormatProvider)null)[0], ((int)r).ToString((IFormatProvider)null)[0]), pair => double.Parse(pair.First.ToString((IFormatProvider)null), (IFormatProvider)null)); TestByKeysAndIndexes(() => CreateModelMatrix().ConvertValueView(doubleToUOPairConvert, DensePairAnsi.StaticMissingValue).ToDensePairAnsi(parallelOptions).ConvertValueView(doubleToUOPairConvert.Inverted, double.NaN), doOutOfRangeTest); //RowKeysPaddedDouble string paddedDoubleFile = Path.GetTempFileName(); CreateModelMatrix().WritePaddedDouble(paddedDoubleFile, parallelOptions); using (RowKeysPaddedDouble rowKeysPaddedDouble = RowKeysPaddedDouble.GetInstanceFromPaddedDouble(paddedDoubleFile, parallelOptions, FileAccess.ReadWrite, FileShare.ReadWrite)) { TestByKeys(rowKeysPaddedDouble, doOutOfRangeTest); } CreateModelMatrix().WritePaddedDouble(paddedDoubleFile, parallelOptions); using (RowKeysPaddedDouble rowKeysPaddedDouble = RowKeysPaddedDouble.GetInstanceFromPaddedDouble(paddedDoubleFile, parallelOptions, FileAccess.ReadWrite, FileShare.ReadWrite)) { TestByIndexes(rowKeysPaddedDouble, doOutOfRangeTest); } File.Delete(paddedDoubleFile); //RowKeysRowKeysAnsi string rowKeysAnsiFile = Path.GetTempFileName(); CreateModelMatrix().WriteDenseAnsi(rowKeysAnsiFile, parallelOptions); using (RowKeysAnsi rowKeysRowKeysAnsi = RowKeysAnsi.GetInstanceFromDenseAnsi(rowKeysAnsiFile, parallelOptions, FileAccess.ReadWrite, FileShare.ReadWrite)) { TestByKeys(rowKeysRowKeysAnsi.ConvertValueView(ValueConverter.CharToDouble, double.NaN), doOutOfRangeTest); } CreateModelMatrix().WriteDenseAnsi(rowKeysAnsiFile, parallelOptions); using (RowKeysAnsi rowKeysRowKeysAnsi = RowKeysAnsi.GetInstanceFromDenseAnsi(rowKeysAnsiFile, parallelOptions, FileAccess.ReadWrite, FileShare.ReadWrite)) { TestByIndexes(rowKeysRowKeysAnsi.ConvertValueView(ValueConverter.CharToDouble, double.NaN), doOutOfRangeTest); } File.Delete(rowKeysAnsiFile); //RowKeysRowKeysPairAnsi string rowKeysPairAnsiFile = Path.GetTempFileName(); CreateModelMatrix().ConvertValueView(doubleToUOPairConvert, DensePairAnsi.StaticMissingValue).WriteDensePairAnsi(rowKeysPairAnsiFile, parallelOptions); using (RowKeysPairAnsi rowKeysAnsiPair = RowKeysPairAnsi.GetInstanceFromPairAnsi(rowKeysPairAnsiFile, parallelOptions, FileAccess.ReadWrite, FileShare.ReadWrite)) { TestByKeys(rowKeysAnsiPair.ConvertValueView(doubleToUOPairConvert.Inverted, double.NaN), doOutOfRangeTest); } CreateModelMatrix().ConvertValueView(doubleToUOPairConvert, DensePairAnsi.StaticMissingValue).WriteDensePairAnsi(rowKeysPairAnsiFile, parallelOptions); using (RowKeysPairAnsi rowKeysRowKeysAnsi = RowKeysPairAnsi.GetInstanceFromPairAnsi(rowKeysPairAnsiFile, parallelOptions, FileAccess.ReadWrite, FileShare.ReadWrite)) { TestByIndexes(rowKeysRowKeysAnsi.ConvertValueView(doubleToUOPairConvert.Inverted, double.NaN), doOutOfRangeTest); } File.Delete(rowKeysPairAnsiFile); }
public override CoreTypeMapping Clone(ValueConverter converter) => new NpgsqlRangeTypeMapping <T>(Parameters.WithComposedConverter(converter), NpgsqlDbType);
public AbstraXProviderMappingParameters(AbstraXProviderDataProvider dataProvider, Type clrType, ValueConverter converter = null, ValueComparer comparer = null, ValueComparer keyComparer = null, ValueComparer structuralComparer = null, Func <IProperty, IEntityType, ValueGenerator> valueGeneratorFactory = null) { this.DataProvider = dataProvider; this.ClrType = clrType; this.ValueConverter = converter; this.ValueComparer = comparer; this.KeyComparer = keyComparer; this.StructuralComparer = structuralComparer; this.ValueGeneratorFactory = valueGeneratorFactory; }
/// <summary> /// Sets the custom <see cref="ValueConverter" /> for this property. /// </summary> /// <param name="property"> The property. </param> /// <param name="converter"> The converter, or <see langword="null" /> to remove any previously set converter. </param> /// <param name="fromDataAnnotation"> Indicates whether the configuration was specified using a data annotation. </param> /// <returns> The configured value. </returns> public static ValueConverter SetValueConverter( [NotNull] this IConventionProperty property, [CanBeNull] ValueConverter converter, bool fromDataAnnotation = false) => property.AsProperty().SetValueConverter( converter, fromDataAnnotation ? ConfigurationSource.DataAnnotation : ConfigurationSource.Convention);
public void Chose(ValueConverter converter) { _converter = converter; }
/// <summary> /// This is an internal API that supports the Entity Framework Core infrastructure and not subject to /// the same compatibility standards as public APIs. It may be changed or removed without notice in /// any release. You should only use it directly in your code with extreme caution and knowing that /// doing so can result in application failures when updating to a new Entity Framework Core release. /// </summary> protected SqliteGeometryTypeMapping( RelationalTypeMappingParameters parameters, ValueConverter <TGeometry, byte[]> converter) : base(parameters, converter) { }
private bool TrySetPropertyAndRemoveUsedKey(InputMember member, string uriParameterName, NameValueCollection uriParameters, ValueConverter<string> converter) { if (member.Binder.SetProperty(uriParameterName, uriParameters.GetValues(uriParameterName), converter)) { uriParameters.Remove(uriParameterName); return true; } return false; }
void ITestModule.Run() { Mouse.DefaultMoveTime = 300; Keyboard.DefaultKeyPressTime = 100; Delay.SpeedFactor = 1.00; Init(); // Step## Pre-Condition - Initial setup and Access code setup is done.Customer created with audiogram configured Report.Log(ReportLevel.Info, "Section", "Step## Pre-Condition - Initial setup and Access code setup is done.Customer created with audiogram configured", new RecordItemIndex(0)); CreatePatient("Flow", "Monaural"); Delay.Milliseconds(0); SelectCustomerContinue(); Delay.Milliseconds(0); CloseApp(); Delay.Milliseconds(0); // Step## Open the app, select List and select the existing customer Report.Log(ReportLevel.Info, "Section", "Step## Open the app, select List and select the existing customer", new RecordItemIndex(4)); StartApp(); Delay.Milliseconds(0); SearchCustomer("Monaural"); Delay.Milliseconds(0); SelectCustomer("Flow", "Monaural"); Delay.Milliseconds(0); // Step## Enter Audiogram -Left with 40, 45 ,50 55 dB for the required frequencies 500Hz, 1kHz, 2kHz, 4kHz and press Done Report.Log(ReportLevel.Info, "Section", "Step## Enter Audiogram -Left with 40, 45 ,50 55 dB for the required frequencies 500Hz, 1kHz, 2kHz, 4kHz and press Done", new RecordItemIndex(8)); TapEnterAudiogram(); Delay.Milliseconds(0); DrawAudiogramPoints("left", "500,40;1000,45;2000,50;4000,55"); Delay.Milliseconds(0); TabTapOnRightButton("Click on 'Done'"); Delay.Milliseconds(0); // Validation## Pop up appears to enter values for right ear. Report.Log(ReportLevel.Info, "Section", "Validation## Pop up appears to enter values for right ear.", new RecordItemIndex(12)); ValidateALertMessage("Do you want to enter values for the \"right\" ear side too?"); Delay.Milliseconds(0); // Step## Press No for the popup appeared Report.Log(ReportLevel.Info, "Section", "Step## Press No for the popup appeared", new RecordItemIndex(14)); ClickOnAlertMessage("No"); Delay.Milliseconds(0); // Validation## Returns to the overview screen with recommendation given for HI, Coupling and Cluster Report.Log(ReportLevel.Info, "Section", "Validation## Returns to the overview screen with recommendation given for HI, Coupling and Cluster", new RecordItemIndex(16)); ValidateMonauralHISelected(H4, "Left"); Delay.Milliseconds(0); ValidateMonauralCouplingSelected("Click Sleeve", "Left"); Delay.Milliseconds(0); ValidateMonauralClusterSelected("P5", "Left"); Delay.Milliseconds(0); // Step## Click on HI and Reselect same HI Report.Log(ReportLevel.Info, "Section", "Step## Click on HI and Reselect same HI", new RecordItemIndex(20)); TapOn(H4); Delay.Milliseconds(0); ValidateRecommendationEnabled("Left", ValueConverter.ArgumentFromString <bool>("isEnabled", "True")); Delay.Milliseconds(0); TapOn("Fit left ear with hearing aid"); Delay.Milliseconds(0); TapOnRecommendedHearingAid(H4); Delay.Milliseconds(0); // Step## Click on cluster to change from P1 to P3 Report.Log(ReportLevel.Info, "Section", "Step## Click on cluster to change from P1 to P3", new RecordItemIndex(25)); TapOn("P5"); Delay.Milliseconds(0); TapOn("P6"); Delay.Milliseconds(0); // Step## Press Send data to HI and Connect-Pair HI Report.Log(ReportLevel.Info, "Section", "Step## Press Send data to HI and Connect-Pair HI", new RecordItemIndex(28)); SelectPage("Send Data to Hearing Aid"); Delay.Milliseconds(0); // Validation## warning message is displayed as Selected Sound Profile provides higher amplification than the recommended Profile. HI is successfully paired Report.Log(ReportLevel.Info, "Section", "Validation## warning message is displayed as Selected Sound Profile provides higher amplification than the recommended Profile. HI is successfully paired", new RecordItemIndex(30)); ConnectHI(); Delay.Milliseconds(0); ValidateALertMessage(" Selected Sound Profile provides higher amplification than the recommended Profile. Are you sure of your selection?"); Delay.Milliseconds(0); ClickOnAlertMessage("OK"); Delay.Milliseconds(0); TapOn("Yes"); Delay.Milliseconds(0); ClickOnAlertMessage("OK"); Delay.Milliseconds(0); // Step## Press Sound Comfort Report.Log(ReportLevel.Info, "Section", "Step## Press Sound Comfort", new RecordItemIndex(36)); SelectPage("Check Sound Comfort"); Delay.Milliseconds(0); // Step## Increase/Decrease the volume and sound balancers using +/- buttons or slider Report.Log(ReportLevel.Info, "Section", "Step## Increase/Decrease the volume and sound balancers using +/- buttons or slider", new RecordItemIndex(38)); VolumeIncrease(); Delay.Milliseconds(0); SoundSharper(); Delay.Milliseconds(0); // Step## Press Test OK Report.Log(ReportLevel.Info, "Section", "Step## Press Test OK", new RecordItemIndex(41)); SoundComfortOk(); Delay.Milliseconds(0); // Validation## Session is completed Report.Log(ReportLevel.Info, "Section", "Validation## Session is completed", new RecordItemIndex(43)); TabVerifyActionBarDetailTitle("Session Completed"); Delay.Milliseconds(0); // Step## Press Close session Report.Log(ReportLevel.Info, "Section", "Step## Press Close session", new RecordItemIndex(45)); CloseSession(); Delay.Milliseconds(0); // Validation## Returns to the Customer List screen Report.Log(ReportLevel.Info, "Section", "Validation## Returns to the Customer List screen", new RecordItemIndex(47)); VerifyActionBarTitle("Client List"); Delay.Milliseconds(0); }