如何从rspec测试中调用方法?



我正在同时学习Ruby和TDD (rspec)。

我写了下面的测试:

describe is_eligible do
  it "returns true if the passed in string is not part of a list" do
    result = is_eligible("abc")
    result.should eq(false)
  end
end

它正在测试以下代码:

def is_eligible(team_name)
  array = Array.new
  array << "abc" << "def" << "ghi"
  if array.include?(team_name)
    return false
  else
    return true
  end
end

我收到以下错误,无法找出原因。

*/Users/joel.dehlin/top32/lib/ineligible_teams.rb:6:in ' is_eligible': number of arguments (0 for 1) (ArgumentError)*

任何帮助都是感激的!

问题是describe方法期望一个字符串或可以计算为字符串的东西。如果你在没有引号的情况下输入"is_eligible",它实际上会尝试调用该方法,而你会得到错误。

describe "is_eligible" do
  it "returns true if the passed in string is not part of a list" do
    result = is_eligible("abc")
    result.should eq(false)
  end
end

相关内容

  • 没有找到相关文章

最新更新