bt_diff() {
local -r expected_file="$1"
local -r actual_file="$2"
- local ret=0
diff -u <(bt_remove_cr_inline "$expected_file") <(bt_remove_cr_inline "$actual_file") 1>&2
-
- return $?
}
# Checks the difference between:
local -r temp_stdout_output_file="$(mktemp -t actual-stdout.XXXXXX)"
local -r temp_stderr_output_file="$(mktemp -t actual-stderr.XXXXXX)"
- local ret=0
bt_cli "$temp_stdout_output_file" "$temp_stderr_output_file" "${args[@]}"
bt_diff "$expected_stderr_file" "$temp_stderr_output_file" "${args[@]}"
local -r ret_stderr=$?
- if ((ret_stdout != 0 || ret_stderr != 0)); then
- ret=1
- fi
-
rm -f "$temp_stdout_output_file" "$temp_stderr_output_file"
- return $ret
+ return $((ret_stdout || ret_stderr))
}
# Checks the difference between:
local -r trace_dir="$2"
shift 2
local -r extra_details_args=("$@")
- expected_stderr_file="/dev/null"
# Compare using the CLI with `sink.text.details`
- bt_diff_cli "$expected_stdout_file" "$expected_stderr_file" "$trace_dir" \
+ bt_diff_cli "$expected_stdout_file" /dev/null "$trace_dir" \
"-c" "sink.text.details" "${extra_details_args[@]+${extra_details_args[@]}}"
}