diff --git a/docs/testing.md b/docs/testing.md index a088044..613a1c7 100644 --- a/docs/testing.md +++ b/docs/testing.md @@ -323,6 +323,35 @@ DVD_ENABLED=false Nothing about `DEVICE_TYPE=laptop` turns those applications off; they are off because those lines say so. +### Physical verification — the Wi-Fi hand-over + +No lab can do this one: it needs the laptop's radio. Over SSH, watching, +with a way back into the room if it goes wrong: + +1. `classroom-wifi --check` — expect it to name the interface and say + ifupdown owns it. Changes nothing. +2. `classroom-wifi --adopt --dry-run` — expect the three "would" lines. + Changes nothing. `/etc/network/interfaces` must still be identical. +3. `classroom-wifi --adopt`. It prints each step. Expect it to end with + *"is NetworkManager's now, and the room is online"*. + If it fails it puts ifupdown back by itself and says so; the machine + should still be reachable. `classroom-wifi --rollback` undoes it later. +4. `nmcli device status` — the Wi-Fi device must no longer say + `unmanaged`. +5. `nmcli networking connectivity` — must say `full`, not `none`. +6. `nmcli device wifi list` — must now list networks. +7. Log out and back in. The panel must show the Wi-Fi connection. +8. Reboot. It must reconnect on its own, with nobody typing a password. +9. As the **classroom** account, confirm the password is still + unreachable: + - `nmcli -s -g 802-11-wireless-security.psk connection show ` + must be empty + - the applet's *Show Network's QR Code* must not produce one + - `/etc/NetworkManager/system-connections/*.nmconnection` must be + unreadable +10. As **tech**, confirm maintenance still works: `sudo nmcli -s ...` + returns the key. + ### Physical verification — a real lid and a real television The lab has no lid and no HDMI hotplug, so none of this is proven by a