diff options
author | Sean McGivern <sean@gitlab.com> | 2018-02-08 16:31:36 +0000 |
---|---|---|
committer | Sean McGivern <sean@gitlab.com> | 2018-02-08 16:31:36 +0000 |
commit | 77c1d87feabc6afcad3c3fce44c6884b54345a43 (patch) | |
tree | 1e5d9345f8864bd1fcbef3e42288c85a0097dae5 | |
parent | 6f7702bfb7fd3ec49fc679f5c84184e5600dedde (diff) | |
download | gitlab-ce-77c1d87feabc6afcad3c3fce44c6884b54345a43.tar.gz |
Make resetting column information overridable in EE
-rw-r--r-- | spec/support/migrations_helpers.rb | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/spec/support/migrations_helpers.rb b/spec/support/migrations_helpers.rb index ba4a1bee089..06322aa0586 100644 --- a/spec/support/migrations_helpers.rb +++ b/spec/support/migrations_helpers.rb @@ -25,14 +25,19 @@ module MigrationsHelpers clear_schema_cache! # Reset column information for the most offending classes **after** we - # migrated the schema up, otherwise, column information could be outdated - ActiveRecord::Base.descendants.each { |klass| klass.reset_column_information } + # migrated the schema up, otherwise, column information could be + # outdated. We have a separate method for this so we can override it in EE. + ActiveRecord::Base.descendants.each(&method(:reset_column_information)) # Without that, we get errors because of missing attributes, e.g. # super: no superclass method `elasticsearch_indexing' for #<ApplicationSetting:0x00007f85628508d8> ApplicationSetting.define_attribute_methods end + def reset_column_information(klass) + klass.reset_column_information + end + def previous_migration migrations.each_cons(2) do |previous, migration| break previous if migration.name == described_class.name |