我想我的黃瓜匹配器移動到一個模塊我可以在模塊定義函數中使用Rspec Expect嗎?
Then (/^posted "(.*?)" http response should be returned$/) do |arg1|
expect($post_result.lines.last.to_i).to eq(arg1.to_i)
end
模塊功能的函數如下
module AccessFunc
# :
# : Some require... global variable setting etc
# :
def self.posted_http_response_check(arg1)
expect($post_result.lines.last.to_i).to eq(arg1.to_i)
end
end
運行我的黃瓜測試與黃瓜匹配可以用期待。但是我不能在模塊中使用Expect。我試過使用
include ::RSpec::Matchers
按照Use RSpec's "expect" etc. outside a describe ... it block但沒有成功。
我得到的錯誤是
undefined method `expect' for AccessFunc:Module (NoMethodError)
有人能提供一些線索我怎麼會這樣(例如,使用一個模塊內期望解決辦法
P/S:我可以解決通過去除問題模塊,並定義功能posted_http_response_check全球。
這是一個測試嗎?如果不是,你爲什麼需要一個模塊的期望。 – AshwinKumarS 2015-03-25 07:03:11
是的,這是測試的一部分。我將這個期望轉化爲一個模塊,這是因爲我打算使用它是各種不同的測試場景,因此不希望在Cucumber Matcher上重複使用它。 – Elye 2015-03-25 10:05:38