X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=tests%2Fregression%2Ftools%2Fstreaming%2Ftest_kernel;h=9877bb8d949f455c3e9ef071169c26f787eb7965;hb=5dca3876619568b5c08af5f0e49560ef618eae2f;hp=f8b813d289e83f81a5e4bec20f258df2f7daebc6;hpb=ef8343605f92072ca2ed7174b0cc2594ee33dfab;p=lttng-tools.git diff --git a/tests/regression/tools/streaming/test_kernel b/tests/regression/tools/streaming/test_kernel index f8b813d28..9877bb8d9 100755 --- a/tests/regression/tools/streaming/test_kernel +++ b/tests/regression/tools/streaming/test_kernel @@ -24,41 +24,27 @@ SESSION_NAME="" TRACE_PATH=$(mktemp -d) -source $TESTDIR/utils/utils.sh - -print_test_banner "$TEST_DESC" +NUM_TESTS=10 -if [ "$(id -u)" != "0" ]; then - echo "This test must be running as root. Aborting" - # Exit status 0 so the tests can continue - exit 0 -fi +source $TESTDIR/utils/utils.sh # LTTng kernel modules check out=`ls /lib/modules/$(uname -r)/extra | grep lttng` if [ -z "$out" ]; then - echo "LTTng modules not detected. Aborting kernel tests!" - echo "" - # Exit status 0 so the tests can continue - exit 0 + BAIL_OUT "LTTng modules not detected." fi function lttng_create_session_uri { - echo -n "Creating session $SESSION_NAME... " # Create session with default path $TESTDIR/../src/bin/lttng/$LTTNG_BIN create $SESSION_NAME -U net://localhost >/dev/null 2>&1 - if [ $? -eq 1 ]; then - print_fail - return 1 - else - print_ok - fi + + ok $? "Create session $SESSION_NAME" } function test_kernel_before_start () { - echo -e "\n=== Testing kernel streaming with event enable BEFORE start\n" + diag "Test kernel streaming with event enable BEFORE start" lttng_create_session_uri lttng_enable_kernel_event $SESSION_NAME $EVENT_NAME start_lttng_tracing $SESSION_NAME @@ -69,19 +55,17 @@ function test_kernel_before_start () # We can not predict _yet_ when the trace is available so we have to do a # arbitratry sleep to validate the trace. - echo -n "Waiting 3 seconds for the trace to be written on disk " + diag "Wait 3 seconds for the trace to be written on disk" for i in `seq 1 3`; do - echo -n "." sleep 1 done - echo "" } # Deactivated since this feature is not yet available where we can enable # an event AFTERE tracing has started. function test_kernel_after_start () { - echo -e "\n=== Testing kernel streaming with event enable AFTER start\n" + diag "Test kernel streaming with event enable AFTER start" lttng_create_session_uri start_lttng_tracing $SESSION_NAME lttng_enable_kernel_event $SESSION_NAME $EVENT_NAME @@ -91,29 +75,38 @@ function test_kernel_after_start () destroy_lttng_session $SESSION_NAME } -start_lttng_sessiond -start_lttng_relayd "-o $TRACE_PATH" - -tests=( test_kernel_before_start ) +plan_tests $NUM_TESTS -for fct_test in ${tests[@]}; -do - SESSION_NAME=$(randstring 16 0) - ${fct_test} - - # Validate test - validate_trace $EVENT_NAME $TRACE_PATH/$HOSTNAME/$SESSION_NAME* - if [ $? -eq 0 ]; then - # Only delete if successful - rm -rf $TRACE_PATH - else - break - fi -done +print_test_banner "$TEST_DESC" -echo "" -stop_lttng_sessiond -stop_lttng_relayd +if [ "$(id -u)" == "0" ]; then + isroot=1 +else + isroot=0 +fi +skip $isroot "Root access is needed. Skipping all kernel streaming tests." $NUM_TESTS || +{ + start_lttng_relayd "-o $TRACE_PATH" + start_lttng_sessiond + + tests=( test_kernel_before_start ) + + for fct_test in ${tests[@]}; + do + SESSION_NAME=$(randstring 16 0) + ${fct_test} + + # Validate test + validate_trace $EVENT_NAME $TRACE_PATH/$HOSTNAME/$SESSION_NAME* + if [ $? -eq 0 ]; then + # Only delete if successful + rm -rf $TRACE_PATH + else + break + fi + done -exit $out + stop_lttng_sessiond + stop_lttng_relayd +}