Sha256: feb9d51851150658360cebc3e83fbcc0be9da4cf4ce139c4a51f28bef6749e77

Contents?: true

Size: 882 Bytes

Versions: 36

Compression:

Stored size: 882 Bytes

Contents

# frozen_string_literal: true

# polyfill Rails >= 5 versioned migrations

unless ActiveRecord::Migration.respond_to?(:[])
  module ActiveRecord
    class Migration
      def self.[](_version)
        self
      end
    end
  end
end

module MigrationDatabaseHelper
  def json_supported_database?
    (postgres? && postgres_correct_version?) || (mysql? && mysql_correct_version?)
  end

  def postgres?
    database_name == 'ActiveRecord::ConnectionAdapters::PostgreSQLAdapter'
  end

  def postgres_correct_version?
    database_version > '9.3'
  end

  def mysql?
    database_name == 'ActiveRecord::ConnectionAdapters::MysqlAdapter'
  end

  def mysql_correct_version?
    database_version > '5.7.7'
  end

  def database_name
    ActiveRecord::Base.connection.class.name
  end

  def database_version
    ActiveRecord::Base.connection.select_value('SELECT VERSION()')
  end
end

Version data entries

36 entries across 36 versions & 9 rubygems

Version Path
devise_token_auth-1.2.5 test/dummy/lib/migration_database_helper.rb
devise_jwt_auth722-0.1.7 test/dummy/lib/migration_database_helper.rb
devise_jwt_auth7-0.1.7 test/dummy/lib/migration_database_helper.rb
devise_token_auth-1.2.4 test/dummy/lib/migration_database_helper.rb
devise_token_auth-1.2.2 test/dummy/lib/migration_database_helper.rb
devise_jwt_auth-0.4.1 test/dummy/lib/migration_database_helper.rb
devise_jwt_auth-0.4.0 test/dummy/lib/migration_database_helper.rb
devise_jwt_auth-0.3.0 test/dummy/lib/migration_database_helper.rb
devise_token_auth-1.2.1 test/dummy/lib/migration_database_helper.rb
devise_jwt_auth-0.2.0 test/dummy/lib/migration_database_helper.rb
devise_token_auth-1.2.0 test/dummy/lib/migration_database_helper.rb
devise_token_auth-1.1.5 test/dummy/lib/migration_database_helper.rb
sidecar_token_auth-1.0.1 test/dummy/lib/migration_database_helper.rb
devise_jwt_auth-0.1.7 test/dummy/lib/migration_database_helper.rb
devise_jwt_auth-0.1.6 test/dummy/lib/migration_database_helper.rb
devise_token_auth-1.1.4 test/dummy/lib/migration_database_helper.rb
devise_token_auth_multitenancy-1.1.3.2 test/dummy/lib/migration_database_helper.rb
devise_token_auth_multitenancy-1.1.3.1 test/dummy/lib/migration_database_helper.rb
devise_token_auth_multitenancy-1.1.3.alpha1 test/dummy/lib/migration_database_helper.rb
devise_jwt_auth-0.1.5 test/dummy/lib/migration_database_helper.rb