public void IsDatabaseFullyUpgraded_returns_false_if_lazy_upgrader_throws_exception(IConnectionStringProvider connectionStringProvider, ILog logger) { // Arrange var sut = new SqliteDatabaseTester(new Lazy <IConnectionStringProvider>(() => connectionStringProvider), new Lazy <IPerformsDatabaseUpgrades>(() => { throw new Exception(); }), logger); // Act var result = sut.IsDatabaseFullyUpgraded(); // Assert Assert.That(result, Is.False); }
public void IsConnectionStringAvailable_returns_false_if_lazy_connection_string_provider_returns_null(IPerformsDatabaseUpgrades upgrader, ILog logger) { // Arrange var sut = new SqliteDatabaseTester(new Lazy <IConnectionStringProvider>(() => null), new Lazy <IPerformsDatabaseUpgrades>(() => upgrader), logger); // Act var result = sut.IsConnectionStringAvailable(); // Assert Assert.That(result, Is.False); }
public void IsConnectionStringAvailable_returns_false_if_connection_string_getter_throws_an_exception(IConnectionStringProvider connectionStringProvider, IPerformsDatabaseUpgrades upgrader, ILog logger) { // Arrange Mock.Get(connectionStringProvider).Setup(x => x.GetConnectionStringSettings()).Throws <Exception>(); var sut = new SqliteDatabaseTester(new Lazy <IConnectionStringProvider>(() => connectionStringProvider), new Lazy <IPerformsDatabaseUpgrades>(() => upgrader), logger); // Act var result = sut.IsConnectionStringAvailable(); // Assert Assert.That(result, Is.False); }
public void IsDatabaseConnectionPossible_returns_false_if_connection_string_is_null(IConnectionStringProvider connectionStringProvider, IPerformsDatabaseUpgrades upgrader, ILog logger) { // Arrange Mock.Get(connectionStringProvider).Setup(x => x.GetConnectionStringSettings()).Returns(() => null); var sut = new SqliteDatabaseTester(new Lazy <IConnectionStringProvider>(() => connectionStringProvider), new Lazy <IPerformsDatabaseUpgrades>(() => upgrader), logger); // Act var result = sut.IsDatabaseConnectionPossible(); // Assert Assert.That(result, Is.False); }
public void IsDatabaseFullyUpgraded_returns_true_if_upgrader_returns_empty_set_of_upgrades(IConnectionStringProvider connectionStringProvider, IPerformsDatabaseUpgrades upgrader, ILog logger) { // Arrange Mock.Get(upgrader).Setup(x => x.GetPendingUpgrades()).Returns(new IUpgradeName[0]); var sut = new SqliteDatabaseTester(new Lazy <IConnectionStringProvider>(() => connectionStringProvider), new Lazy <IPerformsDatabaseUpgrades>(() => upgrader), logger); // Act var result = sut.IsDatabaseFullyUpgraded(); // Assert Assert.That(result, Is.True); }
public void IsDatabaseFullyUpgraded_returns_false_if_upgrader_throws_exception(IConnectionStringProvider connectionStringProvider, IPerformsDatabaseUpgrades upgrader, ILog logger) { // Arrange Mock.Get(upgrader).Setup(x => x.GetPendingUpgrades()).Throws <Exception>(); var sut = new SqliteDatabaseTester(new Lazy <IConnectionStringProvider>(() => connectionStringProvider), new Lazy <IPerformsDatabaseUpgrades>(() => upgrader), logger); // Act var result = sut.IsDatabaseFullyUpgraded(); // Assert Assert.That(result, Is.False); }
public void IsDatabaseFullyUpgraded_returns_false_if_upgrader_returns_upgrades_to_be_done(IConnectionStringProvider connectionStringProvider, IPerformsDatabaseUpgrades upgrader, IUpgradeName upgrade, ILog logger) { // Arrange Mock.Get(upgrader).Setup(x => x.GetPendingUpgrades()).Returns(new [] { upgrade }); var sut = new SqliteDatabaseTester(new Lazy <IConnectionStringProvider>(() => connectionStringProvider), new Lazy <IPerformsDatabaseUpgrades>(() => upgrader), logger); // Act var result = sut.IsDatabaseFullyUpgraded(); // Assert Assert.That(result, Is.False); }
public void IsDatabaseConnectionPossible_returns_true_if_connection_string_is_valid(IConnectionStringProvider connectionStringProvider, IPerformsDatabaseUpgrades upgrader, ILog logger) { // Arrange var dataSource = validDbPath; var connectionString = GetSqliteConnectionString(dataSource); Mock.Get(connectionStringProvider) .Setup(x => x.GetConnectionStringSettings()) .Returns(() => new ConnectionStringSettings(ConnStringName, connectionString, providerName)); var sut = new SqliteDatabaseTester(new Lazy <IConnectionStringProvider>(() => connectionStringProvider), new Lazy <IPerformsDatabaseUpgrades>(() => upgrader), logger); // Act var result = sut.IsDatabaseConnectionPossible(); // Assert Assert.That(result, Is.True); }
public void IsDatabaseConnectionPossible_returns_false_if_connection_string_is_invalid(IConnectionStringProvider connectionStringProvider, IPerformsDatabaseUpgrades upgrader, ILog logger) { // Arrange // Note that this assumption would fail for Mono on Windows, but not important enough to over-engineer var dataSource = invalidDbPath; var invalidConnectionString = GetSqliteConnectionString(dataSource); Mock.Get(connectionStringProvider) .Setup(x => x.GetConnectionStringSettings()) .Returns(() => new ConnectionStringSettings(ConnStringName, invalidConnectionString, providerName)); var sut = new SqliteDatabaseTester(new Lazy <IConnectionStringProvider>(() => connectionStringProvider), new Lazy <IPerformsDatabaseUpgrades>(() => upgrader), logger); // Act var result = sut.IsDatabaseConnectionPossible(); // Assert Assert.That(result, Is.False); }