public void TestBOKeyEqual() { //Set values for Key1 BOKey lBOKey1 = (BOKey)_keyDef1.CreateBOKey(_boPropCol1); IBOProp lProp = _boPropCol1["PropName"]; lProp.Value = "Prop Value"; lProp = _boPropCol1["PropName1"]; lProp.Value = "Value 2"; //Set values for Key2 BOKey lBOKey2 = (BOKey)_keyDef2.CreateBOKey(_boPropCol2); lProp = _boPropCol2["PropName"]; lProp.Value = "Prop Value"; lProp = _boPropCol2["PropName1"]; lProp.Value = "Value 2"; //Assert.AreEqual(lBOKey1, lBOKey2); Assert.IsTrue(lBOKey1 == lBOKey2); Assert.AreEqual(lBOKey1.GetHashCode(), lBOKey2.GetHashCode()); }
public void TestHasAutoIncrementingProperty_TwoProps_True() { //---------------Set up test pack------------------- PropDef propDef1 = new PropDef("PropName1", typeof(string), PropReadWriteRule.ReadWrite, null); PropDef propDef2 = new PropDef("PropName2", typeof(string), PropReadWriteRule.ReadWrite, null); propDef2.AutoIncrementing = true; BOPropCol propCol = new BOPropCol(); propCol.Add(propDef1.CreateBOProp(false)); propCol.Add(propDef2.CreateBOProp(false)); KeyDef keyDef = new KeyDef(); keyDef.Add(propDef1); keyDef.Add(propDef2); IBOKey boKey = keyDef.CreateBOKey(propCol); //---------------Assert PreConditions--------------- //---------------Execute Test ---------------------- bool hasAutoIncrementingProperty = boKey.HasAutoIncrementingProperty; //---------------Test Result ----------------------- Assert.IsTrue(hasAutoIncrementingProperty); //---------------Tear Down ------------------------- }
private static IBOKey CreateBOKeyGuid() { PropDef propDef1 = new PropDef("PropName1", typeof(Guid), PropReadWriteRule.ReadWrite, null) { ClassDef = ContactPersonTestBO.LoadDefaultClassDef() }; BOPropCol propCol = new BOPropCol(); propCol.Add(propDef1.CreateBOProp(false)); KeyDef keyDef = new KeyDef { propDef1 }; return(keyDef.CreateBOKey(propCol)); }
public void TestUpdatedEvent() { PropDef propDef1 = new PropDef("PropName1", typeof(string), PropReadWriteRule.ReadWrite, null); PropDef propDef2 = new PropDef("PropName2", typeof(string), PropReadWriteRule.ReadWrite, null); BOPropCol propCol = new BOPropCol(); propCol.Add(propDef1.CreateBOProp(false)); propCol.Add(propDef2.CreateBOProp(false)); KeyDef keyDef = new KeyDef { propDef1, propDef2 }; IBOKey boKey = keyDef.CreateBOKey(propCol); boKey.Updated += UpdatedEventHandler; propCol["PropName1"].Value = "new value"; Assert.IsTrue(_updatedEventHandled); }
public void TestIntegerIndexer() { PropDef propDef1 = new PropDef("PropName1", typeof(string), PropReadWriteRule.ReadOnly, null); PropDef propDef2 = new PropDef("PropName2", typeof(string), PropReadWriteRule.ReadOnly, null); BOPropCol propCol = new BOPropCol(); propCol.Add(propDef1.CreateBOProp(false)); propCol.Add(propDef2.CreateBOProp(false)); KeyDef keyDef = new KeyDef(); keyDef.Add(propDef1); keyDef.Add(propDef2); IBOKey boKey = keyDef.CreateBOKey(propCol); Assert.AreEqual(propCol["PropName1"], boKey[0]); Assert.AreEqual(propCol["PropName2"], boKey[1]); }
public void TestEquality() { BOKey boKey = (BOKey)_keyDef1.CreateBOKey(_boPropCol1); // Test when property count is different KeyDef keyDef = new KeyDef(); BOKey otherKey = new BOKey(keyDef); Assert.IsFalse(boKey == otherKey); // Same property count, but different prop names PropDef propDef1 = new PropDef("PropName5", typeof(string), PropReadWriteRule.ReadOnly, null); PropDef propDef2 = new PropDef("PropName6", typeof(string), PropReadWriteRule.ReadOnly, null); BOPropCol propCol = new BOPropCol(); propCol.Add(propDef1.CreateBOProp(false)); propCol.Add(propDef2.CreateBOProp(false)); keyDef.Add(propDef1); keyDef.Add(propDef2); otherKey = (BOKey)keyDef.CreateBOKey(propCol); Assert.IsFalse(boKey == otherKey); // Same props but different values (with one null) otherKey = (BOKey)_keyDef1.CreateBOKey(_boPropCol2); otherKey["PropName"].Value = "blah"; Assert.IsFalse(boKey == otherKey); // Same props but different values (neither are null) otherKey = (BOKey)_keyDef1.CreateBOKey(_boPropCol2); boKey["PropName"].Value = "diblah"; Assert.IsFalse(boKey == otherKey); Assert.IsFalse(boKey.Equals(otherKey)); // False when different type of object Assert.IsFalse(boKey.Equals(keyDef)); // Finally, when they are equal boKey["PropName"].Value = "blah"; Assert.IsTrue(boKey == otherKey); Assert.IsTrue(boKey.Equals(otherKey)); }