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(); } }
public void SetUp() { _defaultPipeline = CreatePipelineStub("default id"); _registry = new DefaultPipelineRegistry(_defaultPipeline); _somePipeline = CreatePipelineStub("some id"); }
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); }