1

需要一些帮助理解:

rspec-2中,每个示例和示例组都带有元数据信息,例如声明它的文件和行号、 传递给describeandit的参数等。这个元数据可以通过传递给describeor的散列参数附加到it,允许我们预先和以各种方式对每个示例进行后处理

https://github.com/rspec/rspec-core/blob/master/features/Upgrade.md«元数据!» 部分

我想要以下快捷方式:

describe 'DELETE destroy', :as => :admin do
  it 'destroys...' do
    # ...
  end
end

为了

describe 'DELETE destroy as admin' do
  before { login_as :admin }

  it 'destroys...' do
    # ...
  end
end

基于元数据的示例预处理/后处理是否适合这种情况,或者它是为诸如过滤之类的“外部”事物而制作的?

4

1 回答 1

0

我相信这应该有效:

spec_helper.rb

RSpec.configure do |config|
  config.before(:each, :as => :admin) do |example|
    login_as :admin
  end
end

:as => :admin然后,您的规范应该可以使用该选项按预期工作。另请参阅这篇文章

于 2012-10-30T03:49:34.950 回答