Exemplo n.º 1
0
        private static object DeserializeInstance(Func <IParticipant>[] participantProviders, byte[] serializedData)
        {
            // Register a factory for deserialization in current (new) app domain.

            Assert.That(PipelineRegistry.HasInstanceProvider, Is.False);
            var defaultPipelineMock = MockRepository.GenerateStrictMock <IPipeline>();

            defaultPipelineMock.Stub(_ => _.ParticipantConfigurationID).Return("Mock Default Pipeline");
            IPipelineRegistry pipelineRegistry = new DefaultPipelineRegistry(defaultPipelineMock);

            PipelineRegistry.SetInstanceProvider(() => pipelineRegistry);

            var participants = participantProviders.Select(pp => pp()).Concat(new[] { new ModifyingParticipant() });
            // Avoid no-modification optimization.
            var pipeline = new DefaultPipelineFactory().Create(c_participantConfigurationID, participants.ToArray());

            pipelineRegistry.Register(pipeline);

            try
            {
                return(Serializer.Deserialize(serializedData));
            }
            finally
            {
                PipelineRegistryTestHelper.ResetPipelineRegistry();
            }
        }
Exemplo n.º 2
0
        public void SetUp()
        {
            _defaultPipeline = CreatePipelineStub("default id");

            _registry = new DefaultPipelineRegistry(_defaultPipeline);

            _somePipeline = CreatePipelineStub("some id");
        }
Exemplo n.º 3
0
        public override void SetUp()
        {
            base.SetUp();

            var remixParticipant   = new MixinParticipant();
            var restoreParticipant = new DomainObjectParticipant();

            _pipeline = SafeServiceLocator.Current.GetInstance <IPipelineFactory>().Create("DomainObjectCreatorTest", remixParticipant, restoreParticipant);
            var pipelineRegistry = new DefaultPipelineRegistry(_pipeline);

            _domainObjectCreator = new DomainObjectCreator(pipelineRegistry);

            _transaction = ClientTransaction.CreateRootTransaction();
            _order1InitializationContext = CreateFakeInitializationContext(DomainObjectIDs.Order1, _transaction);
            var objectID = new ObjectID(typeof(TargetClassForPersistentMixin), Guid.NewGuid());

            _targetClassForPersistentMixinInitializationContext = CreateFakeInitializationContext(objectID, _transaction);
        }