Ruby on rails 3 cumber、rails和会话变量
我正在实现两步登录。在第一步中,用户必须输入其电子邮件+密码。如果正确,则生成一个随机字符串,存储在会话中并发送到帐户持有人的手机 我想知道如何从我的步骤定义中访问会话变量,或者如何捕获随机字符串,以便我可以在表单中使用fill,并在用户使用它时测试整个登录。字符串不存储在模型中,因为它只是临时的 谢谢,Ruby on rails 3 cumber、rails和会话变量,ruby-on-rails-3,cucumber,session-variables,Ruby On Rails 3,Cucumber,Session Variables,我正在实现两步登录。在第一步中,用户必须输入其电子邮件+密码。如果正确,则生成一个随机字符串,存储在会话中并发送到帐户持有人的手机 我想知道如何从我的步骤定义中访问会话变量,或者如何捕获随机字符串,以便我可以在表单中使用fill,并在用户使用它时测试整个登录。字符串不存储在模型中,因为它只是临时的 谢谢, Corin将令牌生成器存根以返回一个固定字符串。我通过存根SMSGateway解决了这个问题。features/env.rb中的我的代码: require 'cucumber/rspec/do
Corin将令牌生成器存根以返回一个固定字符串。我通过存根SMSGateway解决了这个问题。features/env.rb中的我的代码:
require 'cucumber/rspec/doubles'
...
Before do |scenario|
@smsgateway_sent_text_messages = []
SMSGateway.stub(:send_text_message) do |message, phone_number|
@smsgateway_sent_text_messages << {
:phone_number => phone_number,
:message => message,
}
end
end
要求“cumber/rspec/double”
...
在做之前|情景|
@短信发送短信=[]
SMSGateway.stub(:发送文本消息)发送消息、电话号码|
@smsgateway\u发送了\u短信\u电话号码,
:message=>message,
}
结束
结束
这会管用,但我发现最好将SMSGateway存根,这样我也可以检查发送的整个消息。无论如何,谢谢!:)