public MySqlTests() { Env = new CliEnvironment(); Logger = new CaptureLogsLogger(); Environment.SetEnvironmentVariable("CONNSTR", $"Server=127.0.0.1;Database={DbName};Uid=root;Pwd={Pwd};"); }
public void CanHandleDelimiter() { var logger = new CaptureLogsLogger(); var recordingDbConnection = new RecordingDbConnection(logger, "schemaversions"); recordingDbConnection.SetupRunScripts(); var upgrader = DeployChanges.To .MySqlDatabase(string.Empty) .OverrideConnectionFactory(recordingDbConnection) .LogTo(logger) .WithScript("Script0003", @"USE `test`; DROP procedure IF EXISTS `testSproc`; DELIMITER $$ USE `test`$$ CREATE PROCEDURE `testSproc`( IN ssn VARCHAR(32) ) BEGIN SELECT id FROM customer as c WHERE c.ssn = ssn ; END$$").Build(); var result = upgrader.PerformUpgrade(); result.Successful.ShouldBe(true); this.Assent(logger.Log, new Configuration().UsingSanitiser(Scrubbers.ScrubDates)); }
public SqlServerTests() { Env = new CliEnvironment(); Logger = new CaptureLogsLogger(); Environment.SetEnvironmentVariable("CONNSTR", "Data Source=127.0.0.1;Initial Catalog=DbUp;Persist Security Info=True;User ID=sa;Password=SaPwd2017"); }
public PostgreSqlTests() { Env = new CliEnvironment(); Logger = new CaptureLogsLogger(); Environment.SetEnvironmentVariable("CONNSTR", "Host=127.0.0.1;Database=dbup;Username=postgres;Password=PostgresPwd2019;Port=5432"); }
public RecordingDbCommand(CaptureLogsLogger logger, ExecutedSqlScript[] runScripts, string schemaTableName, Dictionary <string, Func <object> > scalarResults, Dictionary <string, Func <int> > nonQueryResults) { this.logger = logger; this.runScripts = runScripts; this.schemaTableName = schemaTableName; this.scalarResults = scalarResults; this.nonQueryResults = nonQueryResults; Parameters = new RecordingDataParameterCollection(logger); }
public void logs_output_when_configured_to() { var dbConnection = Substitute.For <IDbConnection>(); var command = Substitute.For <IDbCommand>(); var reader = Substitute.For <IDataReader>(); reader.FieldCount.Returns(2); reader.GetName(Arg.Is(0)).Returns("One"); reader.GetName(Arg.Is(1)).Returns("Two"); reader.GetName(Arg.Is <int>(i => i < 0 || i > 1)).Throws(new ArgumentOutOfRangeException("i")); reader.Read().Returns(true, false); reader.GetValue(Arg.Is(0)).Returns("A"); reader.GetValue(Arg.Is(1)).Returns("B"); reader.NextResult().Returns(false); command.ExecuteReader().Returns(reader); var logger = new CaptureLogsLogger(); dbConnection.CreateCommand().Returns(command); var executor = new SqlScriptExecutor(() => new TestConnectionManager(dbConnection, true) { IsScriptOutputLogged = true }, () => logger, "foo", () => true, null, () => Substitute.For <IJournal>()); executor.Execute(new SqlScript("Test", "SELECT * FROM $schema$.[Table]")); command.Received().ExecuteReader(); command.DidNotReceive().ExecuteNonQuery(); command.CommandText.ShouldBe("SELECT * FROM [foo].[Table]"); logger.Log.Trim() .ShouldBe(string.Join(Environment.NewLine, new[] { "Info: Executing Database Server script 'Test'", "Info: -------------", "Info: | One | Two |", "Info: -------------", "Info: | A | B |", "Info: -------------", "Info:" })); }
public ConfigurationHelperTests() { scripts = new List <SqlScript> { new SqlScript("Script1.sql", "create table Foo (Id int identity)") //new SqlScript("Script2.sql", "alter table Foo add column Name varchar(255)"), //new SqlScript("Script3.sql", "insert into Foo (Name) values ('test')") }; logger = new CaptureLogsLogger(); recordingConnection = new RecordingDbConnection(logger, "SchemaVersions"); testConnectionFactory = new DelegateConnectionFactory(_ => recordingConnection); upgradeEngineBuilder = DeployChanges.To .SqlDatabase("testconn") .WithScripts(new TestScriptProvider(scripts)) .OverrideConnectionFactory(testConnectionFactory) .LogTo(logger); }
public override OracleTableJournal Given() { dbConnection = Substitute.For <IDbConnection>(); dbCommand = Substitute.For <IDbCommand>(); dbCommand.ExecuteScalar().Returns(1); log = new CaptureLogsLogger(); var table = new DataTable(); table.Columns.Add("column", Type.GetType("System.String")); var row = table.NewRow(); row["column"] = "id"; table.Rows.Add(row); var fakeReader = new FakeReader(table); dbCommand.ExecuteReader().Returns(fakeReader); dbConnection.CreateCommand().Returns(dbCommand); var connectionManager = new TestConnectionManager(dbConnection); var versionTracker = new OracleTableJournal(() => connectionManager, () => log, null, "history"); return(versionTracker); }
public ConfigLoaderTests() { Logger = new CaptureLogsLogger(); recordingConnection = new RecordingDbConnection(Logger, "SchemaVersions"); testConnectionFactory = new DelegateConnectionFactory(_ => recordingConnection); }
public RecordingDbConnection(CaptureLogsLogger logger, string schemaTableName) { this.logger = logger; this.schemaTableName = schemaTableName; }
public VariableSubstitutionTests() { Logger = new CaptureLogsLogger(); recordingConnection = new RecordingDbConnection(Logger, "SchemaVersions"); testConnectionFactory = new DelegateConnectionFactory(_ => recordingConnection); }
public RecordingDbTransaction(CaptureLogsLogger logger) { this.logger = logger; }