Я создаю интерфейс TypeScript для каждой модели, расширяющий mongoose.Document.
import mongoose, { Document } from 'mongoose';
export interface IAccount extends Document {
_id: mongoose.Types.ObjectId;
name: string;
industry: string;
}
Схема затем экспортируется с интерфейсом:
export default mongoose.model<IAccount>('Account', accountSchema);
Проблема в том, что в Jest создание объекта со свойствами, необходимыми для тестируемой функции, недостаточно, TypeScript жалуется на все пропущенные поля.
function getData(account: IAccount){
return account;
}
const account = {
name: 'Test account name',
industry: 'test account industry'
}
getData(account);
Аргумент типа '{имя: строка; промышленность: строка; } 'нельзя назначить параметру типа' IAccount '.
Тип '{имя: строка; промышленность: строка; } 'отсутствуют следующие свойства из типа' IAccount ': _id, increment, model и еще 52.ts (2345)
Какой самый простой способ создать объект, который удовлетворяет требованиям TypeScript для тестирования?