public void GetMigrationScripts_CalculatesCorrectChecksum() { var repo = new ScriptFileRepository(new DirectoryInfo(".\\Scripts\\UnitTests")); var script = repo.GetScripts(ScriptKind.Migration).First(); var checksum = script.Checksum; Assert.AreEqual("9049690C31B0E6106EB20FB6ADCB6F12", checksum); }
public void GetMigrationScripts_ReturnsMigrations() { var repo = new ScriptFileRepository(new DirectoryInfo(".\\Scripts\\UnitTests"), null, null); var migrations = repo.GetScripts(ScriptKind.Migration).Select(s => s.ScriptName).ToArray(); CollectionAssert.AreEquivalent( new[]{"001.sql", "002.sql", "003.sql"}, migrations ); }
public void GetOtherScripts_ReturnsScripts() { var repo = new ScriptFileRepository(new DirectoryInfo(".\\Scripts\\UnitTests")); var scripts = repo.GetScripts(ScriptKind.PostMigration).Select(s => new{FolderName = s.Collection, s.ScriptName}).ToArray(); var expected = new[] { @"01\001.sql", @"01\002.sql", @"02\001.sql", @"02\002.sql", @"02\003.sql" }.Select(s => new{FolderName = "DataLoads", ScriptName = s}).ToArray(); CollectionAssert.AreEquivalent( expected, scripts ); }
private static IMigrationManager CreateMigrationManager(Config config, IDb db, DbQueries queryConfig) { var database = new Database(db, queryConfig); var folder = new DirectoryInfo(config.Directory); var scripts = new ScriptFileRepository(folder, config.PreMigration, config.PostMigration); var manager = new MigrationManager(scripts, database, Logger); return manager; }