0

Rails 3.2でカピバラ/rspec/selenium/devise_invitableを使用しています

この仕様を参照してください。ユーザーを招待し、招待 URL をメールで送信します。メール本文からinvitation_tokenを抽出し、以下のように招待を受け入れるURLにアクセスしようとしています。('/users/invitation/accept?' + inv_token )

参考までに: :js => true を設定しないと機能します

require 'spec_helper'

    describe "LoginSpec" do
    it "Click enquiries tabs", :js => true do 
        build(:user) do |user|
                user.invite!
                last_email.to.should include(user.email)
                inv_url = Capybara.string(last_email.body.encoded).first(".inbox > a")[:href]
                inv_token = inv_url.split("?")[1]
                inv_url_final = '/users/invitation/accept?' + inv_token   
                visit inv_url_final
        end
    end
    end

しかし、これは常に「/users/sign_in」にリダイレクトされます。ここにテストログがあります。

Started GET "/users/invitation/accept?invitation_token=Ww-y2QbgsswZCgovAzWx" for 127.0.0.1 at 2014-01-30 04:47:14 +0530
    Processing by Users::InvitationsController#edit as HTML
      Parameters: {"invitation_token"=>"Ww-y2QbgsswZCgovAzWx"}
      [1m[36mUser Load (0.7ms)[0m  [1mSELECT `users`.* FROM `users` WHERE `users`.`invitation_token` = 'e75e32adac5414243930d19e927c8a6275c404b8296757e77dc4a49b2593882a' LIMIT 1[0m
      [1m[35mUser Load (0.6ms)[0m  SELECT `users`.* FROM `users` WHERE `users`.`invitation_token` = 'Ww-y2QbgsswZCgovAzWx' LIMIT 1
    Redirected to http://127.0.0.1:56113/
    Filter chain halted as :resource_from_invitation_token rendered or redirected

何か助けはありますか?

4

1 に答える 1