Как запустить тестовые примеры Jest с Vanilla JS? - PullRequest
0 голосов
/ 05 июля 2018

Я пытаюсь запустить тестовые случаи, используя jest с ванильным javascript.

login.test.js

import { validateEmail } from '../assets/js/common';

describe('validate email', () => {
    it('should pass with valid email', () => {
        const result = validateEmail('example@test.com');
        expect(result).toBe(true);    
    });
    it('should fail with invalid email', () => {
        const result = validateEmail('exampletest.com');
        expect(result).toBe(false);    
    });
})

common.js

export const validateEmail = (email) => {
    return email && EMAIL.test(email);
}

Когда я запускаю npm run test, он выбрасывает

({"Object.<anonymous>":function(module,exports,require,__dirname,__filename,global,jest){

import {validateEmail} из '../assets/js/common';

           ^^^^^^

SyntaxError: Unexpected token import

Я следил за многими темами на GitHub, но бесполезно. Они говорят о React, реактивном-родном, а также о конфигурации Babel и т. Д. Но у меня нет .babelrc в моем проекте. Это просто html, css, pug, js и webpack.

Ниже приведена структура каталогов моего проекта.

enter image description here

1 Ответ

0 голосов
/ 05 июля 2018

Для модулей Es6 требуется babel. Чтобы настроить Babel с шуткой, следуйте инструкциям https://jestjs.io/docs/en/getting-started.html#using-babel,. Создайте .babelrc в соответствии с инструкциями и удалите все части, связанные с реакцией, так как вы здесь не используете реакцию.

...