首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Sorcery无法登录RSpec

Sorcery无法登录RSpec
EN

Stack Overflow用户
提问于 2012-10-18 04:24:32
回答 1查看 368关注 0票数 0

我有一个使用魔法(或尝试使用它)的应用程序,我正在为它写规范:

代码语言:javascript
复制
context "successfull attempts to log in" do
  let(:attr) { attributes_for(:credentials) }

  before(:each) do
    @user = create(:user, attr)
  end

  it "should log the user in" do
    post :create, attr.merge(remember_me: false)
    controller.should be_logged_in
  end
end

下面是FactoryGirl工厂:

代码语言:javascript
复制
FactoryGirl.define do
  factory :user do
    email                 Faker::Internet.safe_email
    password              "password"
    password_confirmation { |u| u.password }
    client_id             1
  end

  factory :credentials, class: User do
    email       "user@example.com"
    password    "password"
  end
end

下面是控制器的操作:

代码语言:javascript
复制
class SessionsController < ApplicationController
  # ...
  def create
    login(params[:email], params[:email], params[:remember_me])
    flash.now[:error] = "Invalid email/password combination"
    render :new
  end
end

错误消息如下:

代码语言:javascript
复制
1) SessionsController POST 'create' successfull attempts to log in should log the user in
     Failure/Error: controller.should be_logged_in
       expected logged_in? to return true, got false
     # ./spec/controllers/sessions_controller_spec.rb:54:in `block (4 levels) in <top (required)>'

由于某些原因,规范总是失败。有人能给我解释一下为什么吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-10-19 00:13:52

您的控制器使用电子邮件作为用户名和密码,这看起来像是复制和粘贴错误。对吗?

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12942780

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档