public void ValidateMigrationNamingConventions() { // Arrange long oldVer = 0; var migrator = new LiteMigration(Assembly.GetExecutingAssembly(), _baseNamespace); // Act var items = migrator.Migrations.GetSortedMigrations(); // Assert System.Diagnostics.Debug.Print("=============="); System.Diagnostics.Debug.Print("===[ GetSortedMigrationsTest"); bool found = false; foreach (var item in items) { Assert.IsTrue(item.Key > oldVer); oldVer = item.Key; System.Diagnostics.Debug.Print($"==> version: '{item.Key}' Name: '{item.Value}"); found = true; } Assert.IsTrue(found, "No migration scripts found"); }
public void GetMigrationScriptVerionTest() { var resourceAssm = Assembly.GetExecutingAssembly(); var migrator = new LiteMigration(resourceAssm, _baseNamespace); var results = migrator.Migrations.GetMigrationScriptByVersion(_scriptRevision, out string sql); // Assert Assert.IsTrue(results); Assert.IsTrue(!string.IsNullOrEmpty(sql)); Assert.IsNotNull(sql); }
public void GetMigrationScriptTest() { var assm = Assembly.GetExecutingAssembly(); var migrator = new LiteMigration(assm, _baseNamespace); // Sample: "Xeno.MyProject.Client.Business.Migrations.201909150000-BaseDDL.sql" bool success = migrator.Migrations.GetMigrationScriptByName(_script001, out string data); Assert.IsTrue(success); Assert.IsNotNull(data); Assert.IsTrue(data.Length > 0, "Could not read migration script"); }
public void GetResourceNamedTest() { // Arrange var resourceAssm = Assembly.GetExecutingAssembly(); var migrator = new LiteMigration(resourceAssm, _baseNamespace); // Act string data = migrator.Migrations.GetResourceNamed(_scriptName); // Assert Assert.IsNotNull(data); Assert.IsTrue(data.Length > 0); }
public void GetMigrationScriptNamedTest() { // Arrange var resourceAssm = Assembly.GetExecutingAssembly(); var migrator = new LiteMigration(resourceAssm, _baseNamespace); // Act string ns = migrator.Migrations.GetResourceNamed(_scriptName); migrator.Migrations.GetMigrationScriptByName(ns, out string sql); // Assert Assert.IsTrue(!string.IsNullOrEmpty(ns)); Assert.IsTrue(!string.IsNullOrEmpty(sql)); Assert.IsNotNull(sql); }
public async Task AllMigrationsAreNotInstalledTestAsync() { // Get not installed scripts. // returns sorted list of IMigration with namespace path to resource ClearVersionInfo(); var resourceAssm = Assembly.GetExecutingAssembly(); var mig = new LiteMigration(TempDatabasePath, resourceAssm, _baseNamespace); var allMigs = mig.Migrations.GetSortedMigrations(); var missing = await mig.GetMissingMigrationsAsync(); Assert.IsTrue(allMigs.Count > 0); Assert.IsNotNull(missing); Assert.AreEqual(allMigs.Count, missing.Count); }
public void GetResourcesTests() { // Arrange var migrator = new LiteMigration(Assembly.GetExecutingAssembly(), _baseNamespace); // Act var items = migrator.Migrations.GetResources(); // Assert System.Diagnostics.Debug.Print("======================"); System.Diagnostics.Debug.Print("===[ GetResourcesTests"); foreach (var item in items) { System.Diagnostics.Debug.Print("==> " + item); } Assert.IsTrue(items.Count > 0, $"Not migration scripts found in namespace, '{_baseNamespace}'"); }
public async Task InstallMigrationsTestAsync() { DeleteDatabase(); var resourceAssm = Assembly.GetExecutingAssembly(); var mig = new LiteMigration(TempDatabasePath, resourceAssm, _baseNamespace); var allMigs = mig.Migrations.GetSortedMigrations(); var missing = await mig.GetMissingMigrationsAsync(); Assert.IsTrue(allMigs.Count > 0); Assert.IsNotNull(missing); Assert.AreEqual(allMigs.Count, missing.Count); // Act bool success = await mig.MigrateUpAsync(); // Assert Assert.IsTrue(success, mig.LastError); missing = await mig.GetMissingMigrationsAsync(); Assert.AreEqual(0, missing.Count); }