Вам нужно будет установить компилятор GCC на вашем ПК, а затем связать его с проектом каждый раз, когда вы создадите проект. Это можно сделать при создании нового проекта или даже после того, как вы это сделали. Вы можете скачать компилятор MinGW по следующей ссылке: https://sourceforge.net/projects/mingw/files/latest/download?source=files
После того, как вы загрузили компилятор и установить его, его можно связать с помощью следующих шагов: i. При создании нового проекта выберите MinGW GCC-компилятор в цепочках инструментов.
ii. Когда вы закончите создание проекта, перейдите в Project-> Properties.
iii. Найдите параметры запуска / отладки на левой панели.
iv. Нажмите вкладку «Создать» и выберите «Приложение C / C ++».
v. Найдите вариант среды.
vi. Нажмите вкладку «Создать».
vii. Введите «PATH» в строке Name и заполните строку Value контуром компилятора. Для меня это C: \ MinGW \ bin.
vii. Нажмите «ОК», и все готово!
В этом случае вам нужно перехватить создание модуля, который вы импортируете. Синон не может этого сделать. Один из способов достичь этого - через библиотеку proxyquire .
Это будет выглядеть примерно так:
const proxyquire = require('proxyquire');
const fakeGetScript = sinon.fake.returns({
foo: 'fakeValue'
});
const p = proxyquire('./path/to/p', {
scripts: {
getScripts: fakeGetScript
}
});
Затем вы можете запускать свои утверждения на fakeGetScript как вы ожидаете.
import
вместоrequire
, кажется, что proxyquire не может мне помочь. – nimbusparis 17 July 2018 в 11:33import P from 'path/to/api'
Как я понимаю, proxyquire вводит фальшивку, когда объект для mock импортируется с помощьюrequire
Извините за мои вопросы noob, я действительно новичок в тестировании JS и, следовательно, в тестировании TS ... – nimbusparis 17 July 2018 в 14:47import P from 'path/to/api
. Вместо этого сделайтеconst P = proxyquire('path/to/api', { ... })
. Вам необходимо протестировать модуль с проксированными зависимостями, а не с фактическим модулем. – Andrew Eisenberg 17 July 2018 в 15:59