debian-mirror-gitlab/spec/support/helpers/database/database_helpers.rb
2021-03-08 18:12:59 +05:30

15 lines
444 B
Ruby

# frozen_string_literal: true
module Database
module DatabaseHelpers
# In order to directly work with views using factories,
# we can swapout the view for a table of identical structure.
def swapout_view_for_table(view)
ActiveRecord::Base.connection.execute(<<~SQL)
CREATE TABLE #{view}_copy (LIKE #{view});
DROP VIEW #{view};
ALTER TABLE #{view}_copy RENAME TO #{view};
SQL
end
end
end