diff options
Diffstat (limited to 'bin/json-assert-type')
-rwxr-xr-x | bin/json-assert-type | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/bin/json-assert-type b/bin/json-assert-type new file mode 100755 index 0000000..29cadad --- /dev/null +++ b/bin/json-assert-type @@ -0,0 +1,18 @@ +#! /bin/sh +set -euf + +formal_type=$1 + +actual_value=$2 +actual_type=$(echo $actual_value | jq -r type) + +if [ "$actual_type" != "$formal_type" ]; then + backtrace + printf 'error: expected %s, got %s\n' \ + "$formal_type" \ + "$actual_type" \ + >&2 + exit 1 +fi + +echo "$actual_value" |