X-Git-Url: http://git.efficios.com/?p=lttng-tools.git;a=blobdiff_plain;f=tests%2Fregression%2Ftools%2Fmi%2Ftest_mi;h=e04db27afdb5ea092c7379e73c5aab63174070a0;hp=0e8fa672fc00f6e059a3296942e36f5ef68e1746;hb=a87067e8d07db5ca4a851ddcde4524932dfd838a;hpb=5de63f6d18f9b58a65b50c8e773cc44a2bc37e0a diff --git a/tests/regression/tools/mi/test_mi b/tests/regression/tools/mi/test_mi index 0e8fa672f..e04db27af 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=228 +NUM_TESTS=246 source $TESTDIR/utils/utils.sh @@ -132,10 +130,10 @@ function is_command_success () function mi_print_version () { - local opt=$2 local output_path=$1 + local opt=$2 - $LTTNG version $opt > $1 + $LTTNG version $opt > $output_path ok $? "MI test: Lttng version" } @@ -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 @@ -631,9 +631,9 @@ function test_start_stop () { ok $? "Mi test: enabled element : $result expected: true" #Test metadata regenerate command - metadata_regenerate_ok $session_name + regenerate_metadata_ok $session_name $XML_VALIDATE $OUTPUT_DEST - ok $? "Mi test: metadata regenerate" + ok $? "Mi test: regenerate metadata" #Test stop command stop_lttng_tracing_ok $session_name @@ -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" @@ -878,7 +877,69 @@ function test_track_untrack () destroy_lttng_sessions } -start_lttng_sessiond $FOO_LOAD_DIR +function test_add_context_list() +{ + diag "Test context listing" + + OUTPUT_FILE="list-context.xml" + OUTPUT_DEST=$OUTPUT_DIR/$OUTPUT_FILE + lttng_add_context_list + + $XML_VALIDATE $OUTPUT_DEST + ok $? "Mi test: context listing validation" +} + +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 @@ -894,6 +955,8 @@ TESTS=( test_snapshot test_track_untrack test_list_session_long_path + test_add_context_list + test_clear_session ) @@ -906,6 +969,7 @@ do fi done rm -rf $OUTPUT_DIR +rm -rf $FOO_LOAD_DIR OUTPUT_DEST=/dev/null 2>&1 stop_lttng_sessiond