public void Test_ControlMapperStrategy_AddBOPropHandlers() { //---------------Set up test pack------------------- ClassDef.ClassDefs.Clear(); MyBO.LoadDefaultClassDef(); var strategyWin = new ControlMapperStrategyWin(); var factory = new Habanero.Faces.Win.ControlFactoryWin(); var tb = factory.CreateTextBox(); const string testprop = "TestProp"; var stubMapper = new ControlMapperStub(tb, testprop, false, factory); var bo = new MyBO(); var prop = bo.Props[testprop]; const string origvalue = "origValue"; prop.Value = origvalue; stubMapper.BusinessObject = bo; strategyWin.RemoveCurrentBOPropHandlers(stubMapper, prop); //--------------Assert PreConditions---------------- Assert.AreEqual(origvalue, tb.Text); //---------------Execute Test ---------------------- strategyWin.AddCurrentBOPropHandlers(stubMapper, prop); const string newValue = "New value"; prop.Value = newValue; //---------------Test Result ----------------------- Assert.AreEqual(newValue, tb.Text); }
public void Test_ControlMapperStrategy_RemoveBOPropHandlers() { //---------------Set up test pack------------------- ClassDef.ClassDefs.Clear(); MyBO.LoadDefaultClassDef(); var strategyWin = new ControlMapperStrategyWin(); var tb = _factory.CreateTextBox(); const string testprop = "TestProp"; var stubMapper = new ControlMapperStub(tb, testprop, false, _factory); var bo = new MyBO(); var prop = bo.Props[testprop]; const string origvalue = "origValue"; prop.Value = origvalue; stubMapper.BusinessObject = bo; const string newValue = "New value"; //--------------Assert PreConditions---------------- Assert.AreNotEqual(newValue, tb.Text); Assert.AreEqual(origvalue, prop.Value, "The text box value is set from the prop due to the fact that the BOPropHandler is on the ControlMapperStrategy"); Assert.AreEqual(origvalue, tb.Text, "The text box value is set from the prop due to the fact that the BOPropHandler is on the ControlMapperStrategy"); //---------------Execute Test ---------------------- strategyWin.RemoveCurrentBOPropHandlers(stubMapper, prop); prop.Value = newValue; //---------------Test Result ----------------------- Assert.AreNotEqual(newValue, tb.Text, "Updating the prop should not update the textbox since the handler has been removed"); Assert.AreEqual(origvalue, tb.Text); Assert.AreEqual(newValue, prop.Value, "The text box value is not changed when the prop has changed due the the BOPropHandler being removed"); }
public void Test_KeyPressMovesFocusToNextControl() { //---------------Set up test pack------------------- GlobalRegistry.UIExceptionNotifier = new RethrowingExceptionNotifier(); var parentControl = _factory.CreateControl(); var strategyWin = new ControlMapperStrategyWin(); var textBox = _factory.CreateTextBox(); textBox.Name = "TestTextBox"; strategyWin.AddKeyPressEventHandler(textBox); parentControl.Controls.Add(textBox); var textBox2 = _factory.CreateTextBox(); parentControl.Controls.Add(textBox2); var tbWin = (TextBoxWin)textBox2; var gotFocus = false; tbWin.GotFocus += delegate { gotFocus = true; }; var frm = AddControlToForm(parentControl); //--------------Assert PreConditions---------------- //---------------Execute Test ---------------------- frm.Show(); var box = new TextBoxTester("TestTextBox"); var eveArgsEnter = new KeyEventArgs(Keys.Enter); box.FireEvent("KeyUp", eveArgsEnter); //---------------Test Result ----------------------- Assert.IsTrue(tbWin.ContainsFocus); Assert.IsTrue(gotFocus); }