在rubymotion中创建一个spec帮助器

jac*_*cob 6 specs rubymotion

我有一些常用的方法用于几个不同的规格,我想将它们提取到某个地方,如可以从所有规格访问的规范助手.有人知道怎么做吗?

art*_*ave 1

这是一个有点像spec_helper 的东西。

# _spec_helper.rb

module SpecHelper
  ::App::Persistence = {}

  # global `before :each` ish
  def self.extended(base)
    base.before do
      ::App::Persistence.clear
    end
  end

  def foo_helper
  end
end
Run Code Online (Sandbox Code Playgroud)

然后使用它:

# my_view_spec.rb

describe "MyView" do
  extend SpecHelper

  before do
    foo_helper
  end
  ...
Run Code Online (Sandbox Code Playgroud)


需要记住两件事:

  1. 规范帮助程序文件的命名方式是首先加载它(前导下划线)

  2. 运行个别规范(例如files=my_view_spec.rb)帮助程序文件时必须遵循 -files=spec/my_view_spec.rb,spec/_spec_helper.rb