· 12 ms · specs: Spec:alerts, Spec:drill-results, Spec:hello, Spec:mining-domain, Spec:order, Spec:rebalance, Spec:ledger-spec
{
"status": "rejected",
"reason": "out of stock: tee"
}
{
"stock": {
"mug": 10,
"tee": 3,
"lamp": 5
}
}
{
"src": "$val stock = {mug: 10, tee: 3, lamp: 5}",
"k": "step",
"stmt": {
"k": "assign",
"sets": [
{
"name": "stock",
"e": {
"k": "obj",
"fields": [
{
"key": "mug",
"e": {
"k": "lit",
"v": 10
}
},
{
"key": "tee",
"e": {
"k": "lit",
"v": 3
}
},
{
"key": "lamp",
"e": {
"k": "lit",
"v": 5
}
}
]
}
}
]
}
}{
"src": "$send order.submit (items = [{sku: \"mug\", qty: 2, price: 12.5}, {sku: \"tee\", qty: 1, price: 20.0}], member = true, stock = stock)",
"k": "step",
"stmt": {
"k": "send",
"msg": "order.submit",
"args": [
{
"name": "items",
"e": {
"k": "arr",
"items": [
{
"k": "obj",
"fields": [
{
"key": "sku",
"e": {
"k": "str",
"parts": [
"mug"
]
}
},
{
"key": "qty",
"e": {
"k": "lit",
"v": 2
}
},
{
"key": "price",
"e": {
"k": "lit",
"v": 12.5
}
}
]
},
{
"k": "obj",
"fields": [
{
"key": "sku",
"e": {
"k": "str",
"parts": [
"tee"
]
}
},
{
"key": "qty",
"e": {
"k": "lit",
"v": 1
}
},
{
"key": "price",
"e": {
"k": "lit",
"v": 20
}
}
]
}
]
}
},
{
"name": "member",
"e": {
"k": "lit",
"v": true
}
},
{
"name": "stock",
"e": {
"k": "ref",
"name": "stock"
}
}
]
}
}{
"src": "payload.status is \"confirmed\"",
"k": "expect",
"cond": {
"k": "bin",
"op": "==",
"l": {
"k": "member",
"obj": {
"k": "ref",
"name": "payload"
},
"name": "status",
"safe": false
},
"r": {
"k": "str",
"parts": [
"confirmed"
]
}
}
}{
"src": "payload.total is 40.5",
"k": "expect",
"cond": {
"k": "bin",
"op": "==",
"l": {
"k": "member",
"obj": {
"k": "ref",
"name": "payload"
},
"name": "total",
"safe": false
},
"r": {
"k": "lit",
"v": 40.5
}
}
}{
"src": "$send order.submit (items = [{sku: \"lamp\", qty: 2, price: 60.0}], member = false, stock = stock)",
"k": "step",
"stmt": {
"k": "send",
"msg": "order.submit",
"args": [
{
"name": "items",
"e": {
"k": "arr",
"items": [
{
"k": "obj",
"fields": [
{
"key": "sku",
"e": {
"k": "str",
"parts": [
"lamp"
]
}
},
{
"key": "qty",
"e": {
"k": "lit",
"v": 2
}
},
{
"key": "price",
"e": {
"k": "lit",
"v": 60
}
}
]
}
]
}
},
{
"name": "member",
"e": {
"k": "lit",
"v": false
}
},
{
"name": "stock",
"e": {
"k": "ref",
"name": "stock"
}
}
]
}
}{
"src": "payload.discount is 6.0",
"k": "expect",
"cond": {
"k": "bin",
"op": "==",
"l": {
"k": "member",
"obj": {
"k": "ref",
"name": "payload"
},
"name": "discount",
"safe": false
},
"r": {
"k": "lit",
"v": 6
}
}
}{
"src": "payload.total is 114.0",
"k": "expect",
"cond": {
"k": "bin",
"op": "==",
"l": {
"k": "member",
"obj": {
"k": "ref",
"name": "payload"
},
"name": "total",
"safe": false
},
"r": {
"k": "lit",
"v": 114
}
}
}{
"src": "$send order.submit (items = [{sku: \"tee\", qty: 4, price: 20.0}], member = false, stock = stock)",
"k": "step",
"stmt": {
"k": "send",
"msg": "order.submit",
"args": [
{
"name": "items",
"e": {
"k": "arr",
"items": [
{
"k": "obj",
"fields": [
{
"key": "sku",
"e": {
"k": "str",
"parts": [
"tee"
]
}
},
{
"key": "qty",
"e": {
"k": "lit",
"v": 4
}
},
{
"key": "price",
"e": {
"k": "lit",
"v": 20
}
}
]
}
]
}
},
{
"name": "member",
"e": {
"k": "lit",
"v": false
}
},
{
"name": "stock",
"e": {
"k": "ref",
"name": "stock"
}
}
]
}
}{
"src": "payload.status is \"rejected\"",
"k": "expect",
"cond": {
"k": "bin",
"op": "==",
"l": {
"k": "member",
"obj": {
"k": "ref",
"name": "payload"
},
"name": "status",
"safe": false
},
"r": {
"k": "str",
"parts": [
"rejected"
]
}
}
}{
"src": "payload.reason is \"out of stock: tee\"",
"k": "expect",
"cond": {
"k": "bin",
"op": "==",
"l": {
"k": "member",
"obj": {
"k": "ref",
"name": "payload"
},
"name": "reason",
"safe": false
},
"r": {
"k": "str",
"parts": [
"out of stock: tee"
]
}
}
}