Требуется модуль в тестовом файле Жасмин - PullRequest
0 голосов
/ 23 октября 2019

Я использую Angular 7 и использую Karma / Jasmine для проверки своего кода. У меня есть модуль вне моего Angular проекта, который я хочу протестировать с помощью Jasmine. Я сделал тестовый файл так:

describe('Server Config', () => {
    const CONFIG_PATH: string = '../../../config/config.js';

    beforeEach(() => {
        delete require.cache[require.resolve(CONFIG_PATH)];
    });

    it('should test something', () => {
        const config = require(CONFIG_PATH);
        expect(config.test).toBe('test');
    });
});

Структура моей папки:

config
  - config.js
tests
  unit
    server
      config.spec.ts

При запуске я получаю следующую ошибку:

Error: Cannot find module '../../../config/config.js'
error properties: Object({ code: 'MODULE_NOT_FOUND' })

Что не имеет смысла для меня. В моем файле config.js есть эта строка: module.exports = config;. Я не могу изменить это на export default config, потому что тогда это вызывает ошибки в других областях.

Я пытался использовать модуль path для создания строки в config.js, но я получаю ту же ошибку.

Что я делаю не так? Как мне потребовать пользовательский модуль в моем тестовом файле?

...