diff --git a/cmd/foodster/handlers.go b/cmd/foodster/handlers.go index d14ace6..3ffbcf7 100644 --- a/cmd/foodster/handlers.go +++ b/cmd/foodster/handlers.go @@ -508,7 +508,7 @@ func (a *app) saveMain(w http.ResponseWriter, r *http.Request) { log.Printf("save main: %v", err) form.Err = "Tallennus epäonnistui." default: - http.Redirect(w, r, "/ruoat", http.StatusSeeOther) + http.Redirect(w, r, "/ruuat", http.StatusSeeOther) return } } @@ -537,7 +537,7 @@ func (a *app) saveSide(w http.ResponseWriter, r *http.Request) { log.Printf("save side: %v", err) form.Err = "Tallennus epäonnistui." default: - http.Redirect(w, r, "/ruoat", http.StatusSeeOther) + http.Redirect(w, r, "/ruuat", http.StatusSeeOther) return } } @@ -565,7 +565,7 @@ func (a *app) deleteDish(w http.ResponseWriter, r *http.Request) { http.Error(w, "poisto epäonnistui", http.StatusInternalServerError) return } - http.Redirect(w, r, "/ruoat", http.StatusSeeOther) + http.Redirect(w, r, "/ruuat", http.StatusSeeOther) } // importDishes takes a bundle either pasted into the textarea or uploaded as a diff --git a/scripts/smoke.sh b/scripts/smoke.sh index 05c9d46..1f1fa3d 100755 --- a/scripts/smoke.sh +++ b/scripts/smoke.sh @@ -220,9 +220,12 @@ check "the quick-added dish is on the board" \ # ---- catalog CRUD from the UI ------------------------------------------- -check "adding a main redirects" \ - "$(curl -s -o /dev/null -w '%{http_code}' -u ":$pass" \ - -d 'nimi=uunikala&kategoria=fish&lisukkeita=1' "http://$addr/ruuat/paaruoka")" "303" +# Assert where it redirects, not just that it does: these pointed at the old +# /ruoat spelling for a while and every 303-only check was happy. +check "adding a main redirects back to the catalog" \ + "$(curl -s -o /dev/null -w '%{redirect_url}' -u ":$pass" \ + -d 'nimi=uunikala&kategoria=fish&lisukkeita=1' "http://$addr/ruuat/paaruoka")" \ + "/ruuat" catalog=$(curl -s -u ":$pass" "http://$addr/ruuat") check "the new main is listed, sentence-cased" "$catalog" "Uunikala" @@ -239,9 +242,10 @@ check "a nameless dish is refused" \ "$(curl -s -u ":$pass" -d 'nimi=+++&kategoria=fish' "http://$addr/ruuat/paaruoka")" \ "Anna nimi." -check "adding a side redirects" \ - "$(curl -s -o /dev/null -w '%{http_code}' -u ":$pass" \ - -d 'nimi=lohkoperunat' "http://$addr/ruuat/lisuke")" "303" +check "adding a side redirects back to the catalog" \ + "$(curl -s -o /dev/null -w '%{redirect_url}' -u ":$pass" \ + -d 'nimi=lohkoperunat' "http://$addr/ruuat/lisuke")" \ + "/ruuat" check "the new side is listed" \ "$(curl -s -u ":$pass" "http://$addr/ruuat")" "Lohkoperunat" @@ -264,9 +268,10 @@ check "the bin asks before deleting" \ check "the dish is still there while it asks" \ "$(curl -s -u ":$pass" "http://$addr/ruuat?poista=$uusi&tyyppi=paa")" "Uunikala" -check "confirming the delete redirects" \ - "$(curl -s -o /dev/null -w '%{http_code}' -u ":$pass" \ - -d "id=$uusi&tyyppi=paa" "http://$addr/ruuat/poista")" "303" +check "confirming the delete redirects back to the catalog" \ + "$(curl -s -o /dev/null -w '%{redirect_url}' -u ":$pass" \ + -d "id=$uusi&tyyppi=paa" "http://$addr/ruuat/poista")" \ + "/ruuat" refute "the dish is gone once confirmed" \ "$(curl -s -u ":$pass" "http://$addr/ruuat")" "Uunikala"