r19169: port the trick to only display the smbd and nmbd log output
authorStefan Metzmacher <metze@samba.org>
Sun, 8 Oct 2006 20:30:09 +0000 (20:30 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 17:15:19 +0000 (12:15 -0500)
of the current test

metze

source/script/tests/test_functions.sh

index badbdd5b8e276190276950c6f70970c544e846a8..913e93210ae80a161f0668c470826d6a9d5ba1fa 100644 (file)
@@ -145,6 +145,13 @@ testit() {
        TEST_PCAP="$PREFIX/test_${shname}_${UNIQUE_PID}.pcap"
        trap "rm -f $TEST_LOG $TEST_PCAP" EXIT
 
+       if [ -z "$nmbd_log_size" ]; then
+               nmbd_log_size=`wc -l < $NMBD_TEST_LOG`;
+       fi
+       if [ -z "$smbd_log_size" ]; then
+               smbd_log_size=`wc -l < $SMBD_TEST_LOG`;
+       fi
+
        if [ x"$RUN_FROM_BUILD_FARM" = x"yes" ];then
                echo "--==--==--==--==--==--==--==--==--==--==--"
                echo "Running test $name (level 0 stdout)"
@@ -175,13 +182,29 @@ testit() {
 
        ( $cmdline > $TEST_LOG 2>&1 )
        status=$?
+       # show any additional output from smbd that has happened in this test
+       samba3_nmbd_test_log && {
+               new_log_size=`wc -l < $NMBD_TEST_LOG`;
+               test "$new_log_size" = "$nmbd_log_size" || {
+                       echo "NMBD OUTPUT:";
+                       incr_log_size=`expr $new_log_size - $nmbd_log_size`;
+                       tail -$incr_log_size $NMBD_TEST_LOG;
+                       nmbd_log_size=$new_log_size;
+               }
+       }
+       samba3_smbd_test_log && {
+               new_log_size=`wc -l < $SMBD_TEST_LOG`;
+               test "$new_log_size" = "$smbd_log_size" || {
+                       echo "SMBD OUTPUT:";
+                       incr_log_size=`expr $new_log_size - $smbd_log_size`;
+                       tail -$incr_log_size $SMBD_TEST_LOG;
+                       smbd_log_size=$new_log_size;
+               }
+       }
+
        if [ x"$status" != x"0" ]; then
                echo "TEST OUTPUT:"
                cat $TEST_LOG;
-               samba3_nmbd_test_log && echo "NMBD OUTPUT:";
-               samba3_nmbd_test_log && cat $NMBD_TEST_LOG;
-               samba3_smbd_test_log && echo "SMBD OUTPUT:";
-               samba3_smbd_test_log && cat $SMBD_TEST_LOG;
                rm -f $TEST_LOG;
                if [ x"$MAKE_TEST_ENABLE_PCAP" = x"yes" ];then
                        echo "TEST PCAP: $TEST_PCAP"