Module: ActiveRecordDoctor::Utils

Defined in:
lib/active_record_doctor/utils.rb

Overview

:nodoc:

Class Method Summary collapse

Class Method Details

.expression_indexes_unsupported?(connection = ActiveRecord::Base.connection) ⇒ Boolean

Returns:

  • (Boolean)


14
15
16
17
18
# File 'lib/active_record_doctor/utils.rb', line 14

def expression_indexes_unsupported?(connection = ActiveRecord::Base.connection)
  (ActiveRecord::VERSION::STRING < "5.0") ||
    # Active Record is unable to correctly parse expression indexes for MySQL.
    (mysql?(connection) && ActiveRecord::VERSION::STRING < "7.1")
end

.mysql?(connection = ActiveRecord::Base.connection) ⇒ Boolean

Returns:

  • (Boolean)


10
11
12
# File 'lib/active_record_doctor/utils.rb', line 10

def mysql?(connection = ActiveRecord::Base.connection)
  connection.adapter_name == "Mysql2"
end

.postgresql?(connection = ActiveRecord::Base.connection) ⇒ Boolean

Returns:

  • (Boolean)


6
7
8
# File 'lib/active_record_doctor/utils.rb', line 6

def postgresql?(connection = ActiveRecord::Base.connection)
  ["PostgreSQL", "PostGIS"].include?(connection.adapter_name)
end