# order: story

Three orders through [[Spec:order]]: a member's, a big one from a guest, and one the stock can't cover.

$val stock = {mug: 10, tee: 3, lamp: 5}

A member buys two mugs and a tee: 45.0, less 10%.

$send order.submit (items = [{sku: "mug", qty: 2, price: 12.5}, {sku: "tee", qty: 1, price: 20.0}], member = true, stock = stock)
$expect payload.status is "confirmed"
$expect payload.total is 40.5

A guest buys two lamps: 120.0 is over 100, so 5% off.

$send order.submit (items = [{sku: "lamp", qty: 2, price: 60.0}], member = false, stock = stock)
$expect payload.discount is 6.0
$expect payload.total is 114.0

Four tees, but only three in stock.

$send order.submit (items = [{sku: "tee", qty: 4, price: 20.0}], member = false, stock = stock)
$expect payload.status is "rejected"
$expect payload.reason is "out of stock: tee"
