0

我目前有类似的东西:

it 'assigns @competition' do
  expect(assigns(:competition)).to be_a_new(Competition)
end

是否有使用it { should ... }类型语法的较短版本?

4

2 回答 2

3

我不知道它更短,但你可以使用:

subject {assigns(:competition)}
it {should be_a_new(Competition)}

或者您可以使用:

it {expect(assigns(:competition)).to be_a_new(Competition)}

在这两种情况下,缩短都来自于字符串参数的消除it,这与 . 的使用无关should

于 2013-09-25T15:18:44.783 回答
1

现在,RSpec 文档建议使用is_expected.to,如:

describe [1, 2, 3] do
  it { is_expected.to be_an Array }
  it { is_expected.not_to include 4 }
end

参看。http://www.rubydoc.info/gems/rspec-core/RSpec/Core/MemoizedHelpers#is_expected-instance_method

于 2015-01-15T17:16:38.470 回答