1

各サイトが複数のドメインを持つことができるマルチドメイン アプリケーションがあります (ロケール用)。

ApplicationControllerがやっている

def load_site
  @site = Site.find_by!("domains like '%#{request.host}%'")
end

私のテストスイートでは、ウェブサイトが表示されていることを確認したいだけです

仕様/機能/user_visits_homepage_spec.rb

require "rails_helper"

feature "User visits Homepage" do
  site = FactoryGirl.create :site
  scenario "successfully", js: true do
    visit root_path
    expect(page).to have_css "h1", text: site.name
  end
end

私のdatabase_cleaner.rb

RSpec.configure do |config|

  config.before(:suite) do
    DatabaseCleaner.clean_with(:truncation)
  end

  config.before(:each) do
    DatabaseCleaner.strategy = :transaction
  end

  config.before(:each, js: true) do
    DatabaseCleaner.strategy = :truncation
  end

  config.before(:each) do
    DatabaseCleaner.start
  end

  config.after(:each) do
    DatabaseCleaner.clean
  end

end

質問

サイトがないとコントローラーが機能しないため、常に1つのサイトがあることをどのように保証できますか。

私が行ったようにサイトを作成すると、database_cleaner は常にサイトを強制終了します。

私は間違った理解を持っていますか、それとも何かを見逃していますか?

4

1 に答える 1