When I run testem in CI mode via ember test --serve
, it seems all tests are being run, even those that I would expect to be excluded via the test loader: https://github.com/ember-cli/ember-cli-qunit/blob/master/vendor/ember-cli-qunit/test-loader.js#L9
function moduleMatcher(moduleName) {
return moduleName.match(/\/.*[-_]test$/) || (!QUnit.urlParams.nojshint && moduleName.match(/\.jshint$/));
}
For example, attempting to bypass jshint via specifying:
"test_page": "tests/index.html?nojshint"
in testem.json
does not have the expected result, nor does selecting “Disable JSHint” from the UI served by testem.
This is not the case for tests run by navigating to /tests in development.
I don’t have a solution for you, but can offer my support. I’ve been running into this myself that past few days. I have also tried
const app = new EmberApp({
hinting: false
});
which isn’t respected either.
Have also been editing /node_modules/ember-cli/lib/broccoli/ember-app.js
and /node_modules/ember-cli/lib/broccoli//models/addon.js
. Can see where hinting: false
comes through but the addon files still make it into the trees and are JSHinted.
https://github.com/ember-cli/ember-cli/issues/4371 is the closest thing I’ve found related to this.
Make sure your ember-cli-test-loader is at current version 0.2.1 in bower.json and your ember-cli-qunit is at 1.0.3 in package.json. ember-cli-test-loader is an easy one to miss, and there have been recent changes in the test inclusion/exclusion code there.