mirror of
https://github.com/ovh/the-bastion.git
synced 2025-09-04 12:04:11 +08:00
chore: tests: add json_document() func
This commit is contained in:
parent
c0bebf23d4
commit
a2626e6970
1 changed files with 17 additions and 1 deletions
|
@ -254,7 +254,7 @@ run()
|
|||
printf "%b%b%b\\n" "$WHITE_ON_BLUE" "[INFO] output of the command follows" "$NOC"
|
||||
cat "$outdir/$basename.log"
|
||||
printf "%b%b%b\\n" "$WHITE_ON_BLUE" "[INFO] returned json follows" "$NOC"
|
||||
grep "^JSON_OUTPUT=" -- $outdir/$basename.log | cut -d= -f2- | $jq .
|
||||
grep "^JSON_OUTPUT=" -- $outdir/$basename.log | cut -d= -f2- | jq --sort-keys .
|
||||
if [ "$opt_skip_consistency_check" != 1 ]; then
|
||||
printf "%b%b%b\\n" "$WHITE_ON_BLUE" "[INFO] consistency check follows" "$NOC"
|
||||
cat "$outdir/$basename.cc"
|
||||
|
@ -435,6 +435,22 @@ json()
|
|||
done
|
||||
}
|
||||
|
||||
json_document()
|
||||
{
|
||||
[ "$COUNTONLY" = 1 ] && return
|
||||
local fulljson="$1"
|
||||
local tmpdiff; tmpdiff=$(mktemp)
|
||||
local diffret=0
|
||||
diff -u0 <(echo "$fulljson" | jq -S .) <(get_json | jq -S .) > "$tmpdiff"; diffret=$?
|
||||
if [ "$diffret" = 0 ]; then
|
||||
ok "JSON DOCUMENT" "(fully matched)"
|
||||
else
|
||||
fail "JSON DOCUMENT" "($(awk '{if(NR>3){print}}' "$tmpdiff" | grep -c '^[-+]') lines differ)"
|
||||
awk '{if(NR>3){print}}' "$tmpdiff"
|
||||
fi
|
||||
rm -f "$tmpdiff"
|
||||
}
|
||||
|
||||
pattern()
|
||||
{
|
||||
[ "$COUNTONLY" = 1 ] && return
|
||||
|
|
Loading…
Add table
Reference in a new issue