tests: add check_skip_kernel_test to check root user and lttng kernel modules
[lttng-tools.git] / tests / regression / tools / regen-metadata / test_kernel
index 3056e39049ae853883a093fab22fce9c9178e461..1b5ce2a0b2239545fd58b2a367baef9141cf4a43 100755 (executable)
@@ -11,9 +11,9 @@ TESTDIR=$CURDIR/../../..
 EVENT_NAME="lttng_test_filter_event"
 SESSION_NAME=""
 
-TRACE_PATH=$(mktemp -d)
+TRACE_PATH=$(mktemp -d -t tmp.test_regen_metadata_kernel_trace_path.XXXXXX)
 
-NUM_TESTS=24
+NUM_TESTS=32
 
 source $TESTDIR/utils/utils.sh
 
@@ -76,17 +76,30 @@ function test_kernel_local ()
        rm -rf "$TRACE_PATH"
 }
 
+function test_kernel_local_snapshot_after_regenerate_metadata ()
+{
+       diag "Test kernel local snapshot after regenerate metadata"
+       create_lttng_session_ok $SESSION_NAME "$TRACE_PATH" --snapshot
+       lttng_enable_kernel_event $SESSION_NAME $EVENT_NAME
+       start_lttng_tracing_ok $SESSION_NAME
+
+       echo -n "100" > /proc/lttng-test-filter-event
+
+       regenerate_metadata_ok $SESSION_NAME
+       lttng_snapshot_record $SESSION_NAME "$TRACE_PATH"
+       stop_lttng_tracing_ok $SESSION_NAME
+
+       validate_trace $EVENT_NAME "$TRACE_PATH"
+       destroy_lttng_session_ok $SESSION_NAME
+
+       rm -rf "$TRACE_PATH"
+}
+
 plan_tests $NUM_TESTS
 
 print_test_banner "$TEST_DESC"
 
-if [ "$(id -u)" == "0" ]; then
-       isroot=1
-else
-       isroot=0
-fi
-
-skip $isroot "Root access is needed. Skipping all kernel streaming tests." $NUM_TESTS ||
+check_skip_kernel_test "$NUM_TESTS" "Skipping all tests." ||
 {
        validate_lttng_modules_present
 
@@ -94,7 +107,8 @@ skip $isroot "Root access is needed. Skipping all kernel streaming tests." $NUM_
        start_lttng_sessiond
        modprobe lttng-test
 
-       tests=( test_kernel_streaming test_kernel_local )
+       tests=( test_kernel_streaming test_kernel_local
+               test_kernel_local_snapshot_after_regenerate_metadata )
 
        for fct_test in ${tests[@]};
        do
This page took 0.023964 seconds and 4 git commands to generate.