Если я что-то не так понял, разрешения и отклонения (https://facebook.github.io/jest/docs/expect.html#resolves) не будут доступны до vNext. Каков сейчас/в настоящее время рекомендуемый способ проверки обещаний с помощью Jest? Это просто помещает ожидания в то время и ловит?
Например:
describe('Fetching', () => {
const filters = {
startDate: '2015-09-01'
};
const api = new TestApiTransport();
it('should reject if no startdate is given', () => {
MyService.fetch().catch(e => expect(e).toBeTruthy()); // see rejects/resolves in v20+
});
it('should return expected data', () => {
MyService.fetch(filters, null, api).then(serviceObjects => {
expect(serviceObjects).toHaveLength(2);
}).catch(e => console.log(e));
});
});
ОБНОВЛЕНИЕ 15 июня 2019: Вскоре после того, как я отправил этот вопрос, Джест начал поддерживать это из коробки. Я изменил принятый ответ ниже, чтобы отразить лучший на данный момент способ сделать это.