summaryrefslogtreecommitdiff
path: root/config/initializers/ar_speed_up_migration_checking.rb
blob: 1fe5defc01dc8da1ea05d769e1f9f6a5306da48a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
if Rails.env.test?
  require 'active_record/migration'

  module ActiveRecord
    class Migrator
      class << self
        alias_method :migrations_unmemoized, :migrations

        # This method is called a large number of times per rspec example, and
        # it reads + parses `db/migrate/*` each time. Memoizing it can save 0.5
        # seconds per spec.
        def migrations(paths)
          @migrations ||= migrations_unmemoized(paths)
        end
      end
    end
  end
end