"""Run from the supplied project's lessons folder; data is temporary.""" from pathlib import Path import sys lesson_folder = Path(__file__).resolve().parent # A lesson filename must not shadow an installed package such as whitenoise. sys.path = [entry for entry in sys.path if Path(entry or ".").resolve() != lesson_folder] sys.path.insert(0, str(lesson_folder.parent)) from lab_support import start start() from workshops.models import Venue, Workshop, Reservation from django.test import Client, RequestFactory, override_settings # Lesson code: the shared lab is ready, with three fictional workshops. import secrets from django.contrib.auth import authenticate, get_user_model user = get_user_model().objects.get(username="alex") password = secrets.token_urlsafe(24) user.set_password(password) user.save(update_fields=["password"]) print(authenticate(username="alex", password=password).pk == user.pk) print(authenticate(username="alex", password="wrong") is None)