Auto Generated INFO.yaml file
[domino.git] / tests / run.sh
index 33c2749..3971009 100755 (executable)
@@ -18,28 +18,37 @@ CLIENT2_CLIPORT=9200
 LOGLEVEL=DEBUG
 
 toscafile_test1=./tosca-templates/tosca_helloworld_nfv.yaml
-test1_reffile=./tests/refdata/test1.ref
+test1_reffile1=./tests/refdata/test1_client1.ref
+test1_reffile2=./tests/refdata/test1_client2.ref
 client1_log=./tests/logdata/client1.log
+client2_log=./tests/logdata/client2.log
 server_log=./tests/logdata/server.log
 
+
 start_server() {
-  pgrep -f "python DominoServer.py" && return 0  
+  pgrep -f "python DominoServer.py" && return 0
   python DominoServer.py --log "$LOGLEVEL" > "$server_log" 2>&1 &
 }
 
 stop_server() {
-  pgrep -f "python DominoServer.py" || return 0  
+  pgrep -f "python DominoServer.py" || return 0
   kill $(pgrep -f "python DominoServer.py")
   #cat server.log
 }
 
 start_client1() {
-  pgrep -f "python DominoClient.py" && return 0
+  #pgrep -f "python DominoClient.py -p $CLIENT1_PORT" && return 0
   python DominoClient.py -p $CLIENT1_PORT --cliport $CLIENT1_CLIPORT \
        --log "$LOGLEVEL" > "$client1_log" 2>&1 &
 }
 
-stop_client1() {
+start_client2() {
+  #pgrep -f "python DominoClient.py -p $CLIENT2_PORT" && return 0
+  python DominoClient.py -p $CLIENT2_PORT --cliport $CLIENT2_CLIPORT \
+        --log "$LOGLEVEL" > "$client2_log" 2>&1 &
+}
+
+stop_clients() {
   pgrep -f "python DominoClient.py" || return 0
   kill $(pgrep -f "python DominoClient.py")
   #cat client1.log
@@ -59,8 +68,8 @@ cleanup() {
   set +e
   echo "cleanup..."
   
-  echo "Stopping Domino Client 1..."
-  stop_client1
+  echo "Stopping Domino Clients..."
+  stop_clients
 
   echo "Stopping Domino Server..."
   stop_server
@@ -68,14 +77,26 @@ cleanup() {
   if [ -f file1 ]; then
     rm file1
   fi
+
+  if [ -f file2 ]; then
+    rm file2
+  fi
 }
 
 echo "domino/tests/run.sh has been executed."
 
 trap cleanup EXIT
 
+echo "Terminating any running Domino Clients..."
+stop_clients
+
+echo "Terminating any running Domino Servers..."
+stop_server
+sleep 1
+
 echo "Cleaning residue files and folders from previous runs..."
 clean_directories
+sleep 1
 
 echo "Launching Domino Server..."
 start_server
@@ -85,34 +106,47 @@ echo "Launching Domino Client 1..."
 start_client1
 sleep 1
 
+echo "Launching Domino Client 2..."
+start_client2
+sleep 1
+
 echo "Test Heartbeat"
-python domino-cli.py $CLIENT1_CLIPORT heartbeat
+python domino_cli.py $CLIENT1_CLIPORT heartbeat
 sleep 1
 
 echo "Test Subscribe API"
-python domino-cli.py $CLIENT1_CLIPORT subscribe -t hot \
+python domino_cli.py $CLIENT1_CLIPORT subscribe -t hot \
        -l tosca.policies.Placement:properties:region:nova-1  
 sleep 1
-python domino-cli.py $CLIENT1_CLIPORT subscribe -t dummy1,dummy2 --top OVERWRITE
+python domino_cli.py $CLIENT1_CLIPORT subscribe -t dummy1,dummy2 --top OVERWRITE
 sleep 1
-python domino-cli.py $CLIENT1_CLIPORT subscribe -t dummy1,dummy2 --top DELETE
+python domino_cli.py $CLIENT1_CLIPORT subscribe -t dummy1,dummy2 --top DELETE
 sleep 1
-python domino-cli.py $CLIENT1_CLIPORT subscribe \
-        -l tosca.policies.Placement:properties:region:nova-2 \
+python domino_cli.py $CLIENT1_CLIPORT subscribe \
+        -l tosca.policies.Placement:properties:region:nova-2
 sleep 1
-python domino-cli.py $CLIENT1_CLIPORT subscribe \
+python domino_cli.py $CLIENT1_CLIPORT subscribe \
        -l tosca.policies.Placement:properties:region:nova-3 \
        --lop OVERWRITE
 sleep 1
-python domino-cli.py $CLIENT1_CLIPORT subscribe \
+python domino_cli.py $CLIENT1_CLIPORT subscribe \
         -l tosca.policies.Placement:properties:region:nova-3 \
        --lop DELETE
 sleep 1
 
 echo "Test Publish API"
-python domino-cli.py $CLIENT1_CLIPORT publish -t "$toscafile_test1" 
+python domino_cli.py $CLIENT1_CLIPORT publish -t "$toscafile_test1" 
 
-sleep 5
+sleep 1
+python domino_cli.py $CLIENT1_CLIPORT subscribe \
+        -l tosca.policies.Placement.Geolocation:properties:region:us-west-1
+sleep 1
+python domino_cli.py $CLIENT2_CLIPORT publish -t "$toscafile_test1"
+sleep 1
+TUID=$(python domino_cli.py $CLIENT2_CLIPORT list-tuids | cut -c3-34)
+echo $TUID
+sleep 1
+python domino_cli.py $CLIENT2_CLIPORT publish -t "$toscafile_test1" -k "$TUID"
 
 #echo "Stopping Domino Client 1..."
 #stop_client1
@@ -121,14 +155,27 @@ sleep 5
 #stop_server
 
 cut -d " " -f 4- "$client1_log" > file1
+cut -d " " -f 4- "$client2_log" > file2
 #will use the form below to declare success or failure
-diff -q file1 "$test1_reffile" 1>/dev/null
+set +e
+
+diff -q file1 "$test1_reffile1" 1>/dev/null
+if [[ $? == "0" ]]
+then
+  echo "Log1 PASS"
+else
+  echo "Log1 FAIL"
+fi
+
+diff -q file2 "$test1_reffile2" 1>/dev/null
 if [[ $? == "0" ]]
 then
-  echo "SUCCESS"
+  echo "Log2 PASS"
 else
-  echo "FAILURE"
+  echo "Log2 FAIL"
 fi
 
+set -e
 
 echo "done"
+exit 0