2012-06-19 28 views
6

Tôi có một số phương pháp phổ biến được sử dụng trong một vài thông số kỹ thuật khác nhau, tôi muốn trích xuất chúng đến một số nơi như một trình trợ giúp thông số có thể truy cập từ tất cả các thông số kỹ thuật. Bất cứ ai biết làm thế nào để làm điều này?Tạo một trợ giúp đặc biệt trong rubymotion

Trả lời

1

Dưới đây là một số thứ mà sorta quacks như một 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 

Và sau đó sử dụng nó:

# my_view_spec.rb 

describe "MyView" do 
    extend SpecHelper 

    before do 
    foo_helper 
    end 
    ... 


Hai điều cần ghi nhớ:

  1. tập tin helper

    Spec được đặt tên theo cách như vậy mà nó được nạp đầu tiên (hàng đầu gạch dưới)

  2. Khi chạy thông số kỹ thuật riêng lẻ (ví dụ. files=my_view_spec.rb) tập tin helper phải đi cùng - files=spec/my_view_spec.rb,spec/_spec_helper.rb

+0

Tôi đã sử dụng giải pháp này để giải quyết một vấn đề hơi khác, vì vậy cảm ơn rất nhiều vì điều này! Tôi hy vọng một cái gì đó "chính thức" như thế này cuối cùng tìm đường vào Rubymotion. –

0

tôi chỉ ném phương pháp phổ biến của tôi được sử dụng trong kỹ thuật khi chúng được (không gói gọn trong một Module hoặc bất cứ điều gì) trong một đặc tả/support/utilities.rb tập tin và Rubymotion dường như nhặt chúng lên cao, mặc dù tôi không biết đây có phải là cách "thích hợp" để làm điều này hay không.

Các vấn đề liên quan