[haizea-commit] r568 - trunk/tests

haizea-commit at mailman.cs.uchicago.edu haizea-commit at mailman.cs.uchicago.edu
Fri Feb 13 17:49:56 CST 2009


Author: borja
Date: 2009-02-13 17:49:49 -0600 (Fri, 13 Feb 2009)
New Revision: 568

Added:
   trunk/tests/test_xmlrpc.py
Modified:
   trunk/tests/base_config_simulator.conf
   trunk/tests/common.py
Log:
Added XMLRPC tests

Modified: trunk/tests/base_config_simulator.conf
===================================================================
--- trunk/tests/base_config_simulator.conf	2009-02-13 00:04:37 UTC (rev 567)
+++ trunk/tests/base_config_simulator.conf	2009-02-13 23:49:49 UTC (rev 568)
@@ -16,7 +16,7 @@
 [scheduling]
 shutdown-time: 0
 suspendresume-exclusion: local
-#wakeup-interval: 60
+wakeup-interval: 3
 backfilling: aggressive
 # backfilling-reservations: 4
 enactment-overhead: 2

Modified: trunk/tests/common.py
===================================================================
--- trunk/tests/common.py	2009-02-13 00:04:37 UTC (rev 567)
+++ trunk/tests/common.py	2009-02-13 23:49:49 UTC (rev 568)
@@ -1,5 +1,6 @@
 import ConfigParser
 import os
+import threading
 import shutil
 
 from haizea.resourcemanager.configfile import HaizeaConfig
@@ -78,4 +79,17 @@
         rm = ResourceManager(HaizeaConfig(self.config))
         rm.start()
         os.remove("one.db")
+    
 
+class BaseXMLRPCTest(BaseTest):
+    def __init__(self):
+        self.haizea_thread = None
+
+    def start(self):
+        self.rm = ResourceManager(HaizeaConfig(self.config))
+        self.haizea_thread = threading.Thread(target=self.rm.start)
+        self.haizea_thread.start()
+        
+    def stop(self):
+        self.rm.stop()
+        self.haizea_thread.join()
\ No newline at end of file

Added: trunk/tests/test_xmlrpc.py
===================================================================
--- trunk/tests/test_xmlrpc.py	                        (rev 0)
+++ trunk/tests/test_xmlrpc.py	2009-02-13 23:49:49 UTC (rev 568)
@@ -0,0 +1,72 @@
+from common import BaseXMLRPCTest
+from mx.DateTime import TimeDelta
+import haizea.cli.rpc_commands as rpc
+import time
+
+class TestXMLRPC(BaseXMLRPCTest):
+    def __init__(self):
+        self.config = self.load_configfile("base_config_simulator.conf")
+        self.config.set("simulation", "clock", "real")
+        self.config.set("scheduling", "backfilling", "off")
+        self.config.set("scheduling", "non-schedulable-interval", "2")
+   
+    def test_getters(self):
+        self.start()
+        cmd = rpc.haizea_list_hosts(["-D"])
+        cmd.run()
+        cmd = rpc.haizea_list_leases(["-D"])
+        cmd.run()
+        cmd = rpc.haizea_show_queue(["-D"])
+        cmd.run()
+        self.stop()
+        
+    def test_ar(self):
+        self.start()
+        cmd = rpc.haizea_request_lease(["-D", "-t", "+00:01:00", "-d", "00:10:00", "-n", "1", "--non-preemptible", 
+                                        "-c", "1", "-m", "512", "-i", "foobar.img", "-z", "600"])
+        cmd.run()
+        time.sleep(5)
+        cmd = rpc.haizea_list_leases(["-D"])
+        cmd.run()
+        cmd = rpc.haizea_cancel_lease(["-D", "-l", "1"])
+        cmd.run()
+        cmd = rpc.haizea_list_leases(["-D"])
+        cmd.run()
+        self.stop()
+    
+    def test_be(self):
+        self.start()
+        cmd = rpc.haizea_request_lease(["-D", "-t", "best_effort", "-d", "00:10:00", "-n", "4", "--non-preemptible", 
+                                        "-c", "1", "-m", "512", "-i", "foobar.img", "-z", "600"])
+        cmd.run()
+        cmd = rpc.haizea_request_lease(["-D", "-t", "best_effort", "-d", "00:10:00", "-n", "4", "--non-preemptible", 
+                                        "-c", "1", "-m", "512", "-i", "foobar.img", "-z", "600"])
+        cmd.run()
+        time.sleep(7)
+        cmd = rpc.haizea_list_leases(["-D"])
+        cmd.run()
+        # Cancel the queued request
+        cmd = rpc.haizea_cancel_lease(["-D", "-l", "3"])
+        cmd.run()
+        cmd = rpc.haizea_list_leases(["-D"])
+        cmd.run()
+        # Cancel the running request
+        cmd = rpc.haizea_cancel_lease(["-D", "-l", "2"])
+        cmd.run()
+        cmd = rpc.haizea_list_leases(["-D"])
+        cmd.run()
+        self.stop()
+    
+    def test_im(self):
+        self.start()
+        cmd = rpc.haizea_request_lease(["-D", "-t", "now", "-d", "00:10:00", "-n", "1", "--non-preemptible", 
+                                        "-c", "1", "-m", "512", "-i", "foobar.img", "-z", "600"])
+        cmd.run()
+        time.sleep(5)
+        cmd = rpc.haizea_list_leases(["-D"])
+        cmd.run()
+        cmd = rpc.haizea_cancel_lease(["-D", "-l", "4"])
+        cmd.run()
+        cmd = rpc.haizea_list_leases(["-D"])
+        cmd.run()
+        self.stop()



More information about the Haizea-commit mailing list