Tear down databases manually feature request
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Shell
- Sterne
- 1
- Forks
- 1
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
I think a feature that can be added to this library would be to tear down databases manually.
A use case for this would be to do this in the "tear-down" section in testing frameworks. For example, in [vitest](https://vitest.dev/) a possible implementation of this would be:
```ts
import {describe, test, beforeAll} from "vitest";
import createDb from "pg-tmp";
describe("Database test", () => {
beforeAll(async () => {
const { teardownDb } = await createDb();
// return cleanup function
return async () => {
await teardownDb();
};
});
test("specific database tests", () => {
// tests with the database.
});
});
```
This should be easy to implement using the "stop" command already implemented in `pg_tmp.sh`.
I'd be up to make a PR myself, but I figured I'd get permission first & so forth.
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Lies zunächst den bestehenden stop-Befehl in pg_tmp.sh und die Node.js-API, die ihn aufruft. Lege fest, wie die manuelle Teardown-Funktion aus createDb heraus verfügbar gemacht werden soll, wobei das Vitest-Beispiel als vorgesehene Verwendung dient. Als abgeschlossen gilt die Aufgabe, wenn Aufrufer teardownDb während der Testbereinigung aufrufen können und das bestehende Verhalten zum Herunterfahren der Datenbank wiederverwendet wird.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- node.js, postgresql, shell
- Bereich
- api, databases, testing-qa
- Issue-Typ
- Feature
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 38/100