X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;ds=sidebyside;f=tests%2Fregression%2Ftools%2Fmi%2Ftest_mi;h=8ab91cfef33a8b0d70fdc30bf6286c67ed8a0c47;hb=5ee26199ebe087bb725f096a932a22b0c73f2bc0;hp=3509da1de648a86fae479fe8954682d351f43779;hpb=59deec0c09b544d548711deaa6d8206efe99ea0d;p=lttng-tools.git diff --git a/tests/regression/tools/mi/test_mi b/tests/regression/tools/mi/test_mi index 3509da1de..8ab91cfef 100755 --- a/tests/regression/tools/mi/test_mi +++ b/tests/regression/tools/mi/test_mi @@ -20,8 +20,6 @@ TEST_DESC="Machine interface testing" CURDIR=$(dirname $0)/ TESTDIR=$CURDIR/../../../ XSD_PATH=$TESTDIR/../src/common/mi-lttng-3.0.xsd -SESSIOND_BIN="lttng-sessiond" -RELAYD_BIN="lttng-relayd" #Test app for ust event TESTAPP_PATH="$TESTDIR/utils/testapp" @@ -32,7 +30,7 @@ NR_ITER=10000 #Temp file output OUTPUT_DIR=$(mktemp -d) -FOO_LOAD_DIR=$(mktemp -d) +SESSIOND_LOAD_DIR=$(mktemp -d) OUTPUT_FILE="default.xml" #Path to custom xml utilities @@ -59,7 +57,7 @@ DEVNULL=/dev/null 2>&1 DIR=$(readlink -f $TESTDIR) -NUM_TESTS=230 +NUM_TESTS=246 source $TESTDIR/utils/utils.sh @@ -546,7 +544,9 @@ function test_list_ust_event () OUTPUT_DEST=$OUTPUT_DIR/$OUTPUT_FILE #Begin testing - $TESTAPP_BIN $NR_ITER $NR_USEC_WAIT ${file_sync_after_first} ${file_sync_before_last} & 2>/dev/null + $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} & 2>/dev/null while [ ! -f "${file_sync_after_first}" ]; do sleep 0.5 @@ -678,7 +678,7 @@ function test_snapshot () { #Test fail command #No channel enable start command should return element success false OUTPUT_DEST=$OUTPUT_DIR/$OUTPUT_FILE - lttng_snapshot_add_output_ok $session_name $snapshot_path + lttng_snapshot_add_output_ok $session_name file://$snapshot_path $XML_VALIDATE $OUTPUT_DEST ok $? "Mi test: snapshot xsd validation" @@ -748,7 +748,6 @@ function test_track_untrack () diag "Test track/untrack pid" local session_name="testTrack" - local snapshot_path="$OUTPUT_DIR/trackoutput" local pid="1,2,3" OUTPUT_FILE="track.xml" @@ -890,7 +889,57 @@ function test_add_context_list() ok $? "Mi test: context listing validation" } -start_lttng_sessiond $FOO_LOAD_DIR +function test_clear_session () +{ + # Since the session are not started there is no real clear done. + # We are testing the MI output only here. + local session_name=( + "testSession1" + "testSession2" + "testSession3") + + OUTPUT_FILE="clear_session.xml" + + #Test build up + OUTPUT_DEST=$DEVNULL + for (( i = 0; i < 3; i++ )); do + create_lttng_session_ok ${session_name[$i]} $OUTPUT_DIR + done + + OUTPUT_DEST=$OUTPUT_DIR/$OUTPUT_FILE + lttng_clear_session_ok ${session_name[0]} + $XML_VALIDATE $OUTPUT_DEST + ok $? "MI test: clear session ${session_name[0]} xsd validation" + + #Verify that we cleared the good session + extract_xml $OUTPUT_DEST $XPATH_SESSION"/lttng:name/text()" result + test "$result" = "${session_name[0]}" + ok $? "Mi test: cleared session: $result expected: ${session_name[0]}" + + #Destroy all and count:should be 3 + lttng_clear_all + $XML_VALIDATE $OUTPUT_DEST + ok $? "MI test: clear all session xsd validation" + + #Verify that we cleared 3 sessions + extract_xml $OUTPUT_DEST $XPATH_SESSION"/lttng:name/text()" result + num=$(echo "$result" | wc -l) + test "$num" -eq "3" + ok $? "Mi test: $num / 3 sessions discovered" + + destroy_lttng_sessions + + #Verify that if no session is present command fail and mi report it. + lttng_clear_session_fail ${session_name[0]} + $XML_VALIDATE $OUTPUT_DEST + ok $? "MI test: failing clear session ${session_name[0]} xsd validation" + extract_xml $OUTPUT_DEST $XPATH_COMMAND_SUCCESS result + test "$result" = "false" + ok $? "Mi test: clear command on ${session_name[0]} failed as expected" + +} + +start_lttng_sessiond $SESSIOND_LOAD_DIR TESTS=( test_version test_create_session @@ -907,6 +956,7 @@ TESTS=( test_track_untrack test_list_session_long_path test_add_context_list + test_clear_session ) @@ -919,6 +969,7 @@ do fi done rm -rf $OUTPUT_DIR +rm -rf $FOO_LOAD_DIR OUTPUT_DEST=/dev/null 2>&1 stop_lttng_sessiond