Читаю ng-book. Дошел до тестирования, запускаю karma и RequireJS:
Конфиг:
module.exports = function(config) {
config.set({
basePath: '../../lesson16',
frameworks: ['jasmine', 'requirejs'],
files: [
{ pattern: 'lib/angular.min.js', included: false },
{ pattern: 'lib/angular-route.min.js', included: false },
{ pattern: 'lib/angular-mocks.js', included: false },
{ pattern: 'test/**/*.js', included: false },
'test/test-main.js'
],
exclude: [
'js/main.js'
],
preprocessors: {
},
reporters: ['progress'],
port: 0100,
colors: true,
logLevel: config.LOG_INFO,
autoWatch: true,
browsers: ['Chrome'],
captureTimeout: 60000,
singleRun: false
});
};
файл test/test-main.js:
var tests = [];
for (var file in window.__karma__.files)
if (window.__karma__.files.hasOwnProperty(file))
if (/Spec\.js$/.test(file))
tests.push(file);
requirejs.config({
baseUrl: 'app',
paths: {
'jquery': 'lib/jquery',
'angular': 'lib/angular',
'angularRoute': 'lib/angular-route',
'angularMocks': 'lib/angular-mocks'
},
shim: {
'underscore': {
exports: '_'
}
},
// ask Require.js to load these files ( all our test )
deps: tests,
// start test run, once Require.js is done
callback: window.__karma__.start
});
Далее пишется простой пример теста:
define([
'app', 'jquery', 'angular',
'angular', 'angularRoute', 'angularMocks'
],
function() {
describe('UnitTest: App', function() {
// just like normal
it('is defined', function() {
expect(_.size([1,2,3])).toEqual(3);
});
});
});
НО ГДЕ ЕГО ЗАПУСКАТЬ, И КАК ОН РАБОТАЕТ там почему то не пишется.
Так вот у меня вопрос, где запускать эти блоки с тестами? define describe if и т.д..