public void EndPointLoader_Serializable()
        {
            var endPointLoader = new VirtualObjectEndPoint.EndPointLoader(new SerializableLazyLoaderFake());

            var deserializedInstance = FlattenedSerializer.SerializeAndDeserialize(endPointLoader);

            Assert.That(deserializedInstance.LazyLoader, Is.Not.Null);
        }
        public void EndPointLoader_LoadEndPointAndGetNewState()
        {
            var endPointLoader = new VirtualObjectEndPoint.EndPointLoader(_lazyLoaderMock);
            var loadStateFake  = MockRepository.GenerateStub <IVirtualObjectEndPointLoadState>();

            _lazyLoaderMock
            .Expect(mock => mock.LoadLazyVirtualObjectEndPoint(_endPointID))
            .WhenCalled(mi => VirtualObjectEndPointTestHelper.SetLoadState(_endPoint, loadStateFake));

            _lazyLoaderMock.Replay();

            var result = endPointLoader.LoadEndPointAndGetNewState(_endPoint);

            _lazyLoaderMock.VerifyAllExpectations();
            Assert.That(result, Is.SameAs(loadStateFake));
        }