Materi
Aplikasi kasir Sumber Rezeki mengirim pesanan baru lewat POST /v1/pesanan. Server wajib menolak permintaan yang melanggar kontrak dengan 422 dan problem details yang member errors-nya menunjuk setiap field bermasalah. Kamu menulis skema permintaan dari tabel kontrak, menguji penolakan server dengan kasus negatif, lalu menilai dua respons galat dari server uji.
| Field badan permintaan | Aturan |
|---|---|
| pelanggan | wajib; objek dengan nama (teks 1–60 karakter, wajib) dan telepon (teks dengan pola ^08[0-9]{8,11}$, wajib) |
| barang | wajib; array minimal 1 elemen; setiap elemen wajib memuat sku (teks dengan pola ^[A-Z]{3}-[0-9]+$) dan qty (integer 1–99), tanpa field lain |
| metodeBayar | wajib; salah satu dari "tunai", "transfer", "qris" |
| catatan | opsional; teks paling banyak 200 karakter |
| (field lain) | ditolak |