Sagen Sie, ich habe den folgenden Code zu ignorieren:Istanbul.js Getting die definieren (require.js) Definition
define([
'a'
], function(a) {
return {
initialize: function() {
},
stuff: function() {
}
};
});
Istanbul berichtet, dass nur 1/3 Funktionen getestet wurden. Das stimmt, denn ich habe nur einen Test gegen main.initialize
durchgeführt.
Wie kann ich Istanbul dazu bringen, die für define Callback verwendete Funktion zu ignorieren?
Edit: Zusätzliche Gruntfile.js
Config
jasmine: {
coverage: {
src: 'src/assets/js/app/**/*.js',
options: {
specs: 'src/assets/js/spec/**/*Spec.js',
host: 'http://127.0.0.1:8000/',
template: require('grunt-template-jasmine-istanbul'),
templateOptions: {
//files: 'src/assets/js/app/**/*.js',
coverage: 'bin/coverage/coverage.json',
report: [
{type: 'html', options: {dir: 'src/coverage/html'}},
{type: 'text-summary'}
],
template: require('grunt-template-jasmine-requirejs'),
templateOptions: {
requireConfig: {
baseUrl: 'src/assets/js',
paths: {
/* 'jquery': 'lib/jquery',
'underscore': 'lib/lodash',
'text': 'lib/text',
'i18n': 'lib/i18n',*/
}
}
}
},
keepRunner: true
}
}
}
Edit: Beispiel Spec
define([
'app/main'
], function(main) {
describe('app/main', function() {
it('initailize should not error', function() {
expect(main.initialize()).toBe(undefined);
});
});
});
Ich war nicht in der Lage, es zu testen (wie ich auf mit Karma stattdessen bewegt, was nicht dieses Problem hat). Aber du hast geantwortet, und jemand anderes, der deine Antwort überprüft hat, hat mich glauben lassen, du hättest das Kopfgeld verdient. Viel Spaß und Danke. – jshthornton