rails teaspoon 在引擎中测试未加载 *_spec.js
rails teaspoon Testing in engine Not loading *_spec.js
我正在开发一个引擎 (gem),它有一些 js 代码需要测试,但我似乎无法让它工作。我已经按照 wiki article 设置了一个基本示例,但我只得到 0 examples, 0 failures
.
完成的步骤:
- 在 gemspec 文件中添加 s.add_development_dependency 'teaspoon-jasmine'
- 假人在 spec/dummy
spec/teaspoon_env.rb:
unless defined?(Rails)
ENV["RAILS_ROOT"] = File.expand_path("../dummy", __FILE__)
require File.expand_path("#{ENV["RAILS_ROOT"]}/config/environment", __FILE__)
end
Teaspoon.configure do |config|
...
config.root = MyEngineName::Engine.root
...
end
Rakefile:
desc "Run the javascript specs"
task :teaspoon => "app:teaspoon"
- spec/javascripts/spec_helper.js(生成时的默认值)
spec/javascripts/example_spec.js:
describe("My great feature", function() {
it("Bang", () => {
expect(true).toBe(false);
});
});
问题是,当我尝试 运行 测试引擎时,我得到:
$> teaspoon
Starting the Teaspoon server...
Thin web server (v1.7.0 codename Dunder Mifflin)
Maximum connections set to 1024
Listening on 127.0.0.1:57036, CTRL+C to stop
Teaspoon running default suite at http://127.0.0.1:57036/teaspoon/default
Finished in 0.01600 seconds
0 examples, 0 failures
我也尝试 运行 以下命令,结果相同:
- $> 捆绑执行茶匙
- $> 耙茶匙
- $> bundle exec teaspoon spec/javascripts/example_spec.js
- 甚至 $> bundle exec teaspoon spec/javascripts/non_existent_file_spec.js
我不太清楚什么不起作用。作为非标准应用程序,我通过 browserify-rails 使用 es6(工作正常),并进入 engine.rb:
config.browserify_rails.paths = [
lambda { |p| p.start_with?(MyEngineName::Engine.root.join("app").to_s) }
]
任何帮助或线索将不胜感激。
更新:
我已经从 strach 创建了一个引擎,因此很容易检查和重现问题。
特别是,与茶匙设置相关的提交是 this one
尝试对 Rakefile 使用 Rake 命令
rake spec
这是由于您的测试中的箭头功能。将其更改为香草 JS 以使其工作:
it("Bang", function() {
expect(true).toBe(false);
});
浏览器选项适用于 es6。
我正在开发一个引擎 (gem),它有一些 js 代码需要测试,但我似乎无法让它工作。我已经按照 wiki article 设置了一个基本示例,但我只得到 0 examples, 0 failures
.
完成的步骤:
- 在 gemspec 文件中添加 s.add_development_dependency 'teaspoon-jasmine'
- 假人在 spec/dummy
spec/teaspoon_env.rb:
unless defined?(Rails) ENV["RAILS_ROOT"] = File.expand_path("../dummy", __FILE__) require File.expand_path("#{ENV["RAILS_ROOT"]}/config/environment", __FILE__) end Teaspoon.configure do |config| ... config.root = MyEngineName::Engine.root ... end
Rakefile:
desc "Run the javascript specs" task :teaspoon => "app:teaspoon"
- spec/javascripts/spec_helper.js(生成时的默认值)
spec/javascripts/example_spec.js:
describe("My great feature", function() { it("Bang", () => { expect(true).toBe(false); }); });
问题是,当我尝试 运行 测试引擎时,我得到:
$> teaspoon
Starting the Teaspoon server...
Thin web server (v1.7.0 codename Dunder Mifflin)
Maximum connections set to 1024
Listening on 127.0.0.1:57036, CTRL+C to stop
Teaspoon running default suite at http://127.0.0.1:57036/teaspoon/default
Finished in 0.01600 seconds
0 examples, 0 failures
我也尝试 运行 以下命令,结果相同:
- $> 捆绑执行茶匙
- $> 耙茶匙
- $> bundle exec teaspoon spec/javascripts/example_spec.js
- 甚至 $> bundle exec teaspoon spec/javascripts/non_existent_file_spec.js
我不太清楚什么不起作用。作为非标准应用程序,我通过 browserify-rails 使用 es6(工作正常),并进入 engine.rb:
config.browserify_rails.paths = [
lambda { |p| p.start_with?(MyEngineName::Engine.root.join("app").to_s) }
]
任何帮助或线索将不胜感激。
更新:
我已经从 strach 创建了一个引擎,因此很容易检查和重现问题。
特别是,与茶匙设置相关的提交是 this one
尝试对 Rakefile 使用 Rake 命令
rake spec
这是由于您的测试中的箭头功能。将其更改为香草 JS 以使其工作:
it("Bang", function() {
expect(true).toBe(false);
});
浏览器选项适用于 es6。