- feature
- shop-paid
Shop: a paid order takes stock¶✎ edit
Paying o-1003 takes one pour-over cone and one decaf off stock, once.
$val o = dom.find (cls = "Order", key = "o-1003")
$send dom.upsert (cls = "Order", entity = o + {status: "paid", stockTaken: false})
$send shop.orderChanged (key = "o-1003")
$val cone = dom.find (cls = "Product", key = "pour-over")
$expect cone.stock == 1
$val decaf = dom.find (cls = "Product", key = "coffee-decaf")
$expect decaf.stock == 2
$val after = dom.find (cls = "Order", key = "o-1003")
$expect after.stockTaken
$send shop.orderChanged (key = "o-1003")
$val again = dom.find (cls = "Product", key = "pour-over")
$expect again.stock == 1