public void MarkUnsynchronized() { Assert.That(RealObjectEndPointTestHelper.GetSyncState(_endPoint), Is.SameAs(_syncStateMock)); _endPoint.MarkUnsynchronized(); Assert.That(RealObjectEndPointTestHelper.GetSyncState(_endPoint), Is.TypeOf(typeof(UnsynchronizedRealObjectEndPointSyncState))); }
public void OppositeObjectID_Get_FromProperty() { Assert.That(_endPoint.OppositeObjectID, Is.Not.EqualTo(DomainObjectIDs.Order3)); RealObjectEndPointTestHelper.SetValueViaDataContainer(_endPoint, DomainObjectIDs.Order3); Assert.That(_endPoint.OppositeObjectID, Is.EqualTo(DomainObjectIDs.Order3)); }
public void Touch_ToProperty() { Assert.That(RealObjectEndPointTestHelper.HasBeenTouchedViaDataContainer(_endPoint), Is.False); _endPoint.Touch(); Assert.That(RealObjectEndPointTestHelper.HasBeenTouchedViaDataContainer(_endPoint), Is.True); }
public void GetOppositeObject_Null() { RealObjectEndPointTestHelper.SetOppositeObjectID(_endPoint, null); var oppositeObject = _endPoint.GetOppositeObject(); Assert.That(oppositeObject, Is.Null); }
public void HasChanged_FromProperty() { Assert.That(_endPoint.HasChanged, Is.False); RealObjectEndPointTestHelper.SetValueViaDataContainer(_endPoint, DomainObjectIDs.Order3); Assert.That(_endPoint.HasChanged, Is.True); }
public void OriginalOppositeObjectID_Get_FromProperty() { RealObjectEndPointTestHelper.SetValueViaDataContainer(_endPoint, DomainObjectIDs.Order3); Assert.That(_endPoint.OriginalOppositeObjectID, Is.Not.EqualTo(DomainObjectIDs.Order3)); _endPoint.ForeignKeyDataContainer.CommitState(); Assert.That(_endPoint.OriginalOppositeObjectID, Is.EqualTo(DomainObjectIDs.Order3)); }
public void Initialization_SyncState() { var endPoint = new RealObjectEndPoint(TestableClientTransaction, _endPointID, _foreignKeyDataContainer, _endPointProviderStub, _transactionEventSinkStub); var syncState = RealObjectEndPointTestHelper.GetSyncState(endPoint); Assert.That(syncState, Is.TypeOf(typeof(UnknownRealObjectEndPointSyncState))); Assert.That(((UnknownRealObjectEndPointSyncState)syncState).VirtualEndPointProvider, Is.SameAs(_endPointProviderStub)); }
public void GetOriginalOppositeObject() { RealObjectEndPointTestHelper.SetOppositeObjectID(_endPoint, DomainObjectIDs.Order1); _foreignKeyDataContainer.CommitState(); var originalOppositeObject = _endPoint.GetOriginalOppositeObject(); Assert.That(originalOppositeObject, Is.SameAs(DomainObjectIDs.Order1.GetObjectReference <Order> ())); Assert.That(originalOppositeObject.State, Is.EqualTo(StateType.NotLoadedYet)); }
public void MarkSynchronized() { Assert.That(RealObjectEndPointTestHelper.GetSyncState(_endPoint), Is.SameAs(_syncStateMock)); _endPoint.MarkSynchronized(); Assert.That(RealObjectEndPointTestHelper.GetSyncState(_endPoint), Is.TypeOf(typeof(SynchronizedRealObjectEndPointSyncState))); Assert.That(_endPoint.EndPointProvider, Is.SameAs(_endPointProviderStub)); Assert.That(_endPoint.TransactionEventSink, Is.SameAs(_transactionEventSinkStub)); }
public void GetOppositeObject_Invalid() { var oppositeObject = Order.NewObject(); oppositeObject.Delete(); Assert.That(oppositeObject.State, Is.EqualTo(StateType.Invalid)); RealObjectEndPointTestHelper.SetOppositeObjectID(_endPoint, oppositeObject.ID); Assert.That(_endPoint.GetOppositeObject(), Is.SameAs(oppositeObject)); }
public void GetOppositeObject_Deleted() { var order1 = DomainObjectIDs.Order1.GetObject <Order> (); order1.Delete(); Assert.That(order1.State, Is.EqualTo(StateType.Deleted)); RealObjectEndPointTestHelper.SetOppositeObjectID(_endPoint, order1.ID); Assert.That(_endPoint.GetOppositeObject(), Is.SameAs(order1)); }
public void GetOriginalOppositeObject_Deleted() { RealObjectEndPointTestHelper.SetOppositeObjectID(_endPoint, DomainObjectIDs.Order1); _foreignKeyDataContainer.CommitState(); var originalOppositeObject = (Order)_endPoint.GetOppositeObject(); originalOppositeObject.Delete(); Assert.That(originalOppositeObject.State, Is.EqualTo(StateType.Deleted)); Assert.That(_endPoint.GetOriginalOppositeObject(), Is.SameAs(originalOppositeObject)); }
public void ResetSyncState() { Assert.That(RealObjectEndPointTestHelper.GetSyncState(_endPoint), Is.SameAs(_syncStateMock)); _endPoint.ResetSyncState(); var syncState = RealObjectEndPointTestHelper.GetSyncState(_endPoint); Assert.That(syncState, Is.TypeOf(typeof(UnknownRealObjectEndPointSyncState))); Assert.That(((UnknownRealObjectEndPointSyncState)syncState).VirtualEndPointProvider, Is.SameAs(_endPointProviderStub)); }
public void Rollback_ToProperty() { Assert.That(RealObjectEndPointTestHelper.GetValueViaDataContainer(_endPoint), Is.Null); RealObjectEndPointTestHelper.SetValueViaDataContainer(_endPoint, DomainObjectIDs.Order3); Assert.That(RealObjectEndPointTestHelper.HasChangedViaDataContainer(_endPoint), Is.True); _endPoint.Rollback(); Assert.That(RealObjectEndPointTestHelper.HasChangedViaDataContainer(_endPoint), Is.False); Assert.That(RealObjectEndPointTestHelper.GetValueViaDataContainer(_endPoint), Is.Null); }
public void GetOppositeObject() { RealObjectEndPointTestHelper.SetOppositeObjectID(_endPoint, DomainObjectIDs.Order1); DomainObject oppositeObject; using (ClientTransactionScope.EnterNullScope()) { oppositeObject = _endPoint.GetOppositeObject(); } Assert.That(oppositeObject, Is.SameAs(LifetimeService.GetObjectReference(TestableClientTransaction, DomainObjectIDs.Order1))); Assert.That(oppositeObject.State, Is.EqualTo(StateType.NotLoadedYet), "Data has not been loaded"); }
public void SetOppositeObjectDataFromSubTransaction() { Assert.That(_endPoint.OppositeObjectID, Is.Not.EqualTo(DomainObjectIDs.Order3)); var sourceDataContainer = DataContainer.CreateForExisting(_endPointID.ObjectID, null, pd => pd.DefaultValue); var source = new RealObjectEndPoint(TestableClientTransaction, _endPointID, sourceDataContainer, _endPointProviderStub, _transactionEventSinkStub); RealObjectEndPointTestHelper.SetValueViaDataContainer(source, DomainObjectIDs.Order3); PrivateInvoke.InvokeNonPublicMethod(_endPoint, "SetOppositeObjectDataFromSubTransaction", source); Assert.That(_endPoint.OppositeObjectID, Is.EqualTo(DomainObjectIDs.Order3)); Assert.That(_endPoint.HasChanged, Is.True); }
public static ObjectEndPoint CreateObjectEndPoint(RelationEndPointID endPointID, ObjectID oppositeObjectID) { if (endPointID.Definition.IsVirtual) { var clientTransaction = ClientTransaction.Current; VirtualObjectEndPoint endPoint = CreateVirtualObjectEndPoint(endPointID, clientTransaction); endPoint.MarkDataComplete(LifetimeService.GetObjectReference(clientTransaction, oppositeObjectID)); return(endPoint); } else { var endPoint = CreateRealObjectEndPoint(endPointID); RealObjectEndPointTestHelper.SetValueViaDataContainer(endPoint, oppositeObjectID); endPoint.Commit(); return(endPoint); } }
public void GetOppositeObject_NotFound() { var objectID = new ObjectID(typeof(Order), Guid.NewGuid()); RealObjectEndPointTestHelper.SetOppositeObjectID(_endPoint, objectID); var oppositeObject = _endPoint.GetOppositeObject(); Assert.That(oppositeObject.ID, Is.EqualTo(objectID)); Assert.That(oppositeObject.State, Is.EqualTo(StateType.NotLoadedYet), "Data has not been loaded"); Assert.That(() => oppositeObject.EnsureDataAvailable(), Throws.TypeOf <ObjectsNotFoundException>()); var oppositeObject2 = _endPoint.GetOppositeObject(); Assert.That(oppositeObject2.ID, Is.EqualTo(objectID)); Assert.That(oppositeObject2.State, Is.EqualTo(StateType.Invalid), "Data has not been found"); }
public void CreateDeleteCommand() { var fakeResult = MockRepository.GenerateStub <IDataManagementCommand> (); Action oppositeObjectSetter = null; _syncStateMock .Expect(mock => mock.CreateDeleteCommand(Arg.Is(_endPoint), Arg <Action> .Is.Anything)) .Return(fakeResult) .WhenCalled(mi => { oppositeObjectSetter = (Action)mi.Arguments[1]; }); _syncStateMock.Replay(); var result = _endPoint.CreateDeleteCommand(); _syncStateMock.VerifyAllExpectations(); Assert.That(result, Is.SameAs(fakeResult)); RealObjectEndPointTestHelper.SetValueViaDataContainer(_endPoint, DomainObjectIDs.Order1); Assert.That(_endPoint.OppositeObjectID, Is.Not.Null); oppositeObjectSetter(); Assert.That(_endPoint.OppositeObjectID, Is.Null); }
public void GetOriginalOppositeObject_Null() { RealObjectEndPointTestHelper.SetOppositeObjectID(_endPoint, DomainObjectIDs.Order5); Assert.That(_endPoint.GetOriginalOppositeObject(), Is.Null); }