Можно ли смешать Testacular (Карму) с угловым сценарием?
Testacular (теперь Карма) - это круто, так же как и angular-сценарий. Однако их совместное использование является проблемой. В Testacular есть ANGULAR-SCENARIO-ADAPTER, но это нарушает простые тесты. Если вы сами включите angular-scene.js, Testacular не будет запускать тесты вообще. Кто-нибудь получил это работает правильно?
Угловой-СЦЕНАРИЙ-АДАПТЕРЯ пытался использовать это с тривиальным тестом, но я увидел странное поведение:
Контрольная работа:
describe('Simple', function(){
it('should compare strings', function(){
expect('foo').toBe('foo');
});
});
Нормальное поведение с конфигом:
files = [
JASMINE,
JASMINE_ADAPTER,
// ANGULAR_SCENARIO,
// ANGULAR_SCENARIO_ADAPTER,
'tests/lib/angular/angular.js',
'tests/sample.js'
];
выход:
$ testacular start
info: Testacular server started at http://localhost:9876/
info (launcher): Starting browser ChromeCanary
info (Chrome 25.0): Connected on socket id KRwEUtKtiaJs3MoiEsNg
Chrome 25.0: Executed 1 of 1 SUCCESS (0.061 secs / 0.003 secs)
При добавлении конфигурации ANGULAR адаптера:
files = [
JASMINE,
JASMINE_ADAPTER,
ANGULAR_SCENARIO,
ANGULAR_SCENARIO_ADAPTER,
'tests/lib/angular/angular.js',
'tests/sample.js'
];
вывод:
$ testacular start
info: Testacular server started at http://localhost:9876/
info (launcher): Starting browser ChromeCanary
info (Chrome 25.0): Connected on socket id 5YZA2fSuNXjmI-yRFGF6
Chrome 25.0 Simple should compare strings FAILED
expect undefined toBe "foo"
/Users/iwein/projects/epec/spa/tests/sample.js:3:9: expected "foo" but was undefined
Chrome 25.0: Executed 1 of 1 (1 FAILED) (0.195 secs / 0.018 secs)
Добавление angular-scenery.js и надежда, что JASMINE-ADAPTER справится с этим.Я также пытался включитьangular-scenario.js
я, но это тупик.
//inside testacular.conf.js
files = [
JASMINE,
JASMINE_ADAPTER,
'tests/lib/angular/angular.js',
'tests/sample.js'
];
Я получаю вывод:
$ testacular start
info: Testacular server started at http://localhost:9876/
info (launcher): Starting browser ChromeCanary
info (Chrome 24.0): Connected on socket id uEzVQ6tqSu7M7tak4F6v
Chrome 24.0 Array #indexOf() should return -1 when the value is not present FAILED
Expected true to be false.
Error: Expected true to be false.
at null.<anonymous> (/..../tests/sample.js:4:17)
Chrome 24.0: Executed 1 of 1 (1 FAILED) (0.07 secs / 0.004 secs)
Если я добавлю angular-сценарий в смесь:
//inside testacular.conf.js
files = [
JASMINE,
JASMINE_ADAPTER,
'tests/lib/angular/angular.js',
'tests/lib/angular/angular-scenario.js',
'tests/sample.js'
];
Тесты не запускаются вообще:
$ testacular start
info: Testacular server started at http://localhost:9876/
info (launcher): Starting browser ChromeCanary
info (Chrome 24.0): Connected on socket id GcyCTxuvhyFcCaE14BEP
Chrome 24.0: Executed 0 of 0 SUCCESS (0.116 secs / 0 secs)
Кто-нибудь получил это работает правильно? Что сtrue
становлениеundefined
?