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 ------------------------- }
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]); }
private static IBOKey CreateBOKeyGuidAndString() { PropDef propDef1 = new PropDef("PropName1", typeof(Guid), PropReadWriteRule.ReadWrite, null) {ClassDef = ContactPersonTestBO.LoadDefaultClassDef()}; PropDef propDef2 = new PropDef("PropName2", typeof(string), PropReadWriteRule.ReadWrite, null) {ClassDef = propDef1.ClassDef}; BOPropCol propCol = new BOPropCol(); propCol.Add( propDef1.CreateBOProp(false)); propCol.Add(propDef2.CreateBOProp(false)); KeyDef keyDef = new KeyDef {propDef1, propDef2}; return keyDef.CreateBOKey(propCol); }
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)); }