Index: src/Deltares.DSoilModel.Forms.Tests/ControlTester.cs =================================================================== diff -u -r365 -r369 --- src/Deltares.DSoilModel.Forms.Tests/ControlTester.cs (.../ControlTester.cs) (revision 365) +++ src/Deltares.DSoilModel.Forms.Tests/ControlTester.cs (.../ControlTester.cs) (revision 369) @@ -138,7 +138,7 @@ } protected void TestTextEditVisibleEnabledValue(IPropertyControl parentControl, string textEditName, - bool isVisibleExpected, bool isEnabledExpected, T target, Expression> outExpr, object newValue = null) + bool isVisibleExpected, bool isEnabledExpected, T target, Expression> outExpr) { TestControlVisibleEnabled(parentControl, textEditName, isVisibleExpected, isEnabledExpected); if (isVisibleExpected) @@ -150,24 +150,32 @@ } } - protected void TestComboBoxVisibleEnabledValue(IPropertyControl parentControl, string textEditName, + protected void TestComboBoxVisibleEnabledValue(IPropertyControl parentControl, string comboBoxEditName, bool isVisibleExpected, bool isEnabledExpected, T target, Expression> outExpr, TEnum newValue = default(TEnum)) { - TestControlVisibleEnabled(parentControl, textEditName, isVisibleExpected, isEnabledExpected); + TestControlVisibleEnabled(parentControl, comboBoxEditName, isVisibleExpected, isEnabledExpected); if (isVisibleExpected) { - var edit = GetPrivateField(parentControl, textEditName); + var edit = GetPrivateField(parentControl, comboBoxEditName); var initialValue = GetValue(target, outExpr); - var editValue = ((DisplayItem) (edit.SelectedItem)).Value; // we need this hack, becuase edit.EditValue contains formatted and translated text - Assert.AreEqual(initialValue, editValue, InitialValueMismatchString); - if (newValue != null) + if (edit.EditValue is DisplayItem) { - edit.EditValue = newValue; - Assert.AreEqual(newValue, GetValue(target, outExpr), ObjectDidntReceivedValueString); - edit.EditValue = initialValue; // restoring initial value - it might be still useful + // the case with enumeration: index is not reliable and caption translated and formatted + var editValue = ((DisplayItem)(edit.SelectedItem)).Value; // we need this hack, becuase edit.EditValue contains formatted and translated text + Assert.AreEqual(initialValue, editValue, InitialValueMismatchString); } + else + { + Assert.AreEqual(initialValue, edit.EditValue, InitialValueMismatchString); + if (newValue != null) + { + edit.EditValue = newValue; + Assert.AreEqual(newValue, GetValue(target, outExpr), ObjectDidntReceivedValueString); + edit.EditValue = initialValue; // restoring initial value - it might be still useful + } + } } }