$ umask 077 && SCRIPT_DIR="$(mktemp -d)" && \ > SCRIPT="$SCRIPT_DIR/compare-room-lifecycles.mjs" && \ > trap 'rm -r -- "$SCRIPT_DIR"' EXIT && \ > curl -fsS https://zkdeal.org/blog/tutorials/compare-room-lifecycles.mjs -o "$SCRIPT" $ printf '%s %s\n' bcc7bb3d89a0d2af3fafa43c69f54b46277f84216fa386d0c7dd12f95debcc00 "$SCRIPT" | \ > sha256sum --check --status && printf '%s\n' 'lifecycle driver: OK' lifecycle driver: OK $ API=http://127.0.0.1:3100 && \ > test "$(curl -fsS "$API/demo/v1/system" | jq -r .decision)" = READY $ node "$SCRIPT" "$API" | jq -e -c \ > 'select(.decision == "ROOM_LIFECYCLES_COMPARED" and \ > .oneShot.checkpoints == 1 and .oneShot.phase == "CLOSED" and \ > .oneShot.laterActionRejected == true and \ > .longRunning.checkpoints == 2 and \ > .longRunning.checkpointSequences == [1,2] and \ > .longRunning.phase == "L1_FINALIZED" and \ > .longRunning.reopenedAfterSecondCheckpoint == true and \ > .longRunning.pendingActions == 0)' {"decision":"ROOM_LIFECYCLES_COMPARED","oneShot":{"preset":"auction","checkpoints":1,"phase":"CLOSED","laterActionRejected":true},"longRunning":{"preset":"shop","checkpoints":2,"checkpointSequences":[1,2],"phase":"L1_FINALIZED","reopenedAfterSecondCheckpoint":true,"pendingActions":0}} $ rm -r -- "$SCRIPT_DIR" && trap - EXIT && unset SCRIPT_DIR SCRIPT API