コントローラーに次のコードがあります。
# guest to user sign up view. Method that prepares a guest to become a user by emptying it's generic
#e-mail address.
def guest_signup
if !current_user.guest
redirect_to root_url
end
@user = current_user
@user.email = ""
end
このコントローラーは、結果 (フォーム) の入力フィールドに、ユーザーがアプリケーションをゲストとして使用しているときに割り当てられる一般的な電子メール アドレスがないことを確認するだけです。
私はそのためのrspecテストを書こうとしていますが、それを適切に行う方法がわかりません...これは逆ではなく開発主導のテストのように聞こえるかもしれませんが、アイデアが必要です。現在、私はこれが機能しません:
require 'spec_helper'
describe UsersController do
describe "Guest Signup" do
it "should prepare guest with random e-mail user for signup form, emptying the e-mail" do
current_user = User.create(:email => "guest_#{Time.now.to_i}#{rand(99)}@example.com", :password => "#{Time.now.to_i}#{rand(99999999)}", :guest => true)
get :guest_signup, :user => @user.id
expect(@user.email).to eq ('')
end
end
end