private MigrationCommandListBuilder CreateBuilder()
    {
        var typeMappingSource = new TestRelationalTypeMappingSource(
            TestServiceFactory.Instance.Create <TypeMappingSourceDependencies>(),
            TestServiceFactory.Instance.Create <RelationalTypeMappingSourceDependencies>());

        var logger           = new FakeRelationalCommandDiagnosticsLogger();
        var migrationsLogger = new FakeDiagnosticsLogger <DbLoggerCategory.Migrations>();
        var generationHelper = new RelationalSqlGenerationHelper(new RelationalSqlGenerationHelperDependencies());

        return(new MigrationCommandListBuilder(
                   new MigrationsSqlGeneratorDependencies(
                       new RelationalCommandBuilderFactory(
                           new RelationalCommandBuilderDependencies(
                               typeMappingSource,
                               new ExceptionDetector())),
                       new FakeSqlGenerator(
                           new UpdateSqlGeneratorDependencies(
                               generationHelper,
                               typeMappingSource)),
                       generationHelper,
                       typeMappingSource,
                       new CurrentDbContext(new FakeDbContext()),
                       new ModificationCommandFactory(),
                       new LoggingOptions(),
                       logger,
                       migrationsLogger)));
    }
        private MigrationCommandListBuilder CreateBuilder()
        {
            var typeMappingSource = new TestRelationalTypeMappingSource(
                TestServiceFactory.Instance.Create <TypeMappingSourceDependencies>(),
                TestServiceFactory.Instance.Create <RelationalTypeMappingSourceDependencies>());

            var logger           = new FakeDiagnosticsLogger <DbLoggerCategory.Database.Command>();
            var generationHelper = new RelationalSqlGenerationHelper(new RelationalSqlGenerationHelperDependencies());

            return(new MigrationCommandListBuilder(
                       new MigrationsSqlGeneratorDependencies(
                           new RelationalCommandBuilderFactory(typeMappingSource),
                           new FakeSqlGenerator(
                               new UpdateSqlGeneratorDependencies(
                                   generationHelper,
                                   typeMappingSource)),
                           generationHelper,
                           typeMappingSource,
                           logger)));
        }