Я написал тест, подтверждающий мою интеграцию с xero. Сначала я запускаю две функции asyn c для получения идентификаторов заказа и идентификаторов счетов-ксероксов. После этого я прохожу oop через каждый заказ, чтобы проверить соответствие с ксерокопирующим счетом.
Как видите, это один большой тест. Как сделать тест для каждого заказа?
describe('Xero integration', () => {
before(function() {
cy.bearerToken();
cy.getOrderIds().as('orderIds');
cy.getOrdersWithXeroInvoice().as('invoiceIds');
});
it('Verify invoice', function() { //change to another describer block
const token = this.token;
const orderIds = this.orderIds;
const invoiceIds = this.invoiceIds;
for (const {orderId, status} of orderIds) {
const {invoiceId} = invoiceIds.find(x => x.orderId === orderId);
cy.log(`Verify order#${orderId}, xero invoice# ${invoiceId}`);
//it( `Verify order#${orderId}, xero invoice# ${invoiceId}`, function() {
expect(invoiceIds.map(x => x.orderId)).to.include(orderId);
expect(status).eqls('wc-processing');
cy.verifyXeroInvoice(orderId, invoiceId, token);
//})
}
});
});