Browse Source

Improve DB seeding (#556)

* Improve DB seeding

* Don't seed LA Rent Ranges in test
pull/560/head
baarkerlounger 3 years ago committed by GitHub
parent
commit
fdd8ee6c42
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 2
      app/models/form_handler.rb
  2. 55
      db/seeds.rb
  3. 2
      lib/tasks/rent_ranges.rake

2
app/models/form_handler.rb

@ -20,7 +20,7 @@ private
forms = {}
directories.each do |directory|
Dir.glob("#{directory}/*.json").each do |form_path|
form_name = form_path.sub(".json", "").split("/")[-1]
form_name = File.basename(form_path, ".json")
forms[form_name] = Form.new(form_path, form_name)
end
end

55
db/seeds.rb

@ -6,7 +6,8 @@
# movies = Movie.create([{ name: 'Star Wars' }, { name: 'Lord of the Rings' }])
# Character.create(name: 'Luke', movie: movies.first)
org = Organisation.create!(
# rubocop:disable Rails/Output
org = Organisation.find_or_create_by!(
name: "DLUHC",
address_line1: "2 Marsham Street",
address_line2: "London",
@ -15,19 +16,43 @@ org = Organisation.create!(
other_stock_owners: "None",
managing_agents: "None",
provider_type: "LA",
)
User.create!(
email: "test@example.com",
password: "password",
organisation: org,
role: "data_provider",
)
) do
info = "Seeded DLUHC Organisation"
if Rails.env.development?
pp info
else
Rails.logger.info info
end
end
User.create!(
email: "coordinator@example.com",
password: "password",
organisation: org,
role: "data_coordinator",
)
if Rails.env.development? && User.count.zero?
User.create!(
email: "provider@example.com",
organisation: org,
role: "data_provider",
)
AdminUser.create!(email: "admin@example.com", password: "password", phone: "000000000")
User.create!(
email: "coordinator@example.com",
password: "password",
organisation: org,
role: "data_coordinator",
)
User.create!(
email: "support@example.com",
password: "password",
organisation: org,
role: "support",
)
pp "Seeded 3 dummy users"
end
if LaRentRange.count.zero? && !Rails.env.test?
Dir.glob("config/rent_range_data/*.csv").each do |path|
start_year = File.basename(path, ".csv")
Rake::Task["data_import:rent_ranges"].invoke(start_year, path)
end
end
# rubocop:enable Rails/Output

2
lib/tasks/rent_ranges.rake

@ -24,6 +24,6 @@ namespace :data_import do
)
count += 1
end
pp "Created/updated #{count} records" unless Rails.env.test?
pp "Created/updated #{count} LA Rent Range records" unless Rails.env.test?
end
end

Loading…
Cancel
Save