私は現在、レールテストの長い旅の終わりにいますが、サブドメインで動作するリクエスト仕様を取得する方法については頭を悩ましています。capybara/rspecのサブドメインをテストします
開発中、私は、すべての罰金とダンディーのようなURLを持つpowを使用しています:http://teddanson.myapp.dev/account
テストでは、私はカピバラにローカルホストhttp://127.0.0.1:50568/account
を返すようにしましたが、これは明らかにサブドメイン全体のものでうまくいきません。サブドメインを必要としないアプリの公開部分はうまく動作しますが、特定のユーザーのサブドメインアカウントにアクセスする方法は私の外です。
関連するルート
は、これらのメソッドを介してアクセスされていますclass Public
def self.matches?(request)
request.subdomain.blank? || request.subdomain == 'www'
end
end
class Accounts
def self.matches?(request)
request.subdomain.present? && request.subdomain != 'www'
end
end
私は狂気の丸薬を取っているように私は感じるので、誰も私を助けるために何かアドバイスや提案を持っている場合は、非常に、非常に素晴らしいことです。ご協力いただきありがとうございます!
詳細なとエレガントな解決策を37signalsのを使用してxip.io.ありがとうございました! @cmaitchison – BenU
元の記事の著者はxip.ioを使用しています。しかし、それはそのようなテストがインターネット接続を必要とすることを意味し、それがなければ落ちるでしょう!また、テストスーツを遅くする必要があるのは、サブドメインを使用した各テストで最初にサイトに移動するためです。 – ExiRe