bun icon indicating copy to clipboard operation
bun copied to clipboard

[bun:test] Implement `beforeEachFile` and `afterEachFile` hooks

Open Jarred-Sumner opened this issue 1 year ago • 1 comments

What does this PR do?

This adds support for adding a function to call before each test file runs and after each test file runs:

In a preload script:

import {beforeEachFile, afterEachFile} from 'bun:test';

beforeEachFile(() => {
  resetDatabase();
});

In a test:

import {test, expect} from 'bun:test';

test("signup user in database", async () => {
  doSomething();
});

When switching tobun:test from vitest or jest, there currently is no equivalent to setupFiles. This adds an alternative .

How did you verify your code works?

WIP. Needs automated tests.

Jarred-Sumner avatar May 13 '24 02:05 Jarred-Sumner

❌ @Jarred-Sumner, your commit has failing tests :(

💪 2 failing tests Darwin AARCH64

  • test/cli/install/bun-install.test.ts 1 failing
  • test/js/bun/http/serve.test.ts 3 failing

💻 4 failing tests Darwin x64 baseline

  • test/cli/install/bun-create.test.ts 2 failing
  • test/cli/install/registry/bun-install-registry.test.ts 4 failing
  • test/js/bun/http/serve.test.ts 1 failing
  • test/js/web/workers/worker.test.ts 1 failing

💻 3 failing tests Darwin x64

  • test/cli/install/bun-create.test.ts 2 failing
  • test/js/bun/http/serve.test.ts 1 failing
  • test/js/web/workers/worker.test.ts 1 failing

🐧💪 2 failing tests Linux AARCH64

  • test/cli/install/registry/bun-install-registry.test.ts 1 failing
  • test/js/node/http2/node-http2.test.js 1 failing

🐧🖥 1 failing tests Linux x64

  • test/cli/install/registry/bun-install-registry.test.ts 1 failing

🪟💻 11 failing tests Windows x64 baseline

  • test/cli/install/bunx.test.ts 1 failing
  • test/cli/install/migration/migrate.test.ts 1 failing
  • test/integration/esbuild/esbuild.test.ts 1 failing
  • test/integration/next-pages/test/dev-server-ssr-100.test.ts 1 failing
  • test/integration/next-pages/test/dev-server.test.ts 1 failing
  • test/integration/next-pages/test/next-build.test.ts 1 failing
  • test/js/bun/shell/bunshell.test.ts 1 failing
  • test/js/node/dns/node-dns.test.js 2 failing
  • test/js/node/process/process.test.js 2 failing
  • test/js/web/fetch/fetch.tls.test.ts 1 failing
  • test/js/web/websocket/websocket.test.js STATUS_SEVERITY_ERROR

🪟💻 11 failing tests Windows x64

  • test/cli/install/bunx.test.ts 1 failing
  • test/cli/install/migration/migrate.test.ts 1 failing
  • test/cli/install/registry/bun-install-registry.test.ts 5 failing
  • test/integration/next-pages/test/dev-server-ssr-100.test.ts 1 failing
  • test/integration/next-pages/test/dev-server.test.ts 1 failing
  • test/integration/next-pages/test/next-build.test.ts 1 failing
  • test/js/bun/shell/bunshell.test.ts 1 failing
  • test/js/node/child_process/child_process.test.ts 1 failing
  • test/js/node/dns/node-dns.test.js 2 failing
  • test/js/node/process/process.test.js 2 failing
  • test/js/web/websocket/websocket.test.js STATUS_SEVERITY_ERROR

View logs

github-actions[bot] avatar May 13 '24 02:05 github-actions[bot]

This pull request is stale and may be closed due to inactivity.

github-actions[bot] avatar Aug 08 '24 20:08 github-actions[bot]

This is still needed to be able to port many test suites.

morgante avatar Aug 08 '24 20:08 morgante