tests/utils/utils.sh: bt_diff_details_ctf_gen_single(): use `local -r` when possible
[babeltrace.git] / tests / utils / utils.sh
index 36fc86fe1e0093dff1bb4575af758ebfce974d9a..9291db8833e6a8340e0452276d2714788ccd2ed5 100644 (file)
@@ -227,10 +227,10 @@ bt_remove_cr_inline() {
 #
 # Returns the exit status of the executed `$BT_TESTS_BT2_BIN`.
 bt_cli() {
-       local stdout_file="$1"
-       local stderr_file="$2"
+       local -r stdout_file="$1"
+       local -r stderr_file="$2"
        shift 2
-       local args=("$@")
+       local -r args=("$@")
 
        echo "Running: $BT_TESTS_BT2_BIN ${args[*]}" >&2
        run_python_bt2 "$BT_TESTS_BT2_BIN" "${args[@]}" 1>"$stdout_file" 2>"$stderr_file"
@@ -247,8 +247,8 @@ bt_cli() {
 #
 # Returns 0 if there's no difference, or not zero otherwise.
 bt_diff() {
-       local expected_file="$1"
-       local actual_file="$2"
+       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
@@ -273,26 +273,21 @@ bt_diff() {
 # Returns 0 if there's no difference, or 1 otherwise, also printing said
 # difference to the standard error.
 bt_diff_cli() {
-       local expected_stdout_file="$1"
-       local expected_stderr_file="$2"
+       local -r expected_stdout_file="$1"
+       local -r expected_stderr_file="$2"
        shift 2
-       local args=("$@")
+       local -r args=("$@")
 
-       local temp_stdout_output_file
-       local temp_stderr_output_file
+       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
-       local ret_stdout
-       local ret_stderr
-
-       temp_stdout_output_file="$(mktemp -t actual-stdout.XXXXXX)"
-       temp_stderr_output_file="$(mktemp -t actual-stderr.XXXXXX)"
 
        bt_cli "$temp_stdout_output_file" "$temp_stderr_output_file" "${args[@]}"
 
        bt_diff "$expected_stdout_file" "$temp_stdout_output_file" "${args[@]}"
-       ret_stdout=$?
+       local -r ret_stdout=$?
        bt_diff "$expected_stderr_file" "$temp_stderr_output_file" "${args[@]}"
-       ret_stderr=$?
+       local -r ret_stderr=$?
 
        if ((ret_stdout != 0 || ret_stderr != 0)); then
                ret=1
@@ -317,10 +312,10 @@ bt_diff_cli() {
 # Returns 0 if there's no difference, or 1 otherwise, also printing said
 # difference to the standard error.
 bt_diff_details_ctf_single() {
-       local expected_stdout_file="$1"
-       local trace_dir="$2"
+       local -r expected_stdout_file="$1"
+       local -r trace_dir="$2"
        shift 2
-       local extra_details_args=("$@")
+       local -r extra_details_args=("$@")
        expected_stderr_file="/dev/null"
 
        # Compare using the CLI with `sink.text.details`
@@ -334,15 +329,12 @@ bt_diff_details_ctf_single() {
 # The program `$1` receives the path to a temporary, empty directory
 # where to write the CTF trace as its first argument.
 bt_diff_details_ctf_gen_single() {
-       local ctf_gen_prog_path="$1"
-       local expected_stdout_file="$2"
+       local -r ctf_gen_prog_path="$1"
+       local -r expected_stdout_file="$2"
        shift 2
-       local extra_details_args=("$@")
-
-       local temp_trace_dir
-       local ret
+       local -r extra_details_args=("$@")
 
-       temp_trace_dir="$(mktemp -d)"
+       local -r temp_trace_dir="$(mktemp -d)"
 
        # Run the CTF trace generator program to get a CTF trace
        if ! "$ctf_gen_prog_path" "$temp_trace_dir" 2>/dev/null; then
@@ -354,7 +346,7 @@ bt_diff_details_ctf_gen_single() {
        # Compare using the CLI with `sink.text.details`
        bt_diff_details_ctf_single "$expected_stdout_file" "$temp_trace_dir" \
                "${extra_details_args[@]+${extra_details_args[@]}}"
-       ret=$?
+       local -r ret=$?
        rm -rf "$temp_trace_dir"
        return $ret
 }
@@ -411,7 +403,6 @@ run_python() {
 # Python modules (in `tests/utils/python`) and the `bt2` Python package.
 run_python_bt2() {
        local lib_asan
-       local -x "BABELTRACE_PYTHON_BT2_NO_TRACEBACK=1"
        local -x "BABELTRACE_PLUGIN_PATH=${BT_TESTS_BABELTRACE_PLUGIN_PATH}"
        local -x "LIBBABELTRACE2_PLUGIN_PROVIDER_DIR=${BT_TESTS_PROVIDER_DIR}"
        local -x "BT_TESTS_DATADIR=${BT_TESTS_DATADIR}"
This page took 0.024987 seconds and 4 git commands to generate.