#!/bin/bash # # SPDX-License-Identifier: GPL-2.0-only # # Copyright (C) 2019 Simon Marchi # # Test the auto source disovery mechanism of the CLI. if [ "x${BT_TESTS_SRCDIR:-}" != "x" ]; then UTILSSH="$BT_TESTS_SRCDIR/utils/utils.sh" else UTILSSH="$(dirname "$0")/../../utils/utils.sh" fi # shellcheck source=../../utils/utils.sh SH_TAP=1 source "$UTILSSH" NUM_TESTS=3 plan_tests $NUM_TESTS data_dir="${BT_TESTS_DATADIR}/auto-source-discovery/grouping" plugin_dir="${data_dir}" trace_dir="${data_dir}/traces" stdout_expected_file="${BT_TESTS_DATADIR}/cli/convert/auto-source-discovery-grouping.expect" stdout_actual_file=$(mktemp -t stdout-actual.XXXXXX) stderr_actual_file=$(mktemp -t actual-stderr.XXXXXX) bt_cli "$stdout_actual_file" "$stderr_actual_file" \ --plugin-path "${plugin_dir}" convert "ABCDE" "${trace_dir}" some_other_non_opt \ -c sink.text.details --params='with-metadata=false' ok "$?" "CLI runs successfully" # Check components and their inputs. bt_diff "$stdout_expected_file" "$stdout_actual_file" ok "$?" "expected components are instantiated with expected inputs" # Check that expected warning is printed. # shellcheck disable=SC2016 grep -q 'No trace was found based on input `some_other_non_opt`' "$stderr_actual_file" ok "$?" "warning is printed" rm -f "$stdout_actual_file" rm -f "$stderr_actual_file"