Шутка макета MockreturnValue не функцияJavascript

Форум по Javascript
Ответить
Anonymous
 Шутка макета MockreturnValue не функция

Сообщение Anonymous »

Привет, я пытаюсь издеваться над функцией из модуля в моем node_modules. Текущий способ, которым я пробовал, это < /p>
import { getPriceImpactForPosition } from "@gmx-io/sdk/utils/fees/priceImpact.js";
import { getBasisPoints } from "@gmx-io/sdk/utils/numbers.js";

// Move these mocks before any imports
jest.mock("@gmx-io/sdk/utils/fees/priceImpact.js", () => ({
getPriceImpactForPosition: jest.fn()
}));

jest.mock("@gmx-io/sdk/utils/numbers.js", () => ({
getBasisPoints: jest.fn()
}));
< /code>
Но когда я звоню .mockreturnValue на макете говорит, что это не функция. Я предполагаю, что это не высмеивается должным образом, и все еще вызывает фактическую реализацию./** @type {import('ts-jest').JestConfigWithTsJest} **/
export default {
preset: "ts-jest/presets/js-with-ts-esm",
testEnvironment: "node",
testPathIgnorePatterns: ["/node_modules/", "/dist/"],
transformIgnorePatterns: ["node_modules/(?!(@gmx-io/sdk))"],
extensionsToTreatAsEsm: [".ts", ".jsx"],
transform: {
"^.+\\.(ts|js|mjs)$": ["ts-jest", {
useESM: true,
tsconfig: "tsconfig.json",
}],
},
moduleNameMapper: {
"^(\\.{1,2}/.*)\\.js$": "$1"
}
};

< /code>
У меня также был посмотрел в пакет, чтобы найти функции, которые я пытаюсь издеваться, кажется, что сам модуль использует экспорт упаковки, и я не уверен, повлияет ли это В любом случае издеваться над < /p>
"exports": {
".": {
"import": "./build/src/index.js",
"require": "./build/src/index.js"
},
"./abis/*": "./build/abis/*",
"./prebuilt/*": "./build/prebuilt/*",
"./utils/*": "./build/src/utils/*",
"./types/*": "./build/src/types/*",
"./configs/*": "./build/src/configs/*"
},
< /code>
В настоящее время я запускаю свои тесты < /p>
NODE_OPTIONS=--experimental-vm-modules jest --passWithNoTests


Подробнее здесь: https://stackoverflow.com/questions/794 ... a-function
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»