У меня есть приложение Typcript + Node + Angular2 + Electron и в настоящее время пытается запустить тесты для классов узлов, написанные также в TypScript.Запуск тестов Jasmine, написанных в TypeScript
Для создания приложения и запустить его в электроном я использую следующие TSconfig:
"compilerOptions": {
"module": "system",
"target": "es6",
...
}
Так как вы можете видеть, он использует systemjs и компиляцией TS в JS-ES6. Он отлично работает, само приложение работает.
Теперь мне нужен Жасмин, чтобы прийти на борт. Я установил этот пакет NPM, обновлена мой глоток задачу запустить Глоток-жасмин для всего 1 файла:
gulp.task('jasmine', function() {
gulp.src('./test/test.js')
.pipe(jasmine())
});
Это, как выглядит мой test.js как:
System.register(["./models-src/app/models/pathWatch/pathWatch"], function(exports_1, context_1) {
"use strict";
var __moduleName = context_1 && context_1.id;
var pathWatch_1;
return {
setters:[
function (pathWatch_1_1) {
pathWatch_1 = pathWatch_1_1;
}],
execute: function() {
describe("Run Application:",() => {
it("starts",() => {
var pw1 = new pathWatch_1.PathWatch();
expect(true).toEqual(true);
});
});
}
}
});
Так, ничего особенного, 1 import-1test-1assert, завернутый в SystemJs. Когда я пытаюсь запустить этот тест, у меня есть ошибка: «Система не определена».
Мои вопросы:
1) Можно ли запускать тесты жасмин, используя systemjs погрузчик внутри?
2) Если возможно, мне нужно установить/настроить некоторые дополнительные материалы?
3) Я попытался скомпилировать TS, используя Module = "commonjs", и он работает. Но я не хочу компилировать свой источник по-разному для тестов и сборки. Почему он отлично работает с commonjs без каких-либо дополнительных манипуляций?
4) Также я попытался скомпилировать TS, используя Module = "es6". Он не работает, у меня есть ошибка «Неожиданное зарезервированное слово». Можно ли запускать тесты на жасмин, написанные в js es6, без пересылки их в es5?
Большое спасибо!
Пожалуйста, задавайте вопросы по этому вопросу на один вопрос.Задавать несколько вопросов в одном сообщении затрудняет голосование по этому вопросу, а также ответы. –