ReferenceError: Can't find variable: affix
我正在尝试运行Jasmine规范,它无法从affix
找到jasmine-fixture
。我的规范没有使用require
,但我没有看到任何需要它的引用。
更麻烦的是,在我的affix
中没有提及jasmine
或vendor.js
因为它只是一个devDependency,所以我不确定如何使用业力跑步者/茉莉花规格。
bower.json:
{
"name": "af-calendar",
"version": "0.0.1",
"main": "public/js/app.js",
"ignore": [
"**/.*",
"node_modules",
"bower_components"
],
"dependencies": {
"moment": ">=2.5.1",
"moment-range": "alienfast/moment-range#3454882ae8e0493b20ff1c6651956b906c8f975d",
"jquery": ">=1.10.2",
"jquery-ui": ">=1.10.3",
"jquery-simulate": "*"
},
"devDependencies": {
"jasmine-jquery": ">=2.0.3",
"jasmine-fixture": ">=1.2.0"
},
"overrides": {
"jquery-simulate": {
"main": "jquery.simulate.js",
"dependencies": {
"jquery": "*"
}
}
}
}
brunch-config.coffee
exports.config =
files:
javascripts:
joinTo:
'js/vendor.js': /^(bower_components|vendor)/
'js/app.js': /^app/
# pluginHelpers: 'js/app.js'
stylesheets:
joinTo:
'css/vendor.css': /^(vendor|bower_components)/
'css/app.css': /^app/
# templates:
# joinTo: 'js/app.js'
plugins:
autoReload:
enabled:
js: on
css: on
assets: off
imageoptimizer:
path: 'images'
smushit: no
coffeelint:
pattern: /^app\/.*\.coffee$/
options:
# indentation:
# value: 4
# level: "warn"
#
max_line_length:
level: "ignore"
conventions:
assets: /(assets|vendor\/assets|font)/
我不想发货或将它们包含在vendor.js中。我如何为我的业力/茉莉花规格测试包含/要求它们?
答案 0 :(得分:0)
因此,似乎只通过karma.conf的files
部分加载了仅测试依赖项。虽然对于大多数代码我们习惯于在bower.json中包含一个新的依赖项(最终在app.js或vendor.js中取决于早午餐配置),devDependencies
不包含在任何组合文件中并且必须具体引用,例如:
// list of files / patterns to load in the browser
files: [
'public/js/**/*.js',
'bower_components/jasmine-jquery/lib/jasmine-jquery.js',
'bower_components/jasmine-fixture/dist/jasmine-fixture.js',
'spec/spec_helper.coffee',
'spec/**/*.spec.coffee'
],
这不像brunch如何为vendor.js组合文件那么方便,而且可能更好,但上面的工作原理。