gpt4 book ai didi

ruby-on-rails - 使用新的Rspec语法测试CanCan中的功能

转载 作者:行者123 更新时间:2023-12-04 05:31:50 24 4
gpt4 key购买 nike

我正在学习RSpec,在理解共享主题以及它如何与新的Expect语法一起工作时遇到了一些麻烦。

我遵循了tutorial from the cancan wiki,但是我不知道如何测试用户何时不应该使用相同的语法执行操作。

user_spec.rb:

require 'spec_helper'
require "cancan/matchers"

describe User do

describe 'abilities' do
let(:user) { FactoryGirl.create(:user) }
let(:ability) { FactoryGirl.create(:user) }

subject(:ability) { Ability.new(user) }

it { should be_able_to :read, User.new }

# clunky expectation
it 'should not be able to destroy others' do
expect(ability).not_to be_able_to(:destroy, User.new)
end
end
end


我想做的是写一个期望像

it { should not be_able_to :delete, User.new }


我要解决这个错误吗?

最佳答案

您可以在缩短的版本中使用should_not语法:

it { should_not be_able_to :delete, User.new }


或者,使用RSpec 3的同义词:

it { is_expected.not_to be_able_to :delete, User.new }

关于ruby-on-rails - 使用新的Rspec语法测试CanCan中的功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19706348/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com