Ну, я пытаюсь провести модульное тестирование скрипта загрузки модуля. Частично это, конечно, создание макетов для скриптов. Для этого используется библиотека mock-fs
.
import mock = require("mock-fs");
describe("getFileConfig", function () {
beforeEach(() => {
jest.resetModules();
});
afterEach(() => {
mock.restore();
});
it("should read and parse .js from ./config", async () => {
const expected = {
abc: 1,
fun: function() {return true;}
};
mock({config: {"myCfg.js": "module.exports = {abc: 1, fun: function(){return true;}}"}});
const test = require("./config/myCfg.js");
expect(test.abc).toEqual(1);
});
});
Я "думаю" это должно работать? - mock создает локальную копию файловой системы, верно?
Однако, когда я тестирую выше, возникает следующая ошибка:
Error: Cannot find module './config/myCfg.js' from 'test/loader.test.ts'
Это означает, что загрузчик модуля not с использованием фиктивной файловой системы? Как заставить его использовать фальшивую файловую систему?