2012-06-19 25 views
6

我有一些常见的方法用于几个不同的规范,我想将它们解压到某个地方,就像可以从所有规范中访问的spec助手一样。有人知道怎么做吗?在rubymotion中创建一个spec助手

回答

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 

,然后使用它:

# my_view_spec.rb 

describe "MyView" do 
    extend SpecHelper 

    before do 
    foo_helper 
    end 
    ... 


两件事情要牢记:

  1. 规格的辅助文件,它被载入第一个这样的命名方式(龙头下划线)

  2. 当运行各个规格(例如。 files=my_view_spec.rb)辅助文件必须一起走 - files=spec/my_view_spec.rb,spec/_spec_helper.rb

+0

我用这个解决方案来解决一个稍微不同的问题,所以非常感谢!我希望像这样的“官方”最终能够进入Rubymotion。 –

0

我只是把我的规格中常用的方法,因为它们(不是在Module或任何东西)在规格/支持/ utilities.rb文件封装和Rubymotion似乎很好,但我不知道这是否是“正确”的方式来做到这一点。

相关问题