diff --git a/tools/test/bin/find-node.sh b/tools/test/bin/find-node.sh
index e76a84a..0636548 100644
--- a/tools/test/bin/find-node.sh
+++ b/tools/test/bin/find-node.sh
@@ -3,30 +3,26 @@
 validate_number () {
     local re="^[0-9]+$"
     if [[ ! $1 =~ $re ]] ; then
-	return 1
+        return 1
     fi
-
     return 0
 }
 
 find_node () {
     if validate_number $1 ; then
-	# input is a number, try to find if an OC node is defined
+        # input is a number, try to find if an OC node is defined
+        oc_try="OC$1"
+        node=${!oc_try}
 
-	oc_try="OC$1"
-	node=${!oc_try}
-
-	if [ -n "$node" ]; then
-    	    # node lookup succeeded, return node
-	    echo $node
-	else
-    	    # node lookup failed, return original input
-	    echo $1
-	fi
-
+        if [ -n "$node" ]; then
+            # node lookup succeeded, return node
+            echo $node
+        else
+            # node lookup failed, return original input
+            echo $1
+        fi
     else
-	echo $1
+        echo $1
     fi
-
     return 0
 }
diff --git a/tools/test/scenarios/wrapup.xml b/tools/test/scenarios/wrapup.xml
index b6fe489..6786df7 100644
--- a/tools/test/scenarios/wrapup.xml
+++ b/tools/test/scenarios/wrapup.xml
@@ -15,6 +15,7 @@
   -->
 <scenario name="wrapup" description="ONOS test wrapup">
     <group name="Wrapup">
+        <step name="Final-Diagnostics" exec="onos-diagnostics -n onos-stc-diags ${OCI}"/>
         <parallel var="${OC#}">
             <step name="Final-Check-Logs-${#}" exec="onos-check-logs ${OC#}"/>
             <step name="Fetch-Logs-${#}" exec="onos-fetch-logs ${OC#}"
