QA: Povinný telefon u rezervací
Telefonní číslo je nově povinné na veřejných rezervačních formulářích (rezervace i čekací listina). Validuje se český a slovenský formát čísla. Historické rezervace bez telefonu musí nadále fungovat bez omezení. Referenční dokumentace: Rezervace.
Co se v tomto kole změnilo
Section titled “Co se v tomto kole změnilo”| Oblast | Změna |
|---|---|
| Rezervační formulář (web) | Telefon je povinný, označen hvězdičkou místo štítku “nepovinné” |
| Čekací listina (web) | Přidáno povinné pole Telefon (dříve úplně chybělo) |
| Validace | Přijímají se jen platná česká a slovenská čísla, s chybovou hláškou v češtině |
| Historické záznamy | Beze změny, staré rezervace bez telefonu nic neblokuje |
| Moderátorský panel | Beze změny, “Přidat rezervaci” telefon nevyžaduje |
Příprava testovacího prostředí
Section titled “Příprava testovacího prostředí”- Web: https://beta.chytrykviz.cz
- Admin: https://admin.beta.chytrykviz.cz
- Mailhog: http://159.89.0.170:8025/
Potřeba je event s podnikem, který má zapnuté online rezervace. Reset DB zajistí vývojář:
docker-compose exec fpm php artisan migrate:fresh --database=mysql --seed --env=testingR-01 · Prázdný telefon neprojde
Section titled “R-01 · Prázdný telefon neprojde”Příprava: Otevřená rezervační stránka eventu s volnou kapacitou, odhlášený uživatel.
- Vyplň název týmu, e-mail a počet hráčů, telefon nech prázdný.
- Odešli formulář.
- Ověřit: prohlížeč formulář neodešle a zvýrazní pole Telefon.
Očekávání:
- Pole Telefon je označeno červenou hvězdičkou, štítek “nepovinné” už u něj není
- Rezervace nevznikne, v Mailhogu nedorazí žádný potvrzovací e-mail
R-02 · Nevalidní číslo neprojde
Section titled “R-02 · Nevalidní číslo neprojde”Příprava: Stejná jako R-01.
- Vyplň formulář a do telefonu zadej
123456789. - Odešli formulář.
- Ověřit: zobrazí se chyba “Zadejte platné telefonní číslo (CZ/SK).” a vyplněné hodnoty ve formuláři zůstanou.
- Opakuj s hodnotami
abca77712345.
Očekávání:
| Vstup | Výsledek |
|---|---|
123456789 | chyba, neexistující předvolba |
abc | chyba |
77712345 (8 číslic) | chyba |
R-03 · Běžné zápisy čísla projdou
Section titled “R-03 · Běžné zápisy čísla projdou”Příprava: Stejná jako R-01, pro každý pokus jiný název týmu.
- Vytvoř rezervaci s telefonem v každém z těchto zápisů:
777 123 456,+420777123456,+421 905 123 456,0905 123 456,777-123-456. - Ověřit: každá rezervace projde a zobrazí se potvrzení.
Očekávání:
- Všech pět zápisů projde bez chyby
- V Mailhogu dorazí potvrzovací e-mail a v řádku Telefon je vyplněné číslo (ne “nevyplněno”)
R-04 · Předvyplnění z hráčského profilu
Section titled “R-04 · Předvyplnění z hráčského profilu”Příprava: Přihlášený hráč, který má v profilu vyplněný telefon.
- Otevři rezervační stránku eventu.
- Ověřit: pole Telefon je předvyplněné číslem z profilu.
R-05 · Čekací listina má nové povinné pole
Section titled “R-05 · Čekací listina má nové povinné pole”Příprava: Event s plnou kapacitou (všechny stoly obsazené).
- Otevři stránku eventu.
- Ověřit: formulář čekací listiny obsahuje pole Telefon s hvězdičkou, vedle pole E-mail.
- Zkus odeslat bez telefonu.
- Ověřit: formulář neprojde.
- Vyplň platný telefon a odešli.
Očekávání:
- Bez telefonu se na čekací listinu nelze zapsat
- S telefonem zápis projde a přijde potvrzení do Mailhogu
R-06 · Historické rezervace bez telefonu nic neblokuje
Section titled “R-06 · Historické rezervace bez telefonu nic neblokuje”Příprava: Rezervace bez vyplněného telefonu (starý záznam ze seedu, případně založí vývojář).
- V Adminu smaž rezervaci bez telefonu.
- Ověřit: smazání projde bez chyby.
- V moderátorském panelu přiřaď rezervaci bez telefonu jiný stůl.
- Ověřit: přiřazení projde bez chyby.
- V moderátorském panelu potvrď autorezervaci bez telefonu.
- Ověřit: potvrzení projde bez chyby.
R-07 · Potvrzení autorezervace hráčem bez telefonu
Section titled “R-07 · Potvrzení autorezervace hráčem bez telefonu”Příprava: Autorezervace bez telefonu s vygenerovanou rezervací čekající na potvrzení, e-mail s potvrzovacím odkazem v Mailhogu.
- Otevři potvrzovací odkaz z e-mailu.
- Potvrď počet hráčů a odešli.
- Ověřit: rezervace se potvrdí, telefon se nevyžaduje.
R-08 · Náhradník obsazuje uvolněné místo
Section titled “R-08 · Náhradník obsazuje uvolněné místo”Příprava: Plný event, tým zapsaný na čekací listině (přes nový formulář s telefonem).
- Zruš rezervaci jiného týmu (storno odkazem z e-mailu nebo v Adminu).
- Ověřit: náhradníkovi dorazí e-mail o uvolněném místě.
- Otevři potvrzovací odkaz a potvrď rezervaci.
- Ověřit: rezervace vznikne a telefon je převzatý ze zápisu na čekací listinu.
R-09 · Moderátorské přidání rezervace beze změny
Section titled “R-09 · Moderátorské přidání rezervace beze změny”Příprava: Přihlášený moderátor, event s podnikem se zapnutými online rezervacemi.
- V panelu moderátora otevři “Přidat rezervaci”.
- Ověřit: formulář obsahuje jen výběr týmu a počet hráčů, telefon se nevyžaduje.
- Přidej rezervaci.
- Ověřit: rezervace vznikne bez telefonu.
Regresní checklist
Section titled “Regresní checklist”Po testování výše ověřit, že tyto oblasti nespadly:
- Rezervace s validním telefonem projde a přiřadí se stůl
- Potvrzovací e-mail rezervace chodí a obsahuje telefon
- Autorezervace při vytvoření rezervace stále funguje (zaškrtávátko)
- Storno rezervace odkazem z e-mailu funguje
- Upozornění náhradníků na uvolněné místo chodí
Automatizované testy
Section titled “Automatizované testy”docker-compose exec fpm php artisan test tests/Feature/ReservationControllerTest.php --compactdocker-compose exec fpm php artisan test tests/Feature/Reservations/ --compact