typestar

Hooks en JavaScript

before y after corren una vez; las variantes each, por cada prueba.

import { after, afterEach, before, beforeEach, describe, it }
  from "node:test";
import assert from "node:assert/strict";

describe("session", () => {
  let session;
  const log = [];

  before(() => log.push("open"));
  after(() => log.push("close"));
  beforeEach(() => { session = { runs: [] }; });
  afterEach(() => log.push("reset"));

  it("starts empty", () => assert.equal(session.runs.length, 0));

  it("records a run", () => {
    session.runs.push(104);
    assert.deepEqual(session.runs, [104]);
  });

  it("is isolated from the previous test", () => {
    assert.equal(session.runs.length, 0);
  });
});

Cómo funciona

  1. beforeEach reconstruye el estado para que las pruebas sigan independientes.
  2. after es donde desaparece un servidor o un directorio temporal.
  3. Los hooks se limitan a su bloque describe.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
24
Caracteres a escribir
583
Tokens
177
Ritmo de tres estrellas
105 tpm

Al ritmo de tres estrellas de 105 tokens por minuto, este intento toma unos 101 segundos.

Escribe este fragmento

Paso 2 de 2 en Async y hooks; paso 4 de 9 en Pruebas con node:test.

← Anterior Siguiente →