diff --git a/TestON/tests/OnosSanity/OnosSanity.params b/TestON/tests/OnosSanity/OnosSanity.params
new file mode 100644
index 0000000..85b626a
--- /dev/null
+++ b/TestON/tests/OnosSanity/OnosSanity.params
@@ -0,0 +1,17 @@
+<PARAMS>
+    <testcases>1</testcases>
+    <FLOWDEF>~/tmp</FLOWDEF>
+    <CASE1>       
+        <destination>h6</destination>
+    </CASE1>       
+    <PING>
+        <source1>h6</source1>
+        <target1>h31</target1>
+        <source2>h8</source2>
+        <target2>h33</target2>
+    </PING>
+    <LINK>
+        <begin>s1</begin>
+        <end>s2</end>
+    </LINK>
+</PARAMS>      
diff --git a/TestON/tests/OnosSanity/OnosSanity.py b/TestON/tests/OnosSanity/OnosSanity.py
new file mode 100644
index 0000000..baaec06
--- /dev/null
+++ b/TestON/tests/OnosSanity/OnosSanity.py
@@ -0,0 +1,130 @@
+
+class OnosSanity :
+
+    def __init__(self) :
+        self.default = ''
+
+    def CASE1(self,main) :
+        import time
+        main.case("Checking if the startup was clean...") 
+        main.step("Testing startup Zookeeper")   
+        data =  main.Zookeeper1.isup()
+        utilities.assert_equals(expect=main.TRUE,actual=data,onpass="Zookeeper is up!",onfail="Zookeeper is down...")
+        main.step("Testing startup Cassandra")   
+        data =  main.Cassandra1.isup()
+        utilities.assert_equals(expect=main.TRUE,actual=data,onpass="Cassandra is up!",onfail="Cassandra is down...")
+        main.step("Testing startup ONOS")   
+        data = main.ONOS1.isup()
+        if data == main.FALSE: 
+            main.log.info("Something is funny... restarting ONOS")
+            main.ONOS1.stop()
+            time.sleep(3)
+            main.ONOS1.start()
+            time.sleep(5) 
+            data = main.ONOS1.isup()
+        main.log.info("\n\n\t\t\t\t ONOS VERSION")
+        main.ONOS1.get_version()
+        main.log.info("\n\n")
+        utilities.assert_equals(expect=main.TRUE,actual=data,onpass="ONOS is up and running!",onfail="ONOS didn't start...")
+            
+    def CASE2(self,main) :
+        main.case("Checking if one MN host exists")
+        main.step("Host IP Checking using checkIP")
+        result = main.Mininet1.checkIP(main.params['CASE1']['destination'])
+        main.step("Verifying the result")
+        utilities.assert_equals(expect=main.TRUE,actual=result,onpass="Host IP address configured",onfail="Host IP address not configured")
+        
+    def CASE3(self,main) :
+        import time
+        main.case("Taking care of these flows!") 
+        main.step("Cleaning out any leftover flows...")
+        main.ONOS1.delete_flow("all")
+        time.sleep(5)
+        strtTime = time.time()
+        main.ONOS1.add_flow(main.params['FLOWDEF'])
+        main.case("Checking flows")
+        result = main.FALSE
+        count = 1
+        main.log.info("Wait for flows to settle, then check")
+        while result == main.FALSE:
+            main.step("Waiting")
+            time.sleep(10)
+            main.step("Checking")
+            result = main.ONOS1.check_flow()
+            if result== main.FALSE and count < 6:
+                count = count + 1
+                main.log.info("Flow failed, waiting 10 seconds then making attempt number "+str(count))
+            elif result == main.FALSE and count == 6:
+                success = main.FALSE
+                break
+            else:
+                success = main.TRUE
+                break
+        endTime = time.time()
+        main.log.info("\n\t\t\t\tTime to add flows: "+str(endTime-strtTime)+" seconds")
+        utilities.assert_equals(expect=main.TRUE,actual=success,onpass="Flow check PASS",onfail="Flow check FAIL")
+        #time.sleep(10)
+        #data = main.ONOS1.get_flow("all")   
+
+    def CASE4(self,main) :
+        main.case("Testing ping...")
+        ping_result = main.Mininet1.pingHost(src=main.params['PING']['source1'],target=main.params['PING']['target1'])
+        utilities.assert_equals(expect=main.TRUE,actual=ping_result,onpass="NO PACKET LOSS, HOST IS REACHABLE",onfail="PACKET LOST, HOST IS NOT REACHABLE") 
+
+    def CASE5(self,main) :
+        import time
+        main.case("Bringing Link down... ")
+        result = main.Mininet1.link(END1=main.params['LINK']['begin'],END2=main.params['LINK']['end'],OPTION="down")
+        utilities.assert_equals(expect=main.TRUE,actual=result,onpass="Link DOWN!",onfail="Link not brought down...")
+        time.sleep(10)
+
+    def CASE6(self,main) :
+        import time
+        main.case("Checking flows")
+        result = main.FALSE
+        count = 1
+        main.log.info("Wait for flows to settle, then check")
+        while result == main.FALSE:
+            main.step("Waiting")
+            time.sleep(10)
+            main.step("Checking")
+            result = main.ONOS1.check_flow()
+            if result== main.FALSE and count < 6:
+                count = count + 1
+                main.log.info("Flow failed, waiting 10 seconds then making attempt number "+str(count))
+            elif result == main.FALSE and count == 6:
+                success = main.FALSE
+                break
+            else:
+                success = main.TRUE
+                break
+        utilities.assert_equals(expect=main.TRUE,actual=success,onpass="Flow check PASS",onfail="Flow check FAIL")
+   
+    def CASE7(self,main) :
+        main.case("Pinging EVERYTHINGGG!!!")
+        import time
+        strtTime = time.time()
+        result = main.TRUE
+        exit = main.FALSE
+        count = 1
+        while 1:
+            for i in range(6, 16) :
+                main.log.info("\n\t\t\t\th"+str(i)+" IS PINGING h"+str(i+25) )
+                ping = main.Mininet1.pingHost(src="h"+str(i),target="h"+str(i+25))
+                if ping == main.FALSE and count < 6:
+                    count = count + 1
+                    main.log.info("Ping failed, making attempt number "+str(count)+" in 10 seconds")
+                    time.sleep(10)
+                    break
+                elif ping == main.FALSE and count ==6:
+                    main.log.error("Ping test failed")
+                    exit = main.TRUE
+                    break
+                elif ping == main.TRUE:
+                    exit = main.TRUE
+            if exit == main.TRUE:
+               endTime = time.time() 
+               break
+        main.log.info("\n\t\t\t\tTime to complete ping test: "+str(endTime-strtTime)+" seconds")
+        utilities.assert_equals(expect=main.TRUE,actual=result,onpass="NO PACKET LOSS, HOST IS REACHABLE",onfail="PACKET LOST, HOST IS NOT REACHABLE")
+
diff --git a/TestON/tests/OnosSanity/OnosSanity.topo b/TestON/tests/OnosSanity/OnosSanity.topo
new file mode 100644
index 0000000..f55162c
--- /dev/null
+++ b/TestON/tests/OnosSanity/OnosSanity.topo
@@ -0,0 +1,50 @@
+<TOPOLOGY>
+
+    <COMPONENT>
+        <Zookeeper1>
+            <host>10.128.4.26</host>
+            <user>admin</user>
+            <password>onos_test</password>
+            <type>ZookeeperCliDriver</type>
+            <connect_order>1</connect_order>
+            <COMPONENTS>
+             </COMPONENTS>
+        </Zookeeper1>
+
+        <Cassandra1>
+            <host>10.128.4.26</host>
+            <user>admin</user>
+            <password>onos_test</password>
+            <type>CassandraCliDriver</type>
+            <connect_order>2</connect_order>
+            <COMPONENTS>
+             </COMPONENTS>
+        </Cassandra1>
+
+        <ONOS1>
+            <host>10.128.4.26</host>
+            <user>admin</user>
+            <password>onos_test</password>
+            <type>OnosCliDriver</type>
+            <connect_order>3</connect_order>
+            <COMPONENTS>
+
+             </COMPONENTS>
+        </ONOS1>
+
+        <Mininet1>
+            <host>10.128.4.26</host>
+            <user>admin</user>
+            <password>onos_test</password>
+            <type>MininetCliDriver</type>
+            <connect_order>4</connect_order>
+            <COMPONENTS>
+                # Specify the Option for mininet
+                <arg1> --custom ~/mininet/custom/topo-2sw-2host.py </arg1>
+                <arg2> --topo mytopo</arg2>
+                <controller> remote </controller>
+             </COMPONENTS>
+        </Mininet1>
+
+    </COMPONENT>
+</TOPOLOGY>
diff --git a/TestON/tests/OnosSanity/OnosSanity.topo.back b/TestON/tests/OnosSanity/OnosSanity.topo.back
new file mode 100644
index 0000000..9561597
--- /dev/null
+++ b/TestON/tests/OnosSanity/OnosSanity.topo.back
@@ -0,0 +1,42 @@
+<TOPOLOGY>
+
+    <COMPONENT>
+        <Zookeeper1>
+            <host>10.128.4.26</host>
+            <user>admin</user>
+            <password>onos_test</password>
+            <type>ZookeeperCliDriver</type>
+            <COMPONENTS>
+             </COMPONENTS>   
+        </Zookeeper1>     
+        <Cassandra1>
+            <host>10.128.4.26</host>
+            <user>admin</user>
+            <password>onos_test</password>
+            <type>CassandraCliDriver</type>
+            <COMPONENTS>
+             </COMPONENTS>   
+        </Cassandra1>   
+        <ONOS1>
+            <host>10.128.4.26</host>
+            <user>admin</user>
+            <password>onos_test</password>
+            <type>OnosCliDriver</type>
+            <COMPONENTS>
+            
+             </COMPONENTS>   
+        </ONOS1> 
+        
+        
+         <ONOSRESTAPI1>
+            <host>10.128.4.26</host>
+            <user>admin</user>
+            <password>onos_test</password>
+            <type>OnosRestApiDriver</type>
+            <COMPONENTS>
+            <topology_url>http://10.128.4.26:9000/topology</topology_url>
+             </COMPONENTS>   
+        </ONOSRESTAPI1> 
+        
+    </COMPONENT>
+</TOPOLOGY>
diff --git a/TestON/tests/OnosSanity/__init__.py b/TestON/tests/OnosSanity/__init__.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/TestON/tests/OnosSanity/__init__.py
