## Because
- Four fxa-shared DB integration suites flaked on the CI job "Integration Test - Libraries (PR)".
- Their `before()` hook calls `testDatabaseSetup`. That drops and recreates the test database and runs about 30 SQL schema files, so it can pass mocha's default 2000 ms timeout.
- When the hook timed out, `knex` was never assigned. The `after()` hook then threw "Cannot read properties of undefined (reading 'destroy')", which hid the real failure.
## This pull request
- Gives the `before()` hook in each of the four specs a 20 second timeout. The callback is now `function ()` so it can call `this.timeout(20000)`.
- Changes `after()` to `await knex?.destroy()` so a failed setup reports only its own error.
- Touches `auth/index.spec.ts`, `auth/prune-token.spec.ts`, `auth/sent-emails.spec.ts` and `profile/index.spec.ts` under `packages/fxa-shared/test/db/models/`.
## Issue that this pull request solves
Closes: FXA-14596