Rails 3.1& Jasmine:包括来自gem的JavaScripts

时间:2012-01-08 17:26:22

标签: javascript backbone.js jasmine rails-3.1

我有一个rails 3.1项目,我想运行一些茉莉花规格。问题是,我的rails项目需要一些源自gems(尤其是backbone-rails)的javascript文件,而不是my / assets目录。

查看生成的jasmine文件的HTML,它成功地包含了JavaScripts / assets目录中的所有资源(从coffeescript编译),但没有生成由gems生成的javascript文件。因此,我得到了一堆“未找到课程”的错误。

那么,任何关于让茉莉花从宝石中获取Rails 3.1 JavaScript文件的想法,而不仅仅是/资产?目前的jasmine.yml包含在下面。任何想法赞赏

src_files:
  - public/javascripts/prototype.js
  - public/javascripts/effects.js
  - public/javascripts/controls.js
  - public/javascripts/dragdrop.js
  - public/javascripts/application.js
  - public/javascripts/**/*.js
  - spec/**/*_spec.js
  - "vendor/**/*.{js, coffee}"
  - "lib/**/*.{js, coffee}"
  - "app/**/*.{js, coffee}"

stylesheets:
  - stylesheets/**/*.css

helpers:
  - helpers/**/*.js

spec_files:
  - '**/*[sS]pec.{js, coffee}'

src_dir: assets

spec_dir: spec/javascripts

2 个答案:

答案 0 :(得分:4)

我强烈建议您使用jasmine-headless-webkit在rails 3.1应用中进行茉莉花测试。这是我的jasmine.yml文件:

src_dir: app/assets/javascripts
asset_paths:
- app/assets/templates
- lib/assets/javascripts
- vendor/assets/javascripts

src_files:
- [ 'application.js' ]

spec_dir: spec/javascripts

spec_files:
- "**/*[Ss]pec.*"

helpers:
- "helpers/**/*"

我正在使用jasmine-headless-webkit在命令行上运行我的测试(使用watchr在文件更改时自动运行它们)

这是一种很棒的测试方法。

答案 1 :(得分:0)

最近对jasmine master的承诺使它能够从资产管道中获取javascripts。它很棒。

https://github.com/pivotal/jasmine-gem/commits/master