public void GetMigrationsAfterVersion()
        {
            var locator = new MigrationLocator();

            locator.LookForMigrationsInAssembly(Assembly.GetExecutingAssembly());
            var migrations = locator.GetMigrationsAfter(
                new AppliedMigration(new M20190718162300_TestCollectionMigration()));

            // check migrations are ordered
            migrations.Select(x => x.Version).Should().BeEquivalentTo(new[]
            {
                new MigrationVersion("M20190718163800_TestMigration")
            });
        }
        public void GetMigrationsAfterNull()
        {
            var locator = new MigrationLocator();

            locator.LookForMigrationsInAssembly(Assembly.GetExecutingAssembly());
            var migrations = locator.GetMigrationsAfter(null);

            // check migrations are ordered
            migrations.Select(x => x.Version).Should().BeEquivalentTo(new[]
            {
                new MigrationVersion("M20190718160124_WithoutAttributeMigration"),
                new MigrationVersion("M20190718162300_TestCollectionMigration"),
                new MigrationVersion("M20190718163800_TestMigration")
            }, opts => opts.WithStrictOrdering());
        }