public void FlattenedSerializable()
        {
            var state = new SynchronizedRealObjectEndPointSyncState(
                new SerializableRelationEndPointProviderFake(), new SerializableClientTransactionEventSinkFake());

            var result = FlattenedSerializer.SerializeAndDeserialize(state);

            Assert.That(result, Is.Not.Null);
            Assert.That(result.EndPointProvider, Is.Not.Null);
            Assert.That(result.TransactionEventSink, Is.Not.Null);
        }
        public override void SetUp()
        {
            base.SetUp();

            _endPointMock             = MockRepository.GenerateStrictMock <IRealObjectEndPoint>();
            _endPointProviderStub     = MockRepository.GenerateStub <IRelationEndPointProvider>();
            _transactionEventSinkStub = MockRepository.GenerateStub <IClientTransactionEventSink>();

            _state = new SynchronizedRealObjectEndPointSyncState(_endPointProviderStub, _transactionEventSinkStub);

            _order    = DomainObjectMother.CreateFakeObject <Order> ();
            _location = DomainObjectMother.CreateFakeObject <Location> ();

            _orderOrderTicketEndPointDefinition = GetRelationEndPointDefinition(typeof(Order), "OrderTicket");
            _locationClientEndPointDefinition   = GetRelationEndPointDefinition(typeof(Location), "Client");
            _orderCustomerEndPointDefinition    = GetRelationEndPointDefinition(typeof(Order), "Customer");

            _fakeSetter     = domainObject => { };
            _fakeNullSetter = () => { };
        }