Gen-ust-events: use options instead of arguments
[lttng-tools.git] / tests / regression / ust / before-after / test_before_after
index ed4981ba0f55d3f96cd6c5a3c559b96a0eb8f32b..237e21b916bb5567c489faa2dcb36fc874738a3f 100755 (executable)
@@ -25,7 +25,7 @@ TESTAPP_NAME="gen-ust-events"
 TESTAPP_BIN="$TESTAPP_PATH/$TESTAPP_NAME/$TESTAPP_NAME"
 SESSION_NAME="per-session"
 EVENT_NAME="tp:tptest"
-NUM_TESTS=17
+NUM_TESTS=16
 
 source $TESTDIR/utils/utils.sh
 
@@ -35,28 +35,21 @@ fi
 
 # MUST set TESTDIR before calling those functions
 
-function wait_app()
-{
-       while [ -n "$(pidof $TESTAPP_NAME)" ]; do
-               sleep 0.5
-       done
-       pass "Application $TESTAPP_NAME ended."
-}
-
 function test_before_apps()
 {
        # BEFORE application is spawned
-       create_lttng_session $SESSION_NAME $TRACE_PATH
-       enable_ust_lttng_event $SESSION_NAME $EVENT_NAME
-       start_lttng_tracing $SESSION_NAME
+       create_lttng_session_ok $SESSION_NAME $TRACE_PATH
+       enable_ust_lttng_event_ok $SESSION_NAME $EVENT_NAME
+       start_lttng_tracing_ok $SESSION_NAME
 
-       $TESTAPP_BIN $NR_ITER $NR_USEC_WAIT
+       $TESTAPP_BIN -i $NR_ITER -w $NR_USEC_WAIT &
+       wait
        ok $? "Traced application stopped."
 
-       stop_lttng_tracing $SESSION_NAME
-       destroy_lttng_session $SESSION_NAME
+       stop_lttng_tracing_ok $SESSION_NAME
+       destroy_lttng_session_ok $SESSION_NAME
 
-       trace_matches $EVENT_NAME $NR_ITER $TRACE_PATH
+       trace_match_only $EVENT_NAME $NR_ITER $TRACE_PATH
 
        return $?
 }
@@ -64,23 +57,28 @@ function test_before_apps()
 function test_after_apps()
 {
        local out
+       local file_sync_after_first=$(mktemp -u)
+       local file_sync_before_last=$(mktemp -u)
 
-       $TESTAPP_BIN $NR_ITER $NR_USEC_WAIT &
+       create_lttng_session_ok $SESSION_NAME $TRACE_PATH
+       enable_ust_lttng_event_ok $SESSION_NAME $EVENT_NAME
+
+       $TESTAPP_BIN -i $NR_ITER -w $NR_USEC_WAIT \
+               --sync-after-first-event ${file_sync_after_first} \
+               --sync-before-last-event ${file_sync_before_last} &
        ok $? "Application started in background."
 
-       # BEFORE application is spawned
-       create_lttng_session $SESSION_NAME $TRACE_PATH
-       enable_ust_lttng_event $SESSION_NAME $EVENT_NAME
-       start_lttng_tracing $SESSION_NAME
-
-       # Since the start is done after the application is started, there is a
-       # bootstrap time needed between the session daemon and the UST tracer.
-       # Waiting for the application to end tells us when to stop everything and
-       # validate that at least one event is seen.
-       wait_app
-
-       stop_lttng_tracing $SESSION_NAME
-       destroy_lttng_session $SESSION_NAME
+       start_lttng_tracing_ok $SESSION_NAME
+
+       touch ${file_sync_before_last}
+
+       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}
 
        validate_trace $EVENT_NAME $TRACE_PATH
        out=$?
This page took 0.024968 seconds and 5 git commands to generate.