Gen-ust-events: use options instead of arguments
[lttng-tools.git] / tests / regression / tools / crash / test_crash
index 35a5bd7bcb72fd858cd3338de2fe1d308157de1c..97b94a8a9e06f32c401f9a5880d564870a7be3e8 100755 (executable)
@@ -31,7 +31,7 @@ NR_ITER=-1
 # Temp file output
 OUTPUT_DIR=$(mktemp -d)
 
-NUM_TESTS=71
+NUM_TESTS=77
 
 source $TESTDIR/utils/utils.sh
 
@@ -48,7 +48,7 @@ function start_test_app()
        local tmp_file=$(mktemp -u)
 
        # Start application with a temporary file.
-       $TESTAPP_BIN $NR_ITER $NR_USEC_WAIT $tmp_file &
+       $TESTAPP_BIN -i $NR_ITER -w $NR_USEC_WAIT --sync-after-first-event $tmp_file &
        ret=$?
        APPS_PID="${APPS_PID} ${!}"
        ok $ret "Start application to trace"
@@ -87,19 +87,11 @@ function stop_test_app()
 function verify_path_dont_exists()
 {
        local path=$1
-       local timeout_try_limit=100
-       local timeout_try_count=0
-       local timeout_flag=0
 
        while find $path -mindepth 1 -maxdepth 1 &>/dev/null ; do
-               if [[ $timeout_try_count -gt $timeout_try_limit ]]; then
-                       timeout_flag=1
-                       break
-               fi
-               timeout_try_count=$((timeout_try_count+1))
-               sleep 0.1
+               sleep 2
        done
-       return $timeout_flag
+       return 0
 }
 
 function test_shm_path_per_pid()
@@ -114,6 +106,8 @@ function test_shm_path_per_pid()
        create_lttng_session_ok $session_name $OUTPUT_DIR "--shm-path $shm_path"
        enable_ust_lttng_channel_ok $session_name $channel_name "--buffers-pid"
 
+       start_lttng_tracing_ok $session_name
+
        diag "Shm: clean state"
        file_count=$(find $shm_path -mindepth 1 -maxdepth 1 | wc -l)
        test $file_count -eq "0"
@@ -182,6 +176,8 @@ function test_shm_path_per_uid()
        create_lttng_session_ok $session_name $OUTPUT_DIR "--shm-path $shm_path"
        enable_ust_lttng_channel_ok $session_name $channel_name "--buffers-uid"
 
+       start_lttng_tracing_ok $session_name
+
        diag "Shm: test clean state"
        file_count=$(find $shm_path -mindepth 1 -maxdepth 1 | wc -l)
        test $file_count -eq "0"
@@ -236,7 +232,7 @@ function test_lttng_crash()
        start_lttng_tracing_ok $session_name
 
        # Generate 10 events
-       $TESTAPP_BIN 10 0
+       $TESTAPP_BIN -i 10 -w 0
        stop_lttng_tracing
 
        crash_recup_count=$($LTTNG_CRASH $shm_path | wc -l)
@@ -274,7 +270,7 @@ function test_lttng_crash_extraction()
 
        start_lttng_tracing_ok $session_name
        # Generate 10 events
-       $TESTAPP_BIN 10 0
+       $TESTAPP_BIN -i 10 -w 0
        stop_lttng_tracing
 
        $LTTNG_CRASH -x $extraction_path $shm_path
@@ -303,6 +299,8 @@ function test_shm_path_per_pid_sigint()
        create_lttng_session_ok $session_name $OUTPUT_DIR "--shm-path $shm_path"
        enable_ust_lttng_channel_ok $session_name $channel_name "--buffers-pid"
 
+       start_lttng_tracing_ok $session_name
+
        start_test_app
        start_test_app
        shm_session_path=$(find $shm_path -mindepth 1 -maxdepth 1)
@@ -332,6 +330,8 @@ function test_shm_path_per_uid_sigint()
        create_lttng_session_ok $session_name $OUTPUT_DIR "--shm-path $shm_path"
        enable_ust_lttng_channel_ok $session_name $channel_name "--buffers-uid"
 
+       start_lttng_tracing_ok $session_name
+
        start_test_app
        start_test_app
        shm_session_path=$(find $shm_path -mindepth 1 -maxdepth 1)
@@ -366,7 +366,10 @@ function test_lttng_crash_extraction_sigkill()
        start_lttng_tracing_ok $session_name
 
        # Generate 10 events
-       $TESTAPP_BIN 10 0
+       $TESTAPP_BIN -i 10 -w 0
+
+       sigstop_lttng_sessiond
+       sigstop_lttng_consumerd
 
        # Kill the consumers then sessiond with sigkill
        stop_lttng_consumerd SIGKILL
@@ -385,6 +388,14 @@ function test_lttng_crash_extraction_sigkill()
        rm -rf $extraction_dir_path
 }
 
+function interrupt_cleanup()
+{
+    diag "*** Cleaning-up test ***"
+    stop_test_apps
+    stop_lttng_sessiond
+    exit 1
+}
+
 TESTS=(
        test_shm_path_per_uid
        test_shm_path_per_pid
@@ -395,6 +406,7 @@ TESTS=(
        test_lttng_crash_extraction_sigkill
 )
 
+trap interrupt_cleanup SIGTERM SIGINT
 
 for fct_test in ${TESTS[@]};
 do
This page took 0.027337 seconds and 5 git commands to generate.