获取调用功能规范的__FILE__值

时间:2013-11-12 18:58:39

标签: ruby rspec

我希望create_new_item_spec.rb中有类似的内容:

feature "task012: create new item #{ff}", task012: true do

并在spec_helper.rb

中有这个
def ff
  "features/#{File.basename(__FILE__)}"
end

但是这给了我:

 task012: create new item in features/spec_helper.rb

我如何打电话给我features/create_new_item_spec.rb

2 个答案:

答案 0 :(得分:3)

def ff; caller_locations.first.path end

答案 1 :(得分:1)

您可以使用caller方法获取来电者的来源位置,例如:

def ff
  file, line, _ = caller.first.split(/:/)
  "features/#{File.basename(file)}"
end