Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Problema com testes (console.assert) - M2#A04 #443

Closed
ricardocaiuba opened this issue Apr 11, 2020 · 2 comments
Closed

Problema com testes (console.assert) - M2#A04 #443

ricardocaiuba opened this issue Apr 11, 2020 · 2 comments
Labels

Comments

@ricardocaiuba
Copy link

Fala Fernando, tudo bem?
Estou tendo um contratempo na aula M2#A04.
Em um arquivo de nome sum.test.js Escrevi o seguinte código conforme seu exemplo:

"use strict";

it("Um é igual a um", () => {
  console.assert(1 === 2, "1 não é igual a dois");
});

quando eu rodo o test, ele não me mostra a tag "FAIL". Ele fica dessa maneira:

 PASS  ./sum.test.js
  √ Um é igual a um (11ms)

  console.assert sum.test.js:4
    AssertionError [ERR_ASSERTION]: 1 não é igual a dois

Deixei o código em https://github.com/ricardocaiuba/jest-in-practice

Desde já, muito obrigado.

@fdaciuk

@fdaciuk
Copy link
Member

fdaciuk commented Apr 12, 2020

Oi @ricardocaiuba! Houveram algumas alterações no comportamento do console.assert em versões mais recentes do Node.js (você pode ver uma discussão sobre isso aqui). Da versão 10 pra frente, o console.assert não gera mais um erro.. ele simplesmente exibe no console uma mensagem dizendo que o teste não passou, por isso o Jest não exibe o "Fail".

Para continuar tendo o comportamento anterior, foi criada uma biblioteca chamada assert, que dispara um erro. Essa biblioteca serve especificamente para quem vai manter o uso do console.assert nos seus códigos. A implementação, no seu caso, seria algo bem simples.Só fazer a instalação do assert:

npm i --save-dev assert

E depois reatribuir a função do console.assert, passando essa função.

Usando o sistema de módulos padrão do Node (CommonJS):

'use strict'

console.assert = require('assert')

Ou, se sua aplicação já estiver configurada para usar ES Modules:

import assert from 'assert'
console.assert = assert

Com isso, esse exemplo vai funcionar como esperado. Mas eu recomendaria você não se preocupar com isso no momento, que nas próximas auas eu vou mostrar com usar a ferramenta de asserção do próprio Jest. O console.assert foi só um exemplo inicial :)

@ricardocaiuba
Copy link
Author

Maravilha man.
Muito obrigado.
@fdaciuk

@fdaciuk fdaciuk changed the title Problema com testes - M2#A04 Problema com testes (console.assert) - M2#A04 Apr 29, 2021
@fdaciuk fdaciuk pinned this issue Apr 29, 2021
@fdaciuk fdaciuk mentioned this issue May 28, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants