2012-06-19 24 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似乎很好,但我不知道這是否是「正確」的方式來做到這一點。

相關問題