diff --git a/NEXT_STEPS.md b/NEXT_STEPS.md index a6514076..2741f4d3 100644 --- a/NEXT_STEPS.md +++ b/NEXT_STEPS.md @@ -38,11 +38,13 @@ Lägg till en enkel veckomenylista: välj ett recept per dag, se en samlad ingre ### B. Seed-data i versionshantering `data/matvaror_sverige.csv` och `data/seed_products.sql` ligger lokalt men är inte committade. Bestäm om de ska in i repot (för reproducerbarhet) eller hållas utanför. -### C. Enhetstester -Inga tester finns i dag. Kandidater: -- `normalize-name.ts` (ren funktion, lätt att testa) -- Matchningsalgoritmen i `recipes.service.ts` -- Parser-logiken i `base.parser.ts` +### C. Enhetstester ✅ +Jest + ts-jest är uppsatt. Tester finns för: +- `normalize-name.ts` — 10 tester +- `base.parser.ts` (`parseIngredientLine`) — 12 tester +- `recipes.service.ts` (`normalizeUnit`, `convertUnit`) — 17 tester + +Kör med `npm test` i `backend/`. ### D. Validering av DTO:er i admin-actions Frontend-server-actions saknar validering på inkommande fält (tom sträng, för lång sträng, osv.). Lägg till enkel `trim()` + max-längd-kontroll i `frontend/app/admin/products/actions.ts`. diff --git a/backend/Dockerfile b/backend/Dockerfile index 541f1dc9..e1007dc7 100644 --- a/backend/Dockerfile +++ b/backend/Dockerfile @@ -15,6 +15,7 @@ COPY nest-cli.json ./ RUN npm install RUN npx prisma generate +RUN npm test RUN npm run build # Stage 2: Kör applikationen