У меня есть набор типов в файле, который импортируется в распознаватель GraphQL, чтобы определить типы, которые будут получены в каждом методе распознавателя. Я хочу провести модульное тестирование этого резольвера. Для простоты следующий код является тестируемым методом:
const resolver = {
...,
MyThing: {
id: (myThing: MyType): string => myThing.identifier,
},
...
};
Тип MyType огромен и имеет слишком много обязательных свойств:
export type MyType = {
__typename?: 'MyType';
identifier: string;
requiredField0: string;
requiredField1: AnotherType;
requiredField2: Array<YetAnotherType>;
...
requiredField30: string;
}
Если я опускаю свойство, я получаю ошибка:
Свойство 'advancedId' отсутствует в типе {...}, но требуется в типе 'MyType'.
Существует ли библиотека для автоматического заполнения типов с ложными данными? Или я должен создать созданные экземпляры mock для всех моих тестов для этих типов?
Как правильно обрабатывать эти большие типы в модульных тестах? Они не создаются нигде в коде приложения.