Ожидает, что он потерпит неудачу с несколькими положенными эффектами

#javascript #jestjs #redux-saga #redux-saga-test-plan

Вопрос:

Тестовый файл: ` const growerId = state.environmentData.environment.selectedGrower.значение

 const expectedCreateLocalImagesAction = {
  type: 'IMPLEMENT_BLOB_CREATE_LOCAL_IMAGES',
  payload: {
    entities: [
      {
        id: temporaryNewPicId,
        uri:
          'data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/',
        attribute: {
          id: 20127625,
          implement: 31276,
          key: 'front_axle_to_gps_inches',
          lastFetchAt: 1591373772572,
          value: '0.39',
          blobs: [10101, 20202],
        },
      },
    ],
    assetId: growerId,
  },
}

const expectedSaveImplementAttributeAction = {
  type: 'IMPLEMENT_ATTRIBUTE_SAVE_IMPLEMENT_ATTRIBUTE',
  payload: {
    id: 20127625,
    implement: 31276,
    key: 'front_axle_to_gps_inches',
    lastFetchAt: 1591373772572,
    value: '0.39',
    blobs: [10101],
  },
}

const expectedUpdateBlobAction = {
  type: 'IMPLEMENT_BLOB_UPDATE_REQUEST',
  payload: {
    requestId: 'updateBlob_1',
    noSync: false,
  },
}

return expectSaga(module.handleSubmitUpdateForm.bind(module), request)
  .withState(state)
  .select(getSelectedGrowerId)
  .put(expectedCreateLocalImagesAction)
  .put(expectedSaveImplementAttributeAction)
  .put(expectedUpdateBlobAction)
  .run()
 

})`

Получена ошибка » Ожидаемая ——— { ‘@@redux-saga/IO’: истина, комбинатор: ложь, тип: «ПОМЕСТИТЬ», полезная нагрузка: { канал: не определен, действие: { тип: ‘IMPLEMENT_BLOB_CREATE_LOCAL_IMAGES’, полезная нагрузка: { сущности: [Объект], идентификатор актива: 680001 } } } }

 Actual:
------
1. { '@@redux-saga/IO': true,
  combinator: false,
  type: 'PUT',
  payload:
   { channel: undefined,
     action:
      { type: 'IMPLEMENT_BLOB_CREATE_LOCAL_IMAGES',
        payload: { entities: [Object], assetId: 680001 } } } }
2. { '@@redux-saga/IO': true,
  combinator: false,
  type: 'PUT',
  payload:
   { channel: undefined,
     action:
      { type: 'IMPLEMENT_ATTRIBUTE_SAVE_IMPLEMENT_ATTRIBUTE',
        payload:
         { id: 20127625,
           implement: 31276,
           key: 'front_axle_to_gps_inches',
           lastFetchAt: 1591373772572,
           value: '0.39',
           blobs: [Object] } } } }
3. { '@@redux-saga/IO': true,
  combinator: false,
  type: 'PUT',
  payload:
   { channel: undefined,
     action:
      { type: 'IMPLEMENT_BLOB_UPDATE_REQUEST',
        payload: { requestId: 'updateBlob_1', entities: [Object], noSync: false } } } }`
 

Я поместил три действия в свой тестовый файл jest, так что ожидание тоже должно было быть тремя. Но на самом деле у меня есть только один? Что в этом плохого?

Комментарии:

1. Вам нужно показать код саги.