Refactor: test: wrapper for destroy_lttng_session
[lttng-tools.git] / tests / regression / tools / streaming / test_ust
index 785a9a8353efe813dc6fd66f318386f8afa3684e..a5d5b5e9215191c7dab80b86b7741014cb63df1b 100755 (executable)
@@ -29,7 +29,7 @@ PID_RELAYD=0
 
 TRACE_PATH=$(mktemp -d)
 
-NUM_TESTS=18
+NUM_TESTS=16
 
 source $TESTDIR/utils/utils.sh
 
@@ -44,47 +44,56 @@ function lttng_create_session_uri
        ok $? "Create session with default path"
 }
 
-function wait_apps
-{
-       while [ -n "$(pidof $TESTAPP_NAME)" ]; do
-               sleep 0.5
-       done
-       pass "Wait for applications to end"
-}
 
 # MUST set TESTDIR before calling those functions
 
 function test_ust_before_start ()
 {
+       local file_sync_after_first=$(mktemp -u)
+       local file_sync_before_last=$(mktemp -u)
+
        diag "Test UST streaming BEFORE tracing starts"
        lttng_create_session_uri
-       enable_ust_lttng_event $SESSION_NAME $EVENT_NAME
+       enable_ust_lttng_event_ok $SESSION_NAME $EVENT_NAME
 
        # Run 5 times with a 1 second delay
-       $TESTAPP_BIN $NR_ITER $NR_USEC_WAIT >/dev/null 2>&1 &
+       $TESTAPP_BIN $NR_ITER $NR_USEC_WAIT ${file_sync_after_first} ${file_sync_before_last} /dev/null 2>&1 &
 
-       start_lttng_tracing $SESSION_NAME
+       start_lttng_tracing_ok $SESSION_NAME
 
-       wait_apps
+       touch ${file_sync_before_last}
 
-       stop_lttng_tracing $SESSION_NAME
-       destroy_lttng_session $SESSION_NAME
+       # Wait for the applications started in background
+       wait
+
+       stop_lttng_tracing_ok $SESSION_NAME
+       destroy_lttng_session_ok $SESSION_NAME
+       rm -f ${file_sync_after_first}
+       rm -f ${file_sync_before_last}
 }
 
 function test_ust_after_start ()
 {
+       local file_sync_after_first=$(mktemp -u)
+
        diag "Test UST streaming AFTER tracing starts"
        lttng_create_session_uri
-       enable_ust_lttng_event $SESSION_NAME $EVENT_NAME
-       start_lttng_tracing $SESSION_NAME
+       enable_ust_lttng_event_ok $SESSION_NAME $EVENT_NAME
+       start_lttng_tracing_ok $SESSION_NAME
 
        # Run 5 times with a 1 second delay
-       $TESTAPP_BIN $NR_ITER $NR_USEC_WAIT >/dev/null 2>&1 &
+       $TESTAPP_BIN $NR_ITER $NR_USEC_WAIT ${file_sync_after_first} >/dev/null 2>&1
+
+       while [ ! -f "${file_sync_after_first}" ]; do
+               sleep 0.5
+       done
 
-       wait_apps
+       stop_lttng_tracing_ok $SESSION_NAME
+       destroy_lttng_session_ok $SESSION_NAME
 
-       stop_lttng_tracing $SESSION_NAME
-       destroy_lttng_session $SESSION_NAME
+       # Wait for the applications started in background
+       wait
+       rm -f ${file_sync_after_first}
 }
 
 plan_tests $NUM_TESTS
This page took 0.026396 seconds and 5 git commands to generate.