fix: tests: grep for '$key =' in metadata
[lttng-tools.git] / tests / regression / tools / metadata / test_kernel
index 82faf43b9509ffe9230a63ed792e74f5da494977..9e1e81232128d6000fffb55df13502ff068131cf 100755 (executable)
@@ -10,7 +10,7 @@ CURDIR=$(dirname "$0")/
 TESTDIR=$CURDIR/../../..
 EVENT_NAME="lttng_test_filter_event"
 
-TRACE_PATH=$(mktemp -d)
+TRACE_PATH=$(mktemp -d -t tmp.test_metadata_env_kernel_trace_path.XXXXXX)
 
 NUM_TESTS=13
 
@@ -21,16 +21,15 @@ source "$CURDIR/utils.sh"
 
 function test_kernel ()
 {
+       local metadata_path
        local metadata
        local metadata_env
-       local metadata_path
-       local value
 
        local expected_path="${TRACE_PATH}/lttng-traces"
        local session_name="kernel"
 
-       metadata=$(mktemp)
-       metadata_env=$(mktemp)
+       metadata=$(mktemp -t "tmp.test_kernel_metadata.XXXXXX")
+       metadata_env=$(mktemp -t "tmp.test_kernel_metadata_env.XXXXXX")
 
        diag "Test Kernel metadata env field"
        create_lttng_session_ok "$session_name"
@@ -45,7 +44,7 @@ function test_kernel ()
        # bt1 accepts only a directory while bt2 accepts either the metadata
        # file directly or a directory with an immediate metadata file.
        # Settle for the common denominator.
-       metadata_path=$(find "${expected_path}/${session_name}"* | grep metadata)
+       metadata_path=$(find "${expected_path}/${session_name}"* -name "metadata")
        metadata_path=$(dirname "$metadata_path")
 
        $BABELTRACE_BIN --output-format=ctf-metadata "${metadata_path}" > "$metadata"
@@ -58,33 +57,37 @@ function test_kernel ()
        # to allow trace viewer to recreate the same directory hierarchy.
 
        # Trace name
-       value=$(get_env_value "$metadata_env" trace_name)
-       ok $? "Extracting trace_name from env metadata"
-       expected_path="${expected_path}/${value}"
+       local trace_name
+       trace_name=$(get_env_value "$metadata_env" trace_name)
+       ok $? "Extracting trace_name from env metadata: \`$trace_name\`"
+       expected_path="${expected_path}/${trace_name}"
 
        # Session creation time
-       value=$(get_env_value "$metadata_env" trace_creation_datetime)
-       ok $? "Extracting trace_creation_datetime from env metadata"
-       value=$(iso8601_to_lttng_dir_datetime "$value")
-       expected_path="${expected_path}-${value}"
+       local trace_creation_datetime
+       trace_creation_datetime=$(get_env_value "$metadata_env" trace_creation_datetime)
+       ok $? "Extracting trace_creation_datetime from env metadata: \`$trace_creation_datetime\`"
+       trace_creation_datetime=$(iso8601_to_lttng_dir_datetime "$trace_creation_datetime")
+       expected_path="${expected_path}-${trace_creation_datetime}"
 
        # Domain
-       value=$(get_env_value "$metadata_env" domain)
-       ok $? "Extracting domain from env metadata"
-       expected_path="${expected_path}/${value}"
+       local domain
+       domain=$(get_env_value "$metadata_env" domain)
+       ok $? "Extracting domain from env metadata: \`$domain\`"
+       expected_path="${expected_path}/${domain}"
 
        # Append "metadata" and test that we find the file.
        expected_path="${expected_path}/metadata"
 
-       test -e "$expected_path"
-       ok $? "Reconstructed path from metadata is valid"
+       test -f "$expected_path"
+       ok $? "Reconstructed path from metadata is an existing file: \`$expected_path\`"
 
        # Hostname
        # The hostname is not part of the lttng hierarchy still we can test for
        # its validity here.
-       value=$(get_env_value "$metadata_env" hostname)
-       ok $? "Extracting hostname from env metadata"
-       is "$value" "$(hostname)" "Hostname is valid"
+       local hostname
+       hostname=$(get_env_value "$metadata_env" hostname)
+       ok $? "Extracting hostname from env metadata: \`$hostname\`"
+       is "$hostname" "$(hostname)" "Extracted hostname matches current hostname"
 
        rm -f "$metadata"
        rm -f "$metadata_env"
@@ -93,6 +96,7 @@ function test_kernel ()
 plan_tests $NUM_TESTS
 print_test_banner "$TEST_DESC"
 
+bail_out_if_no_babeltrace
 
 if [ "$(id -u)" == "0" ]; then
        isroot=1
@@ -107,9 +111,8 @@ skip $isroot "Root access is needed. Skipping all kernel metadata tests." $NUM_T
 
        # Use LTTNG_HOME since we want the complete "default" lttng directory hierarchy
        # with "<session_name>-<datetime>/...".
-       LTTNG_HOME="$TRACE_PATH"
+       export LTTNG_HOME="$TRACE_PATH"
 
-       export LTTNG_HOME
        start_lttng_sessiond
 
        tests=( test_kernel )
This page took 0.024811 seconds and 4 git commands to generate.