public void FlattenedSerializable()
        {
            var data = new VirtualObjectEndPointDataManager(_endPointID);

            var endPointFake = new SerializableRealObjectEndPointFake(null, DomainObjectMother.CreateFakeObject <Order> (DomainObjectIDs.Order1));

            data.RegisterOriginalOppositeEndPoint(endPointFake);

            var deserializedInstance = FlattenedSerializer.SerializeAndDeserialize(data);

            Assert.That(deserializedInstance.EndPointID, Is.Not.Null);
            Assert.That(deserializedInstance.OriginalOppositeEndPoint, Is.Not.Null);
            Assert.That(deserializedInstance.OriginalOppositeObject, Is.Not.Null);
            Assert.That(deserializedInstance.CurrentOppositeEndPoint, Is.Not.Null);
            Assert.That(deserializedInstance.CurrentOppositeObject, Is.Not.Null);
        }
        public void RegisterOriginalOppositeEndPoint()
        {
            _dataManager.RegisterOriginalOppositeEndPoint(_oppositeEndPointStub);

            Assert.That(_dataManager.OriginalOppositeEndPoint, Is.SameAs(_oppositeEndPointStub));
            Assert.That(_dataManager.CurrentOppositeEndPoint, Is.SameAs(_oppositeEndPointStub));
            Assert.That(_dataManager.CurrentOppositeObject, Is.SameAs(_oppositeObject));
            Assert.That(_dataManager.OriginalOppositeObject, Is.SameAs(_oppositeObject));
        }