Exercise 1: A PLATINUM Scenario — Possible Solution ==================================================================== THE SCENARIO ------------------------------ def scenario_platinum_member_gets_twenty_percent_off(apply_discount_fn): # GIVEN a cart total of $100 cart_total = 100 # AND a PLATINUM member checking out membership_tier = "PLATINUM" # WHEN the discount is applied result = apply_discount_fn(cart_total, membership_tier) # THEN the total is reduced by 20% assert result == 80.0 RESULTS ------------------------------ Against original apply_discount: PASS Against a changed version where PLATINUM moves from 20% to 25% off: FAILED - expected 80.0, got 75.0 WHY THIS WORKS AS AN ANSWER ------------------------------ This confirms the chapter's own core finding generalizes beyond the GOLD-tier example it used - any Given-When-Then scenario, for any policy, fails the moment the policy it describes changes underneath it, for the exact same reason: the scenario makes a specific, checkable numeric claim rather than a prose description. The failure message itself ("expected 80.0, got 75.0") is immediately actionable - it tells you both what the scenario believed and what the code now actually does, which is exactly the information a stale static document could never provide, since a document doesn't know what the code actually does at all.