public void CreateClientTransactionExtensions() { var firstExtensions = new[] { MockRepository.GenerateStub <IPersistenceExtension>(), MockRepository.GenerateStub <IPersistenceExtension>() }; var secondExtensions = new[] { MockRepository.GenerateStub <IPersistenceExtension>(), MockRepository.GenerateStub <IPersistenceExtension>() }; var innerFactories = new[] { MockRepository.GenerateStub <IPersistenceExtensionFactory>(), MockRepository.GenerateStub <IPersistenceExtensionFactory>() }; var clientTransactionID = Guid.NewGuid(); innerFactories[0].Stub(_ => _.CreatePersistenceExtensions(clientTransactionID)).Return(firstExtensions); innerFactories[1].Stub(_ => _.CreatePersistenceExtensions(clientTransactionID)).Return(secondExtensions); var compoundFactory = new CompoundPersistenceExtensionFactory(innerFactories); var extensions = compoundFactory.CreatePersistenceExtensions(clientTransactionID); Assert.That(extensions, Is.EqualTo(firstExtensions.Concat(secondExtensions))); }
public void Initialize() { var innerFactories = new[] { MockRepository.GenerateStub <IPersistenceExtensionFactory>(), MockRepository.GenerateStub <IPersistenceExtensionFactory>() }; var compoundFactory = new CompoundPersistenceExtensionFactory(innerFactories); Assert.That(compoundFactory.PersistenceExtensionFactories, Is.Not.SameAs(innerFactories)); Assert.That(compoundFactory.PersistenceExtensionFactories, Is.EqualTo(innerFactories)); }