Я импортирую экземпляр класса из внешней библиотеки и использую непосредственно в члене класса следующим образом:
import { MyClient } from '@foo/bar';
export class DoStuff {
public getStuff = () => {
return MyClient.fetchThings();
}
}
Библиотека, из которой я импортирую этот класс, экспортирует класс следующим образом:
// my-client.ts
class MyClient {
//stuff
async fetchThings() {
}
}
export const myClient = new MyClient();
-----
// index.ts
export {
myClient as MyClient,
} from './my-client';
Я хочу иметь возможность заглушить импортированный экземпляр класса MyClient
в моем классе DoStuff приложения-потребителя, но я не уверен, как это сделать.
Я подумывал об использовании ts-mock-import но их примеры, по-видимому, охватывают случаи, когда вы хотите создать новый импортированный класс в классе, с которым вы тестируете.
В моем случае импортированный класс ужеэкземпляр.
Какой здесь правильный подход?