дразнить jsforce SObject через шутку - PullRequest
1 голос
/ 12 марта 2020

В настоящее время я издеваюсь над вызовом соединения jsforce через jest.spyOn Я могу смоделировать метод входа в систему jsforce.Connection, но не могу смоделировать объект jsforce.Connection. Если я посмеюсь над этим, он покажет, что некоторые строки раскрыты в этом методе, где я регистрирую ошибки и ответы с помощью проверки

, вот пример, который я делаю -

    const userInfo: UserInfo = { id: '0001', organizationId: '0001200', url: 'https://test.salesforce.com/id/0001/001200' };
    const successResult: RecordResult[] = [{ id: 'A0001', success: true }];
    const sObject: any = { upsert: () => { return Promise.resolve(successResult) } };
    jest.spyOn(salesforceAuthService, 'searchAccount').mockReturnValue(Promise.resolve('A0001'));
    jest.spyOn(jsforce.Connection.prototype, 'login').mockReturnValue(Promise.resolve(userInfo));
    jest.spyOn(jsforce.Connection.prototype, 'sobject').mockImplementation().mockReturnValue(sObject);

Кроме того, если я даю тип sObject объекта SObject, он выдает мне ошибку (выделяя упор), что он не может присвоить тип RecordResult [] для RecordResult. И если я делаю альтернативу, это вызывает проблему, которая не может присвоить RecordResult RecordResult []

...