1

我正在尝试在 Autotest 中添加一个钩子以在更改 javascript 文件时触发测试。

下面是我正在使用的 .autotest 文件。语法似乎是正确的,但是更新 javascript 文件时什么都没有发生。

第一个钩子工作正常,第二个没有。


Autotest.add_hook :initialize do |at|
  at.add_mapping(%r%^spec/(selenium)/.*rb$%) { |filename, _|
    filename
  }

  at.add_mapping(%r%^public/(javascripts)/.*js$%) do |f, _|
    at.files_matching %r%^spec/(selenium)/.*rb$%
  end
end
4

1 回答 1

1

上面的代码可以工作,但是 Rspec Rails discovery.rb 文件添加了一个异常来忽略公共目录。

在上面的autotest文件中,public/需要删除例外。

 at.remove_exception "public/"

然后添加任何要忽略的公共文件或目录:

 %w{stylesheets images assets}.each {|exception|at.add_exception(exception)}

我最终得到的是:


Autotest.add_hook :initialize do |at|

  at.add_mapping(%r%^spec/(selenium)/.*rb$%) { |filename, _|
    filename
  }

  at.remove_exception "public/"
  %w{.git public/stylesheets public/images public/assets}.each {|exception|at.add_exception(exception)}

  at.add_mapping(%r%^public/(javascripts)/.*js$%, true) do |f, _|
    (at.files_matching %r%^spec/(selenium)/.*rb$% )
  end
end
于 2009-11-08T04:57:45.723 回答