Здравствуйте. Хотел узнать побольше бы по поводу юнит - тестов на mocha + chai. В общем, есть структура папок (модули), в которых находятся сам модуль и тест к нему. Если модуль не импортирует в себя другие модули, то тест отрабатывает нормально иначе крашится... Помогите, пожалуйста, несколько дней самостоятельно разобраться ничего не дали:(
gulp task:
gulp.task('cboldjs-test', () => {
return gulp.src('./frontend/script/cashback_old/Modules/Old/test.js', {read: false})
.pipe(mocha({
ui: 'bdd',
compilers: ['js:babel-register']
}))
});
В package JSON:
"dependencies": {
"gulp": "^3.8.11",
"gulp-browserify": "^0.5.1",
"gulp-concat": "^2.5.2",
"gulp-jshint": "^1.10.0",
"gulp-less": "^3.1.0",
"gulp-plumber": "^1.0.0",
"gulp-rename": "^1.2.2",
"gulp-uglify": "^1.1.0",
"minimist": "^1.2.0",
"po2json": "^0.4.5"
},
"devDependencies": {
"babel-core": "^6.26.0",
"babel-eslint": "^7.2.3",
"babel-plugin-syntax-async-functions": "^6.1.4",
"babel-plugin-transform-es2015-modules-commonjs": "^6.26.0",
"babel-plugin-transform-regenerator": "^6.1.4",
"babel-polyfill": "^6.23.0",
"babel-preset-es2015": "^6.16.0",
"babel-register": "^6.26.0",
"babelify": "^7.3.0",
"browser-sync": "^2.18.2",
"browserify": "^14.4.0",
"chai": "^4.1.2",
"gulp": "^3.9.1",
"gulp-babel": "^7.0.0",
"gulp-bump": "^2.7.0",
"gulp-clean": "^0.3.2",
"gulp-concat": "^2.6.0",
"gulp-cssmin": "^0.2.0",
"gulp-eslint": "^4.0.0",
"gulp-hash": "^4.1.1",
"gulp-if": "^2.0.2",
"gulp-ignore": "^2.0.2",
"gulp-less": "^3.1.0",
"gulp-mocha": "^4.3.1",
"gulp-ng-annotate": "^2.0.0",
"gulp-plumber": "^1.1.0",
"gulp-po2json": "^0.4.0",
"gulp-rename": "^1.2.2",
"gulp-run": "^1.7.1",
"gulp-sourcemaps": "^2.6.0",
"gulp-uglify": "^3.0.0",
"less-plugin-autoprefix": "^1.5.1",
"run-sequence": "^2.1.0",
"vinyl-buffer": "^1.0.0",
"vinyl-source-stream": "^1.1.0"
}
Сама ошибка:
Файлик с тестом:
import {sum} from './Old'
import {assert} from 'chai'
describe('Проверка суммы', () => {
it('2+2', () => {
assert.equal(sum(2,2), 5);
});
});
Js файл:
import { Toaster } from 'Modules/Toaster/Toaster';
import __gettext from 'Modules/Languages/Languages';
import {offerRequest, OfferCurrencies, DataOffers} from 'Modules/Offers/Data';
import makeRequest from 'Modules/API/Api.js';
import Polyfill from 'Polyfill/polyfill';
import Search from 'Modules/OfferSearch/search';
import GPlayBanner from 'Modules/gplayBanner/banner';
export function sum(x,y) {
return x + y;
}