cli: apply log levels (`--log-level` option) to leftovers
[babeltrace.git] / tests / cli / convert / test_auto_source_discovery_log_level
diff --git a/tests/cli/convert/test_auto_source_discovery_log_level b/tests/cli/convert/test_auto_source_discovery_log_level
new file mode 100755 (executable)
index 0000000..ee91889
--- /dev/null
@@ -0,0 +1,92 @@
+#!/bin/bash
+#
+# Copyright (C) 2019 Simon Marchi <simon.marchi@efficios.com>
+#
+# This program is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License, version 2 only, as
+# published by the Free Software Foundation.
+#
+# This program is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+# more details.
+#
+# You should have received a copy of the GNU General Public License along with
+# this program; if not, write to the Free Software Foundation, Inc., 51
+# Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+# Test log level options are applied to sources auto-discovered by the convert
+# command.
+
+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=4
+
+plan_tests $NUM_TESTS
+
+data_dir="${BT_TESTS_DATADIR}/cli/convert/auto-source-discovery-params-log-level"
+plugin_dir="${data_dir}"
+dir_a="${data_dir}/dir-a"
+dir_b="${data_dir}/dir-b"
+dir_ab="${data_dir}/dir-ab"
+
+expected_file=$(mktemp -t expected.XXXXXX)
+stderr_expected=/dev/null
+
+print_log_level="--params print=\"log-level\""
+
+debug=2
+trace=1
+
+# Apply log level to two components from one leftover.
+cat > "$expected_file" <<END
+TestSourceA: ${debug}
+TestSourceB: ${debug}
+END
+
+bt_diff_cli_sorted "$expected_file" "$stderr_expected" \
+       convert --plugin-path "${plugin_dir}" \
+       "${dir_ab}" --log-level DEBUG ${print_log_level}
+ok "$?" "apply log level to two components from one leftover"
+
+# Apply log level to two components from two distinct leftovers.
+cat > "$expected_file" <<END
+TestSourceA: ${debug}
+TestSourceB: ${trace}
+END
+
+bt_diff_cli_sorted "$expected_file" "$stderr_expected" \
+       convert --plugin-path "${plugin_dir}" \
+       "${dir_a}" --log-level DEBUG ${print_log_level} "${dir_b}" --log-level TRACE ${print_log_level}
+ok "$?" "apply log level to two leftovers"
+
+# Apply log level to one component coming from one leftover and one component coming from two leftovers (1).
+cat > "$expected_file" <<END
+TestSourceA: ${trace}
+TestSourceB: ${trace}
+END
+
+bt_diff_cli_sorted "$expected_file" "$stderr_expected" \
+       convert --plugin-path "${plugin_dir}" \
+       "${dir_a}" --log-level DEBUG ${print_log_level} "${dir_ab}" --log-level TRACE ${print_log_level}
+ok "$?" "apply log level to one component coming from one leftover and one component coming from two leftovers (1)"
+
+# Apply log level to one component coming from one leftover and one component coming from two leftovers (2).
+cat > "$expected_file" <<END
+TestSourceA: ${trace}
+TestSourceB: ${debug}
+END
+
+bt_diff_cli_sorted "$expected_file" "$stderr_expected" \
+       convert --plugin-path "${plugin_dir}" \
+       "${dir_ab}" --log-level DEBUG ${print_log_level} "${dir_a}" --log-level TRACE ${print_log_level}
+ok "$?" "apply log level to one component coming from one leftover and one component coming from two leftovers (2)"
+
+rm -f "$expected_file"
This page took 0.02343 seconds and 4 git commands to generate.