public void ConnectionStringProvider_should_return_connection_string_specified_in_the_configuration_file() { //Arrange var provider = new ConnectionStringConfigurationParameterProvider(); //Assert Assert.AreEqual(ConfigurationManager.ConnectionStrings["CSTest1"], provider.GetConnectionString("CSTest1")); }
public void ConnectionStringProvider_shuld_throw_ConfigurationErrorsException_when_name_does_not_exist() { //Arrange var provider = new ConnectionStringConfigurationParameterProvider(); //Assert Assert.Throws <ConfigurationErrorsException>(() => provider.GetConnectionString("ErrorTest1")); }
public void ConnectionStringProvider_exception_should_contain_ConnectionString_name() { //Arrange var parameterKey = "ErrorTest1"; var provider = new ConnectionStringConfigurationParameterProvider(); //Assert var exc = Assert.Throws <ConfigurationErrorsException>(() => provider.GetConnectionString(parameterKey)); exc.Message.Should().Contain(parameterKey); }
protected static WindsorContainer CreateContainerForEventStoreType(Func <IReadOnlyList <IEventMigration> > migrationsfactory, Type eventStoreType, string eventStoreConnectionString = null) { var container = new WindsorContainer(); container.ConfigureWiringForTestsCallBeforeAllOtherWiring(); container.Register( Component.For <IUtcTimeTimeSource, DummyTimeSource>() .Instance(DummyTimeSource.Now) .LifestyleSingleton(), Component.For <IServiceBus>() .ImplementedBy <SynchronousBus>() .LifestylePerWebRequest(), Component.For <IEnumerable <IEventMigration> >() .UsingFactoryMethod(migrationsfactory) .LifestylePerWebRequest(), Component.For <IEventStoreSession, IUnitOfWorkParticipant>() .ImplementedBy <EventStoreSession>() .LifestylePerWebRequest(), Component.For <IWindsorContainer>().Instance(container) ); if (eventStoreType == typeof(SqlServerEventStore)) { if (eventStoreConnectionString == null) { var masterConnectionSTring = new ConnectionStringConfigurationParameterProvider().GetConnectionString("MasterDB"); var dbManager = new TemporaryLocalDbManager(masterConnectionSTring.ConnectionString, container); eventStoreConnectionString = dbManager.CreateOrGetLocalDb($"{nameof(EventStreamMutatorTestsBase)}_EventStore"); } container.Register( Component.For <IEventStore>() .ImplementedBy <SqlServerEventStore>() .DependsOn(Dependency.OnValue <string>(eventStoreConnectionString)) .LifestyleScoped()); } else if (eventStoreType == typeof(InMemoryEventStore)) { container.Register( Component.For <IEventStore>() .UsingFactoryMethod( kernel => { var store = kernel.Resolve <InMemoryEventStore>(); store.TestingOnlyReplaceMigrations(migrationsfactory()); return(store); }) .LifestyleScoped(), Component.For <InMemoryEventStore>() .ImplementedBy <InMemoryEventStore>() .LifestyleSingleton()); } else { throw new Exception($"Unsupported type of event store {eventStoreType}"); } container.ConfigureWiringForTestsCallAfterAllOtherWiring(); return(container); }