Rails:使用带有Sublime Text 2的RubyTest在lib目录中测试代码

时间:2012-02-21 10:24:23

标签: ruby-on-rails sublimetext ruby-test

我想测试Rails的lib目录中的代码。我使用RubyTest在Sublime Text 2中工作。我的库位于lib/my_lib

module MyLib
    def self.get_zero
        0
    end
end

我的单元测试位于test/unit/lib/my_lib

require 'test/unit'
require 'my_lib/my_class_to_test'

module MyLib
    class MyClassToTestTest < Test::Unit::TestCase
        def test_zero
            assert_equal(0, MyLib::get_zero)
        end
end
end

当我使用命令行运行它时,单元测试通过:

rake test:units

为了节省时间,我只能使用以下命令行运行我的单元测试:

ruby -I"lib" test/unit/lib/my_lib/my_class_to_test_test.rb

我想将RubyTest与Sublime Text 2一起使用但是当我使用它时(Maj + Ctrl + R)我得到错误:

test/unit/lib/my_lib/my_class_to_test_test.rb:3:in `require': no such file to load -- my_lib/my_class_to_test (LoadError)
    from test/unit/lib/my_lib/my_class_to_test_test.rb:3

RubyTest如何在路径中加载lib目录?

1 个答案:

答案 0 :(得分:2)

Sublime Text 2中RubyTest的配置文件在这里:

  

〜/的.config /升华文本-2 /封装/ RubyTest / RubyTest.sublime-设置

我将lib添加到-I中的ruby_unit_exec选项中,如下所示:

"ruby_unit_exec": "ruby -Ilib:test"`

问题已解决。