Aug 23, 2024 20:14
Выяснилось, что mocha/sinon тоже не работают, и ES Modules - это полная пизда. Есть bar.js:
export function barFunction() {
throw new Error("Launching missiles")
}и foo.js его вызывает:
import { barFunction } from './bar.js';
export function fooFunction() {
return `Foo says: ${barFunction()}`;
}Надо сделать тест, в котором мы подменим зависимость, и у нас выполнится assert.equal(fooFunction(), "Foo says: 42"). Вопрос - как?
Poll И что же делает народ?
Upd: одно решеньице нашлось:
import { equal } from "assert/strict";
import esmock from "esmock";
const { fooFunction } = await esmock(
"./foo.js",
{
"./bar.js": {
barFunction: (foo) => 42,
},
},
{},
);
equal(fooFunction(), "Foo says: 42");
console.log("Test passed!");
все пидарасы а я,
programming