X-Git-Url: http://git.efficios.com/?p=lttng-tools.git;a=blobdiff_plain;f=tests%2Fregression%2Ftools%2Fstreaming%2Ftest_kernel;h=42df7b0d50c00fbe8f0effc4a0d4b1cff737ad7f;hp=f8b813d289e83f81a5e4bec20f258df2f7daebc6;hb=bd2d5dd19e3017f119491213003ef069b8008b24;hpb=ef8343605f92072ca2ed7174b0cc2594ee33dfab diff --git a/tests/regression/tools/streaming/test_kernel b/tests/regression/tools/streaming/test_kernel index f8b813d28..42df7b0d5 100755 --- a/tests/regression/tools/streaming/test_kernel +++ b/tests/regression/tools/streaming/test_kernel @@ -24,41 +24,29 @@ SESSION_NAME="" TRACE_PATH=$(mktemp -d) +NUM_TESTS=11 + source $TESTDIR/utils/utils.sh print_test_banner "$TEST_DESC" -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 - # 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 +57,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 +77,36 @@ function test_kernel_after_start () destroy_lttng_session $SESSION_NAME } -start_lttng_sessiond -start_lttng_relayd "-o $TRACE_PATH" - -tests=( test_kernel_before_start ) - -for fct_test in ${tests[@]}; -do - SESSION_NAME=$(randstring 16 0) - ${fct_test} +plan_tests $NUM_TESTS - # 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 - -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_sessiond + start_lttng_relayd "-o $TRACE_PATH" + + 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 +}