after-price-failure: price.failed=true; stock.done=false; all.done=false
after-stock-success: all.failed=true; cause=IllegalStateException; stock=in-stock
anyOf: first=ERROR; later=OK; aggregate=IllegalArgumentException
cancel-aggregate: cancelled=true; childA.done=false; childB.done=false
collected=[A:ERROR:IllegalStateException, B:ERROR:IllegalArgumentException, C:OK:ready]
empty: allOf.done=true; anyOf.done=false
PASS 18
