Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
bd28943482 | ||
|
|
2c568f1fa2 |
@@ -43,3 +43,4 @@ Thumbs.db
|
|||||||
|
|
||||||
# Selenium Chrome profile created by the bot (holds the practice site data)
|
# Selenium Chrome profile created by the bot (holds the practice site data)
|
||||||
/chrome_profile/
|
/chrome_profile/
|
||||||
|
.env.gym
|
||||||
|
|||||||
@@ -115,7 +115,7 @@ docker run --rm snack-and-lift
|
|||||||
|
|
||||||
## 📸 Lecture steps and screenshots
|
## 📸 Lecture steps and screenshots
|
||||||
|
|
||||||
Each step has a wiki page that explains what it teaches, in [English](https://git.tirsystem.com/Tirsvad-Udemy-100-days-of-code/049-snack-and-lift/wiki/Home), [Dansk](https://git.tirsystem.com/Tirsvad-Udemy-100-days-of-code/049-snack-and-lift/wiki/Home-da) and [Bahasa Melayu](https://git.tirsystem.com/Tirsvad-Udemy-100-days-of-code/049-snack-and-lift/wiki/Home-ms). Step 1 is a screenshot of the live site. Steps 2 to 9 are illustrations drawn from the project's local test pages (`tests/e2e/fixtures`), because the live site needs an account; a run with your own account and `--screenshot-dir` (see [Getting started](https://git.tirsystem.com/Tirsvad-Udemy-100-days-of-code/049-snack-and-lift/wiki/Getting-Started)) replaces them.
|
Each step has a wiki page that explains what it teaches, in [English](https://git.tirsystem.com/Tirsvad-Udemy-100-days-of-code/049-snack-and-lift/wiki/Home), [Dansk](https://git.tirsystem.com/Tirsvad-Udemy-100-days-of-code/049-snack-and-lift/wiki/Home-da) and [Bahasa Melayu](https://git.tirsystem.com/Tirsvad-Udemy-100-days-of-code/049-snack-and-lift/wiki/Home-ms). All nine images are screenshots of a real run against the live site. Step 8 ends in MISMATCH: the My Bookings page also lists bookings from earlier runs outside the schedule's next 7 days, which the check does not yet ignore.
|
||||||
|
|
||||||
| Step | Wiki page | Screenshot |
|
| Step | Wiki page | Screenshot |
|
||||||
| --- | --- | --- |
|
| --- | --- | --- |
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 1.2 MiB After Width: | Height: | Size: 878 KiB |
|
Before Width: | Height: | Size: 57 KiB After Width: | Height: | Size: 75 KiB |
|
Before Width: | Height: | Size: 57 KiB After Width: | Height: | Size: 75 KiB |
|
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 23 KiB |
|
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 74 KiB |
|
Before Width: | Height: | Size: 35 KiB After Width: | Height: | Size: 27 KiB |
|
Before Width: | Height: | Size: 59 KiB After Width: | Height: | Size: 58 KiB |
@@ -14,6 +14,4 @@ Du lærer eksplicitte ventetider (`WebDriverWait`) og at udfylde en formular. `l
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
> Dette billede er en illustration: botten kørte mod projektets lokale testsider (`tests/e2e/fixtures`), ikke mod det rigtige gym-site. En kørsel med en rigtig konto og `--screenshot-dir` (se [Kom i gang](Getting-Started-da)) erstatter det.
|
|
||||||
|
|
||||||
[Forrige: 1](Step-1-da) · [Forside](Home-da) · [Næste: 3](Step-3-da)
|
[Forrige: 1](Step-1-da) · [Forside](Home-da) · [Næste: 3](Step-3-da)
|
||||||
|
|||||||
@@ -14,6 +14,4 @@ Anda belajar menunggu secara eksplisit (`WebDriverWait`) dan mengisi borang. `lo
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
> Imej ini ialah ilustrasi: bot dijalankan terhadap halaman ujian tempatan projek (`tests/e2e/fixtures`), bukan laman gim sebenar. Larian dengan akaun sebenar dan `--screenshot-dir` (lihat [Mula menggunakan](Getting-Started-ms)) menggantikannya.
|
|
||||||
|
|
||||||
[Sebelumnya: 1](Step-1-ms) · [Utama](Home-ms) · [Seterusnya: 3](Step-3-ms)
|
[Sebelumnya: 1](Step-1-ms) · [Utama](Home-ms) · [Seterusnya: 3](Step-3-ms)
|
||||||
|
|||||||
@@ -14,6 +14,4 @@ You learn explicit waits (`WebDriverWait`) and how to fill a form. `login()` typ
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
> This image is an illustration: the bot ran against the project's local test pages (`tests/e2e/fixtures`), not against the live gym site. A run with a real account and `--screenshot-dir` (see [Getting started](Getting-Started)) replaces it.
|
|
||||||
|
|
||||||
[Previous: 1](Step-1) · [Home](Home) · [Next: 3](Step-3)
|
[Previous: 1](Step-1) · [Home](Home) · [Next: 3](Step-3)
|
||||||
|
|||||||
@@ -14,6 +14,4 @@ Du lærer at finde et element relativt til et andet: næste tirsdags dagsgruppe
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
> Dette billede er en illustration: botten kørte mod projektets lokale testsider (`tests/e2e/fixtures`), ikke mod det rigtige gym-site. En kørsel med en rigtig konto og `--screenshot-dir` (se [Kom i gang](Getting-Started-da)) erstatter det.
|
|
||||||
|
|
||||||
[Forrige: 2](Step-2-da) · [Forside](Home-da) · [Næste: 4](Step-4-da)
|
[Forrige: 2](Step-2-da) · [Forside](Home-da) · [Næste: 4](Step-4-da)
|
||||||
|
|||||||
@@ -14,6 +14,4 @@ Anda belajar mencari elemen berdasarkan elemen lain: kumpulan hari Selasa seteru
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
> Imej ini ialah ilustrasi: bot dijalankan terhadap halaman ujian tempatan projek (`tests/e2e/fixtures`), bukan laman gim sebenar. Larian dengan akaun sebenar dan `--screenshot-dir` (lihat [Mula menggunakan](Getting-Started-ms)) menggantikannya.
|
|
||||||
|
|
||||||
[Sebelumnya: 2](Step-2-ms) · [Utama](Home-ms) · [Seterusnya: 4](Step-4-ms)
|
[Sebelumnya: 2](Step-2-ms) · [Utama](Home-ms) · [Seterusnya: 4](Step-4-ms)
|
||||||
|
|||||||
@@ -14,6 +14,4 @@ You learn to find an element relative to another one: the day group of the next
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
> This image is an illustration: the bot ran against the project's local test pages (`tests/e2e/fixtures`), not against the live gym site. A run with a real account and `--screenshot-dir` (see [Getting started](Getting-Started)) replaces it.
|
|
||||||
|
|
||||||
[Previous: 2](Step-2) · [Home](Home) · [Next: 4](Step-4)
|
[Previous: 2](Step-2) · [Home](Home) · [Next: 4](Step-4)
|
||||||
|
|||||||
@@ -14,6 +14,4 @@ Du lærer at læse en knaps tilstand før du handler: "Book Class", "Join Waitli
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
> Dette billede er en illustration: botten kørte mod projektets lokale testsider (`tests/e2e/fixtures`), ikke mod det rigtige gym-site. En kørsel med en rigtig konto og `--screenshot-dir` (se [Kom i gang](Getting-Started-da)) erstatter det.
|
|
||||||
|
|
||||||
[Forrige: 3](Step-3-da) · [Forside](Home-da) · [Næste: 5](Step-5-da)
|
[Forrige: 3](Step-3-da) · [Forside](Home-da) · [Næste: 5](Step-5-da)
|
||||||
|
|||||||
@@ -14,6 +14,4 @@ Anda belajar membaca keadaan butang sebelum bertindak: "Book Class", "Join Waitl
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
> Imej ini ialah ilustrasi: bot dijalankan terhadap halaman ujian tempatan projek (`tests/e2e/fixtures`), bukan laman gim sebenar. Larian dengan akaun sebenar dan `--screenshot-dir` (lihat [Mula menggunakan](Getting-Started-ms)) menggantikannya.
|
|
||||||
|
|
||||||
[Sebelumnya: 3](Step-3-ms) · [Utama](Home-ms) · [Seterusnya: 5](Step-5-ms)
|
[Sebelumnya: 3](Step-3-ms) · [Utama](Home-ms) · [Seterusnya: 5](Step-5-ms)
|
||||||
|
|||||||
@@ -14,6 +14,4 @@ You learn to read the state of a button before acting: "Book Class", "Join Waitl
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
> This image is an illustration: the bot ran against the project's local test pages (`tests/e2e/fixtures`), not against the live gym site. A run with a real account and `--screenshot-dir` (see [Getting started](Getting-Started)) replaces it.
|
|
||||||
|
|
||||||
[Previous: 3](Step-3) · [Home](Home) · [Next: 5](Step-5)
|
[Previous: 3](Step-3) · [Home](Home) · [Next: 5](Step-5)
|
||||||
|
|||||||
@@ -14,6 +14,4 @@ Du lærer at føre tællere mens en løkke kører og at udskrive en rapport: BOO
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
> Dette billede er en illustration: botten kørte mod projektets lokale testsider (`tests/e2e/fixtures`), ikke mod det rigtige gym-site. En kørsel med en rigtig konto og `--screenshot-dir` (se [Kom i gang](Getting-Started-da)) erstatter det.
|
|
||||||
|
|
||||||
[Forrige: 4](Step-4-da) · [Forside](Home-da) · [Næste: 6](Step-6-da)
|
[Forrige: 4](Step-4-da) · [Forside](Home-da) · [Næste: 6](Step-6-da)
|
||||||
|
|||||||
@@ -14,6 +14,4 @@ Anda belajar menyimpan pembilang semasa gelung berjalan dan mencetak laporan: BO
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
> Imej ini ialah ilustrasi: bot dijalankan terhadap halaman ujian tempatan projek (`tests/e2e/fixtures`), bukan laman gim sebenar. Larian dengan akaun sebenar dan `--screenshot-dir` (lihat [Mula menggunakan](Getting-Started-ms)) menggantikannya.
|
|
||||||
|
|
||||||
[Sebelumnya: 4](Step-4-ms) · [Utama](Home-ms) · [Seterusnya: 6](Step-6-ms)
|
[Sebelumnya: 4](Step-4-ms) · [Utama](Home-ms) · [Seterusnya: 6](Step-6-ms)
|
||||||
|
|||||||
@@ -14,6 +14,4 @@ You learn to keep counters while a loop runs and to print a report: the BOOKING
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
> This image is an illustration: the bot ran against the project's local test pages (`tests/e2e/fixtures`), not against the live gym site. A run with a real account and `--screenshot-dir` (see [Getting started](Getting-Started)) replaces it.
|
|
||||||
|
|
||||||
[Previous: 4](Step-4) · [Home](Home) · [Next: 6](Step-6)
|
[Previous: 4](Step-4) · [Home](Home) · [Next: 6](Step-6)
|
||||||
|
|||||||
@@ -14,6 +14,4 @@ Du lærer at gennemløbe alle matchende elementer: hvert tirsdags- og torsdagsho
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
> Dette billede er en illustration: botten kørte mod projektets lokale testsider (`tests/e2e/fixtures`), ikke mod det rigtige gym-site. En kørsel med en rigtig konto og `--screenshot-dir` (se [Kom i gang](Getting-Started-da)) erstatter det.
|
|
||||||
|
|
||||||
[Forrige: 5](Step-5-da) · [Forside](Home-da) · [Næste: 7](Step-7-da)
|
[Forrige: 5](Step-5-da) · [Forside](Home-da) · [Næste: 7](Step-7-da)
|
||||||
|
|||||||
@@ -14,6 +14,4 @@ Anda belajar mengulang semua elemen yang sepadan: setiap kelas Selasa dan Khamis
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
> Imej ini ialah ilustrasi: bot dijalankan terhadap halaman ujian tempatan projek (`tests/e2e/fixtures`), bukan laman gim sebenar. Larian dengan akaun sebenar dan `--screenshot-dir` (lihat [Mula menggunakan](Getting-Started-ms)) menggantikannya.
|
|
||||||
|
|
||||||
[Sebelumnya: 5](Step-5-ms) · [Utama](Home-ms) · [Seterusnya: 7](Step-7-ms)
|
[Sebelumnya: 5](Step-5-ms) · [Utama](Home-ms) · [Seterusnya: 7](Step-7-ms)
|
||||||
|
|||||||
@@ -14,6 +14,4 @@ You learn to loop over all matching elements: every Tuesday and Thursday 6pm cla
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
> This image is an illustration: the bot ran against the project's local test pages (`tests/e2e/fixtures`), not against the live gym site. A run with a real account and `--screenshot-dir` (see [Getting started](Getting-Started)) replaces it.
|
|
||||||
|
|
||||||
[Previous: 5](Step-5) · [Home](Home) · [Next: 7](Step-7)
|
[Previous: 5](Step-5) · [Home](Home) · [Next: 7](Step-7)
|
||||||
|
|||||||
@@ -14,6 +14,4 @@ Du lærer at kontrollere dit eget arbejde fra en anden kilde: `get_my_bookings()
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
> Dette billede er en illustration: botten kørte mod projektets lokale testsider (`tests/e2e/fixtures`), ikke mod det rigtige gym-site. En kørsel med en rigtig konto og `--screenshot-dir` (se [Kom i gang](Getting-Started-da)) erstatter det.
|
|
||||||
|
|
||||||
[Forrige: 6](Step-6-da) · [Forside](Home-da) · [Næste: 8](Step-8-da)
|
[Forrige: 6](Step-6-da) · [Forside](Home-da) · [Næste: 8](Step-8-da)
|
||||||
|
|||||||
@@ -14,6 +14,4 @@ Anda belajar menyemak kerja sendiri daripada sumber kedua: `get_my_bookings()` m
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
> Imej ini ialah ilustrasi: bot dijalankan terhadap halaman ujian tempatan projek (`tests/e2e/fixtures`), bukan laman gim sebenar. Larian dengan akaun sebenar dan `--screenshot-dir` (lihat [Mula menggunakan](Getting-Started-ms)) menggantikannya.
|
|
||||||
|
|
||||||
[Sebelumnya: 6](Step-6-ms) · [Utama](Home-ms) · [Seterusnya: 8](Step-8-ms)
|
[Sebelumnya: 6](Step-6-ms) · [Utama](Home-ms) · [Seterusnya: 8](Step-8-ms)
|
||||||
|
|||||||
@@ -14,6 +14,4 @@ You learn to check your own work from a second source: `get_my_bookings()` reads
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
> This image is an illustration: the bot ran against the project's local test pages (`tests/e2e/fixtures`), not against the live gym site. A run with a real account and `--screenshot-dir` (see [Getting started](Getting-Started)) replaces it.
|
|
||||||
|
|
||||||
[Previous: 6](Step-6) · [Home](Home) · [Next: 8](Step-8)
|
[Previous: 6](Step-6) · [Home](Home) · [Next: 8](Step-8)
|
||||||
|
|||||||
@@ -14,6 +14,6 @@ Du lærer at datoer er den almindelige fejlkilde: sidens admin-knap "advance 3 d
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
> Dette billede er en illustration: botten kørte mod projektets lokale testsider (`tests/e2e/fixtures`), ikke mod det rigtige gym-site. En kørsel med en rigtig konto og `--screenshot-dir` (se [Kom i gang](Getting-Started-da)) erstatter det.
|
> Dette er en rigtig kørsel. Siden My Bookings viser også bookinger fra tidligere kørsler uden for tidsplanens næste 7 dage, så kontrollen melder dem som uventede og ender med MISMATCH. Det er en kendt fejl i kontrollen, som skal rettes.
|
||||||
|
|
||||||
[Forrige: 7](Step-7-da) · [Forside](Home-da) · [Næste: 9](Step-9-da)
|
[Forrige: 7](Step-7-da) · [Forside](Home-da) · [Næste: 9](Step-9-da)
|
||||||
|
|||||||
@@ -14,6 +14,6 @@ Anda belajar bahawa tarikh ialah punca pepijat biasa: kawalan admin laman "advan
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
> Imej ini ialah ilustrasi: bot dijalankan terhadap halaman ujian tempatan projek (`tests/e2e/fixtures`), bukan laman gim sebenar. Larian dengan akaun sebenar dan `--screenshot-dir` (lihat [Mula menggunakan](Getting-Started-ms)) menggantikannya.
|
> Ini ialah larian sebenar. Halaman My Bookings turut menyenaraikan tempahan daripada larian terdahulu di luar 7 hari jadual seterusnya, jadi semakan melaporkannya sebagai tidak dijangka dan berakhir dengan MISMATCH. Ini kecacatan yang diketahui pada semakan dan akan dibaiki.
|
||||||
|
|
||||||
[Sebelumnya: 7](Step-7-ms) · [Utama](Home-ms) · [Seterusnya: 9](Step-9-ms)
|
[Sebelumnya: 7](Step-7-ms) · [Utama](Home-ms) · [Seterusnya: 9](Step-9-ms)
|
||||||
|
|||||||
@@ -14,6 +14,6 @@ You learn that dates are the usual bug: the site's admin control "advance 3 days
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
> This image is an illustration: the bot ran against the project's local test pages (`tests/e2e/fixtures`), not against the live gym site. A run with a real account and `--screenshot-dir` (see [Getting started](Getting-Started)) replaces it.
|
> This is a real run. The My Bookings page also lists bookings from earlier runs that lie outside the schedule's next 7 days, so the check reports them as unexpected and ends with MISMATCH. This is a known defect of the check, tracked for a fix.
|
||||||
|
|
||||||
[Previous: 7](Step-7) · [Home](Home) · [Next: 9](Step-9)
|
[Previous: 7](Step-7) · [Home](Home) · [Next: 9](Step-9)
|
||||||
|
|||||||
@@ -14,6 +14,4 @@ Du lærer at prøve igen: `retry(func, retries=7, description=None)` gentager et
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
> Dette billede er en illustration: botten kørte mod projektets lokale testsider (`tests/e2e/fixtures`), ikke mod det rigtige gym-site. En kørsel med en rigtig konto og `--screenshot-dir` (se [Kom i gang](Getting-Started-da)) erstatter det.
|
|
||||||
|
|
||||||
[Forrige: 8](Step-8-da) · [Forside](Home-da)
|
[Forrige: 8](Step-8-da) · [Forside](Home-da)
|
||||||
|
|||||||
@@ -14,6 +14,4 @@ Anda belajar mencuba semula: `retry(func, retries=7, description=None)` mengulan
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
> Imej ini ialah ilustrasi: bot dijalankan terhadap halaman ujian tempatan projek (`tests/e2e/fixtures`), bukan laman gim sebenar. Larian dengan akaun sebenar dan `--screenshot-dir` (lihat [Mula menggunakan](Getting-Started-ms)) menggantikannya.
|
|
||||||
|
|
||||||
[Sebelumnya: 8](Step-8-ms) · [Utama](Home-ms)
|
[Sebelumnya: 8](Step-8-ms) · [Utama](Home-ms)
|
||||||
|
|||||||
@@ -14,6 +14,4 @@ You learn to retry: `retry(func, retries=7, description=None)` repeats a call th
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
> This image is an illustration: the bot ran against the project's local test pages (`tests/e2e/fixtures`), not against the live gym site. A run with a real account and `--screenshot-dir` (see [Getting started](Getting-Started)) replaces it.
|
|
||||||
|
|
||||||
[Previous: 8](Step-8) · [Home](Home)
|
[Previous: 8](Step-8) · [Home](Home)
|
||||||
|
|||||||