Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Não entendi o uso do mockResolvedValue

não entendi a ligação do mockResolvedValue com o Valor que esperamos da API


jest.mock('./api')
// jest.mock - faz uma simulação da API (não acessa exatamente).

describe('Requisições para API', () => {
  it('Exibir lista de transações através da API', async () => {
// usamos o async para habilitar a função assincrona.
    api.listaTransacoes.mockResolvedValue([
// mockResolvedValue - retorna o valor da promise.
      {
        "valor": "10",
        "transacao": "saque",
        "data": "10/08/2020",
        "id": 1
      },
      {
        "transacao": "deposito",
        "valor": "20",
        "data": "26/09/2020",
        "id": 2
      }
    ]);
1 resposta
solução!

Fala, Emerson! Tudo certo?

É uma opção de testar a capacidade do sistema de listar as transações que vêm da API, sem chamar a API (nesse caso, usar a API poderia acabar em resultados menos previsíveis). Assim, a instrutora criou um mock (dados simulados), mas como é uma função assíncrona (que retorna uma Promise), há dois possíveis resultados: o valor resolvido (resolved, signifca que a requisição foi bem sucedida) e o valor de rejeitado (rejected, significa que a requisição deu errado).

O método mockResolvedValue permite que quando chamamos essa requisição falsa, o valor retornado seja o que passamos ali dentro, imitando o que a API retornaria caso a requisição fosse real.

Assim, podemos testar a comunicação com a API sem depender dela.

Espero ter ajudado!