public override void TestGetBusinessObjectAtRow_WhenGridHasObjectIDButBOColNotHasObject_ShouldLoadBO() { //This is a fairly specific situation but can occur when you are using // a CachedBindingList or a paginaged BindingList where the BOCol that the // grid has reference to does not have any BusinessObjects. //---------------Set up test pack------------------- MyBO.LoadDefaultClassDef(); BusinessObjectCollection <MyBO> col = CreateCollectionWith_4_SavedObjects(); IGridBase gridBase = CreateGridBaseStub(); var loaderClass = new CustomDelegateLoaderClass(col); gridBase.GridLoader = loaderClass.GridLoaderDelegateLoadFromDiffCol; SetupGridColumnsForMyBo(gridBase); gridBase.BusinessObjectCollection = new BusinessObjectCollection <MyBO>(); //---------------Assert Preconditions--------------- Assert.IsNull(gridBase.DataSetProvider); Assert.IsNotNull(gridBase.DataSource); col.Refresh(); Assert.AreEqual(4, col.Count); Assert.AreEqual(4, gridBase.RowCount); //---------------Execute Test ---------------------- IBusinessObject businessObject2 = gridBase.GetBusinessObjectAtRow(2); IBusinessObject businessObject3 = gridBase.GetBusinessObjectAtRow(3); //---------------Test Result ----------------------- Assert.AreSame(col[2], businessObject2); Assert.AreSame(col[3], businessObject3); }
public virtual void TestGetBusinessObjectAtRow_WhenGridHasObjectIDButBOColNotHasObject_ShouldLoadBO() { //This is a fairly specific situation but can occur when you are using // a CachedBindingList or a paginaged BindingList where the BOCol that the // grid has reference to does not have any BusinessObjects. //---------------Set up test pack------------------- MyBO.LoadDefaultClassDef(); BusinessObjectCollection<MyBO> col = CreateCollectionWith_4_SavedObjects(); IGridBase gridBase = CreateGridBaseStub(); var loaderClass = new CustomDelegateLoaderClass(col); gridBase.GridLoader = loaderClass.GridLoaderDelegateLoadFromDiffCol; SetupGridColumnsForMyBo(gridBase); gridBase.BusinessObjectCollection = new BusinessObjectCollection<MyBO>(); //---------------Assert Preconditions--------------- Assert.IsNull(gridBase.DataSetProvider); Assert.IsNotNull(gridBase.DataSource); col.Refresh(); Assert.AreEqual(4, col.Count); Assert.AreEqual(4, gridBase.RowCount); //---------------Execute Test ---------------------- IBusinessObject businessObject2 = gridBase.GetBusinessObjectAtRow(2); IBusinessObject businessObject3 = gridBase.GetBusinessObjectAtRow(3); //---------------Test Result ----------------------- Assert.AreSame(col[2], businessObject2); Assert.AreSame(col[3], businessObject3); }