public void FailsIfWeTryToAddMigrationThatShouldHaveBeenExecutedBefore() { var database = MongoTest.GetCleanTestDatabase(); var step2 = new InterleavingMigration2(); var fullListOfSteps = new IStep[] { new InterleavingMigration1(), step2, new InterleavingMigration3(), }; var listMissingMiddleStep = fullListOfSteps.Except(new[] { step2 }); new Migrator(database, listMissingMiddleStep, DefaultOptions).Execute(); var exception = Assert.Throws <ArgumentException>(() => new Migrator(database, fullListOfSteps, DefaultOptions).Execute()); Console.WriteLine(exception); }