mirror of
https://github.com/R0m1k3/LogiFlow.git
synced 2026-10-16 19:56:32 +02:00
- Serveur Rust (server-rs/, axum + sqlx) : les 148 adresses de l'API, l'interface, les migrations de démarrage et les tâches de fond ; même comportement que Node (banc : 2027 cas, 0 écart hors écarts déclarés USERS-02, RAPPRO-21, R4, R5). - Node retiré : server/, dépendances serveur, image Docker sans Node (51 Mo), docker-compose à un seul service applicatif. - R4 : écritures d'un autre site refusées (Sec-Fetch-Site / Origin). - R5 : « aujourd'hui » et sauvegarde automatique à l'heure de Paris. - R6 : mainteneur dans .github/CODEOWNERS. - Menu latéral : Accueil puis Calendrier en tête. - Plan et état : docs/PLAN-MIGRATION-RUST.md. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Ke2qyS8rgacP3ap5iezDbM
50 lines
2.1 KiB
TypeScript
50 lines
2.1 KiB
TypeScript
import type { ReadCase, WriteScenario } from "../types";
|
|
|
|
export const reads: ReadCase[] = [
|
|
{ module: "contacts", path: "/api/contacts" },
|
|
{ module: "contacts", path: "/api/contacts?groupId=1" },
|
|
{ module: "contacts", path: "/api/contacts?groupId=2" },
|
|
{ module: "suppliers", path: "/api/suppliers" },
|
|
{ module: "suppliers", path: "/api/suppliers?dlc=true" },
|
|
{ module: "groups", path: "/api/groups" },
|
|
{ module: "users", path: "/api/users" },
|
|
// Express ignore la casse et une « / » finale
|
|
{ module: "contacts", path: "/api/Contacts?groupId=1" },
|
|
{ module: "suppliers", path: "/api/suppliers/" },
|
|
];
|
|
|
|
export const writes: WriteScenario[] = [
|
|
{
|
|
module: "contacts",
|
|
name: "créer, modifier, supprimer un contact",
|
|
steps: [
|
|
{ method: "POST", path: "/api/contacts", body: { groupId: 1, name: "Nouveau contact", company: "Société", phone: "06 99 99 99 99", email: "nouveau@banc.test", notes: "Note" } },
|
|
{ method: "PUT", path: "/api/contacts/{{0.id}}", body: { name: "Contact modifié", phone: "06 88 88 88 88" } },
|
|
{ method: "PUT", path: "/api/contacts/3", body: { name: "Autre magasin" } },
|
|
{ method: "DELETE", path: "/api/contacts/{{0.id}}" },
|
|
{ method: "DELETE", path: "/api/contacts/3" },
|
|
],
|
|
tables: ["contacts"],
|
|
},
|
|
{
|
|
module: "contacts",
|
|
name: "créer un contact invalide",
|
|
steps: [
|
|
{ method: "POST", path: "/api/contacts", body: { groupId: 1 } },
|
|
{ method: "POST", path: "/api/contacts", body: { groupId: 2, name: "Metz" } },
|
|
],
|
|
tables: ["contacts"],
|
|
},
|
|
{
|
|
module: "suppliers",
|
|
name: "créer, modifier, supprimer un fournisseur",
|
|
steps: [
|
|
{ method: "POST", path: "/api/suppliers", body: { name: "Nouveau fournisseur", contact: "M. Neuf", phone: "01 23 45 67 89", hasDlc: true, email: "neuf@banc.test", codefou: "F099" } },
|
|
{ method: "PUT", path: "/api/suppliers/{{0.id}}", body: { name: "Fournisseur renommé", automaticReconciliation: true } },
|
|
{ method: "DELETE", path: "/api/suppliers/{{0.id}}" },
|
|
{ method: "POST", path: "/api/suppliers", body: { contact: "sans nom" } },
|
|
],
|
|
tables: ["suppliers"],
|
|
},
|
|
];
|