Checkpoint: Audit technique : suppression des composants, scripts et dépendances inutilisés ; chargement différé des pages ; génération de sauvegardes SQL robuste par lots ; centralisation des contrôles d’accès ; sécurisation des cookies Azure et imports web ; documentation de maintenance et 5 tests de non-régression ajoutés.
This commit is contained in:
21
server/databaseBackup.test.ts
Normal file
21
server/databaseBackup.test.ts
Normal file
@@ -0,0 +1,21 @@
|
||||
import { describe, expect, it } from "vitest";
|
||||
import { toSqlLiteral } from "./databaseBackup";
|
||||
|
||||
describe("toSqlLiteral", () => {
|
||||
it("sérialise les valeurs primitives de manière importable", () => {
|
||||
expect(toSqlLiteral(null)).toBe("NULL");
|
||||
expect(toSqlLiteral(undefined)).toBe("NULL");
|
||||
expect(toSqlLiteral(42.5)).toBe("42.5");
|
||||
expect(toSqlLiteral(true)).toBe("1");
|
||||
expect(toSqlLiteral(false)).toBe("0");
|
||||
});
|
||||
|
||||
it("échappe les caractères sensibles d’une chaîne SQL", () => {
|
||||
expect(toSqlLiteral("O'Hara\\facture\nligne")).toBe("'O\\'Hara\\\\facture\\nligne'");
|
||||
});
|
||||
|
||||
it("conserve les données binaires et dates sans conversion ambiguë", () => {
|
||||
expect(toSqlLiteral(Buffer.from([0, 255]))).toBe("X'00ff'");
|
||||
expect(toSqlLiteral(new Date("2026-08-17T12:34:56.000Z"))).toBe("'2026-08-17 12:34:56.000'");
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user