kvm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] KVM test: Cleanup of virtio_console subtest
@ 2011-02-09 10:43 Lucas Meneghel Rodrigues
  2011-02-09 12:25 ` Jiri Zupka
  0 siblings, 1 reply; 2+ messages in thread
From: Lucas Meneghel Rodrigues @ 2011-02-09 10:43 UTC (permalink / raw)
  To: autotest; +Cc: kvm, jzupka, ldoktor, Lucas Meneghel Rodrigues

This is a cleanup patch for virtio_console:

1) Use the safer is None instead of == None or similar
comparisons
2) Remove some unused imports
3) Remove some unneded parenthesis
4) Correct typos

Signed-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>
---
 client/tests/kvm/scripts/virtio_console_guest.py |   65 ++++++------
 client/tests/kvm/tests/virtio_console.py         |  118 +++++++++++-----------
 2 files changed, 91 insertions(+), 92 deletions(-)

diff --git a/client/tests/kvm/scripts/virtio_console_guest.py b/client/tests/kvm/scripts/virtio_console_guest.py
index db67fc9..6626593 100755
--- a/client/tests/kvm/scripts/virtio_console_guest.py
+++ b/client/tests/kvm/scripts/virtio_console_guest.py
@@ -9,8 +9,8 @@ Auxiliary script used to send data between ports on guests.
 """
 import threading
 from threading import Thread
-import os, time, select, re, random, sys, array
-import fcntl, subprocess, traceback, signal
+import os, select, re, random, sys, array
+import fcntl, traceback, signal
 
 DEBUGPATH = "/sys/kernel/debug"
 SYSFSPATH = "/sys/class/virtio-ports/"
@@ -63,7 +63,7 @@ class VirtioGuest:
         """
         ports = {}
         not_present_msg = "FAIL: There's no virtio-ports dir in debugfs"
-        if (not os.path.ismount(DEBUGPATH)):
+        if not os.path.ismount(DEBUGPATH):
             os.system('mount -t debugfs none %s' % (DEBUGPATH))
         try:
             if not os.path.isdir('%s/virtio-ports' % (DEBUGPATH)):
@@ -72,21 +72,20 @@ class VirtioGuest:
             print not_present_msg
         else:
             viop_names = os.listdir('%s/virtio-ports' % (DEBUGPATH))
-            if (in_files != None):
+            if in_files is not None:
                 dev_names = os.listdir('/dev')
                 rep = re.compile(r"vport[0-9]p[0-9]+")
-                dev_names = filter(lambda x: rep.match(x) != None, dev_names)
+                dev_names = filter(lambda x: rep.match(x) is not None, dev_names)
                 if len(dev_names) != len(in_files):
-                    print ("FAIL: Not all ports are sucesfully inicailized"+
-                           " in /dev "+
-                           "only %d from %d." % (len(dev_names),
-                                                 len(in_files)))
+                    print ("FAIL: Not all ports were successfully initialized "
+                           "in /dev, only %d from %d." % (len(dev_names),
+                                                          len(in_files)))
                     return
 
                 if len(viop_names) != len(in_files):
-                    print ("FAIL: No all ports  are sucesfully inicailized "
-                           "in debugfs only %d from %d." % (len(viop_names),
-                                                            len(in_files)))
+                    print ("FAIL: Not all ports were successfuly initialized "
+                           "in debugfs, only %d from %d." % (len(viop_names),
+                                                             len(in_files)))
                     return
 
             for name in viop_names:
@@ -101,35 +100,36 @@ class VirtioGuest:
                         m = re.match("(\S+): (\S+)", line)
                         port[m.group(1)] = m.group(2)
 
-                    if (port['is_console'] == "yes"):
+                    if port['is_console'] == "yes":
                         port["path"] = "/dev/hvc%s" % (port["console_vtermno"])
                         # Console works like a serialport
                     else:
                         port["path"] = "/dev/%s" % name
 
-                    if (not os.path.exists(port['path'])):
+                    if not os.path.exists(port['path']):
                         print "FAIL: %s not exist" % port['path']
 
                     sysfspath = SYSFSPATH + name
-                    if (not os.path.isdir(sysfspath)):
+                    if not os.path.isdir(sysfspath):
                         print "FAIL: %s not exist" % (sysfspath)
 
                     info_name = sysfspath + "/name"
                     port_name = self._readfile(info_name).strip()
-                    if (port_name != port["name"]):
-                        print ("FAIL: Port info not match \n%s - %s\n%s - %s" %
+                    if port_name != port["name"]:
+                        print ("FAIL: Port info does not match "
+                               "\n%s - %s\n%s - %s" %
                                (info_name , port_name,
                                 "%s/virtio-ports/%s" % (DEBUGPATH, name),
                                 port["name"]))
                     dev_ppath = DEVPATH + port_name
-                    if not (os.path.exists(dev_ppath)):
-                        print ("FAIL: Symlink " + dev_ppath + " not exist.")
-                    if not (os.path.realpath(dev_ppath) != "/dev/name"):
-                        print ("FAIL: Sumlink " + dev_ppath + " not correct.")
+                    if not os.path.exists(dev_ppath):
+                        print "FAIL: Symlink %s does not exist." % dev_ppath
+                    if not os.path.realpath(dev_ppath) != "/dev/name":
+                        print "FAIL: Symlink %s is not correct." % dev_ppath
                 except AttributeError:
-                    print ("In file " + open_db_file +
-                           " are incorrect data\n" + "".join(file).strip())
-                    print ("FAIL: Fail file data.")
+                    print ("Bad data on file %s:\n%s. " %
+                           (open_db_file, "".join(file).strip()))
+                    print "FAIL: Bad data on file %s." % open_db_file
                     return
 
                 ports[port['name']] = port
@@ -142,10 +142,11 @@ class VirtioGuest:
         """
         Check if port /dev/vport0p0 was created.
         """
-        if os.path.exists("/dev/vport0p0"):
-            print "PASS: Port exist."
+        symlink = "/dev/vport0p0"
+        if os.path.exists(symlink):
+            print "PASS: Symlink %s exists." % symlink
         else:
-            print "FAIL: Device /dev/vport0p0 not exist."
+            print "FAIL: Symlink %s does not exist." % symlink
 
 
     def init(self, in_files):
@@ -154,7 +155,7 @@ class VirtioGuest:
         """
         self.ports = self._get_port_status(in_files)
 
-        if self.ports == None:
+        if self.ports is None:
             return
         for item in in_files:
             if (item[1] != self.ports[item[0]]["is_console"]):
@@ -507,11 +508,11 @@ class VirtioGuest:
         """
         descriptor = None
         path = self.ports[file]["path"]
-        if path != None:
+        if path is not None:
             if path in self.files.keys():
                 descriptor = self.files[path]
                 del self.files[path]
-            if descriptor != None:
+            if descriptor is not None:
                 try:
                     os.close(descriptor)
                 except Exception, inst:
@@ -745,9 +746,9 @@ def main():
         catch = virt.catching_signal()
         if catch:
             signal.signal(signal.SIGIO, virt)
-        elif catch == False:
+        elif catch is False:
             signal.signal(signal.SIGIO, signal.SIG_DFL)
-        if (catch != None):
+        if catch is not None:
             virt.use_config.set()
     print "PASS: guest_exit"
 
diff --git a/client/tests/kvm/tests/virtio_console.py b/client/tests/kvm/tests/virtio_console.py
index cbb19e4..bc40837 100644
--- a/client/tests/kvm/tests/virtio_console.py
+++ b/client/tests/kvm/tests/virtio_console.py
@@ -23,10 +23,10 @@ def run_virtio_console(test, params, env):
     3) Start loopback test
     4) Start performance test
 
-    This test uses an auxiliary script, console_switch.py, that is copied to
-    guests. This script has functions to send and write data to virtio console
-    ports. Details of each test can be found on the docstrings for the test_*
-    functions.
+    This test uses an auxiliary script, virtio_console_guest.py, that is copied
+    to guests. This script has functions to send and write data to virtio
+    console ports. Details of each test can be found on the docstrings for the
+    test_* functions.
 
     @param test: kvm test object
     @param params: Dictionary with the test parameters
@@ -79,7 +79,7 @@ def run_virtio_console(test, params, env):
             @raise TestError: If collapse of test is fatal raise forward
                         exception from subtest.
             """
-            if args == None:
+            if args is None:
                 args = []
             res = [None, function.func_name, args]
             try:
@@ -403,7 +403,7 @@ def run_virtio_console(test, params, env):
                 if ret[0] and (not self.exitevent.isSet()):
                     buf = self.port.recv(self.blocklen)
                     if buf:
-                        # Compare the recvd data with the control data
+                        # Compare the received data with the control data
                         for ch in buf:
                             ch_ = self.buffer.popleft()
                             if not ch == ch_:
@@ -502,12 +502,12 @@ def run_virtio_console(test, params, env):
         """
         data = vm_port.read_nonblocking()
         match = re.search("BUG:", data, re.MULTILINE)
-        if match == None:
+        if match is None:
             return None
 
         match = re.search(r"BUG:.*---\[ end trace .* \]---",
                   data, re.DOTALL |re.MULTILINE)
-        if match == None:
+        if match is None:
             data += vm_port.read_until_last_line_matches(
                                 ["---\[ end trace .* \]---"],timeout)
 
@@ -541,7 +541,7 @@ def run_virtio_console(test, params, env):
             data = "Timeout."
 
         kcrash_data = _search_kernel_crashlog(vm[3])
-        if (kcrash_data != None):
+        if kcrash_data is not None:
             logging.error(kcrash_data)
             vm[4] = True
 
@@ -581,7 +581,7 @@ def run_virtio_console(test, params, env):
         """
         # in LOOP_NONE mode it might stuck in read/write
         match, tmp = _on_guest("virt.exit_threads()", vm, 10)
-        if match == None:
+        if match is None:
             logging.debug("Workaround the stuck thread on guest")
             # Thread is stucked in read/write
             for send_pt in send_pts:
@@ -621,7 +621,6 @@ def run_virtio_console(test, params, env):
         consoles = []
         serialports = []
         tmp_dir = tempfile.mkdtemp(prefix="virtio-console-", dir="/tmp/")
-        #if not params.get('extra_params'):
         params['extra_params'] = ''
 
         if not spread:
@@ -643,7 +642,7 @@ def run_virtio_console(test, params, env):
                                       % (i, i, i, pci))
 
         for i in  range(no_console, no_console + no_serialport):
-            # Spread seroal ports between multiple PCI devices (2 per a dev)
+            # Spread serial ports between multiple PCI devices (2 per each dev)
             if not i % 2  and spread:
                 pci = "virtio-serial-pci%d" % (i / 2)
                 params['extra_params'] += (" -device virtio-serial-pci,id="
@@ -672,7 +671,7 @@ def run_virtio_console(test, params, env):
 
     def _restore_vm():
         """
-        Restore old virtual machine when VM is destroied.
+        Restore old virtual machine when VM is destroyed.
         """
         logging.debug("Booting guest %s", params.get("main_vm"))
         kvm_preprocessing.preprocess_vm(test, params, env,
@@ -687,12 +686,12 @@ def run_virtio_console(test, params, env):
                                     0, 2)
         except (error.TestFail):
             kernel_bug = _search_kernel_crashlog(vm.serial_console, 10)
-            if kernel_bug != None:
+            if kernel_bug is not None:
                 logging.error(kernel_bug)
             raise
 
         kernel_bug = _search_kernel_crashlog(vm.serial_console, 10)
-        if kernel_bug != None:
+        if kernel_bug is not None:
             logging.error(kernel_bug)
 
         sserial = kvm_test_utils.wait_for_login(vm, 0,
@@ -869,9 +868,9 @@ def run_virtio_console(test, params, env):
         on_guest("virt.recv('%s', 0, 1024, False)" % port.name, vm, 10)
         match, tmp = _on_guest("virt.send('%s', 10, True)" % port.name,
                                                              vm, 10)
-        if match != None:
+        if match is not None:
             raise error.TestFail("Write on guest while host disconnected "
-                                 "didn't timed out.\nOutput:\n%s"
+                                 "didn't time out.\nOutput:\n%s"
                                  % tmp)
 
         port.open()
@@ -897,9 +896,9 @@ def run_virtio_console(test, params, env):
         on_guest("virt.clean_port('%s'),1024" % port.name, vm, 10)
         match, tmp = _on_guest("virt.send('%s', (1024**3)*3, True, "
                                "is_static=True)" % port.name, vm, 30)
-        if match != None:
+        if match is None:
             raise error.TestFail("Write on guest while host disconnected "
-                                 "didn't timed out.\nOutput:\n%s"
+                                 "didn't time out.\nOutput:\n%s"
                                  % tmp)
 
         time.sleep(20)
@@ -912,8 +911,8 @@ def run_virtio_console(test, params, env):
             if (ret[0] != []):
                 rlen += len(port.sock.recv(((4096))))
             elif rlen != (1024**3*3):
-                raise error.TestFail("Not all data are received."
-                                     "Only %d from %d" % (rlen, 1024**3*3))
+                raise error.TestFail("Not all data was received,"
+                                     "only %d from %d" % (rlen, 1024**3*3))
         on_guest("print 'PASS: nothing'", vm, 10)
 
 
@@ -939,42 +938,41 @@ def run_virtio_console(test, params, env):
         loads.start()
 
         try:
-            sended1 = 0
+            sent1 = 0
             for i in range(1000000):
-                sended1 += port.sock.send("a")
-        except (socket.timeout):
-            logging.info("Send data to closed port timeouted.")
+                sent1 += port.sock.send("a")
+        except socket.timeout:
+            logging.info("Data sending to closed port timed out.")
 
-        logging.info("Sendes bytes to client: %d" % (sended1))
+        logging.info("Bytes sent to client: %d" % (sent1))
         logging.info("\n" + loads.get_cpu_status_string()[:-1])
 
         on_guest('echo -n "PASS:"', vm, 10)
 
-
-        logging.info("Open and then close port %s." % (port.name))
+        logging.info("Open and then close port %s" % (port.name))
         init_guest(vm, consoles)
-        #Test of live and open and close port again.
+        # Test of live and open and close port again
         _clean_ports(vm, consoles)
         on_guest("virt.close('%s')" % (port.name), vm, 10)
 
-        #With serialport it makes another behavior
+        # With serialport it is a different behavior
         on_guest("guest_exit()", vm, 10)
         port.sock.settimeout(20.0)
 
         loads.start()
         try:
-            sended2 = 0
+            sent2 = 0
             for i in range(40000):
-                sended2 = port.sock.send("a")
-        except (socket.timeout):
-            logging.info("Send data to closed port timeouted.")
+                sent2 = port.sock.send("a")
+        except socket.timeout:
+            logging.info("Data sending to closed port timed out.")
 
-        logging.info("Sendes bytes to client: %d" % (sended2))
+        logging.info("Bytes sent to client: %d" % (sent2))
         logging.info("\n" + loads.get_cpu_status_string()[:-1])
         loads.stop()
-        if (sended1 != sended2):
-            logging.warning("Inconsis behavior first send %d and sec send %d" %
-                            (sended1, sended2))
+        if (sent1 != sent2):
+            logging.warning("Inconsistent behavior: First sent %d bytes and "
+                            "second sent %d bytes" % (sent1, sent2))
 
         port.sock.settimeout(None)
         (vm[0], vm[1], vm[3]) = _restore_vm()
@@ -1000,7 +998,7 @@ def run_virtio_console(test, params, env):
         if match == 0:
             raise error.TestFail("Received data even when non were sent\n"
                                  "Data:\n%s" % tmp)
-        elif match != None:
+        elif match is not None:
             raise error.TestFail("Unexpected fail\nMatch: %s\nData:\n%s" %
                                  (match, tmp))
         port.sock.sendall("1234567890")
@@ -1025,7 +1023,7 @@ def run_virtio_console(test, params, env):
         if match == 0:
             raise error.TestFail("Received data even when non were sent\n"
                                  "Data:\n%s" % tmp)
-        elif match == None:
+        elif match is None:
             raise error.TestFail("Timed out, probably in blocking mode\n"
                                  "Data:\n%s" % tmp)
         elif match != 1:
@@ -1087,9 +1085,9 @@ def run_virtio_console(test, params, env):
         on_guest("virt.clean_port('%s'),1024" % cname, vm, 2)
 
 
-    def tmax_serail_ports(vm, consoles):
+    def tmax_serial_ports(vm, consoles):
         """
-        Test maximim count of ports in guest machine.
+        Test maximum count of ports in guest machine.
 
         @param vm: Target virtual machine [vm, session, tmp_dir, ser_session].
         @param consoles: Consoles which should be close before rmmod.
@@ -1107,7 +1105,7 @@ def run_virtio_console(test, params, env):
 
     def tmax_console_ports(vm, consoles):
         """
-        Test maximim count of ports in guest machine.
+        Test maximum count of ports in guest machine.
 
         @param vm: Target virtual machine [vm, session, tmp_dir, ser_session].
         @param consoles: Consoles which should be close before rmmod.
@@ -1178,7 +1176,7 @@ def run_virtio_console(test, params, env):
 
     def tmigrate_offline(vm, consoles):
         """
-        Let the machine migrate. Virtio_concoles should survive this.
+        Let the machine migrate. Virtio_consoles should survive this.
 
         @param vm: Target virtual machine [vm, session, tmp_dir, ser_session].
         @param consoles: Consoles which should be close before rmmod.
@@ -1444,14 +1442,14 @@ def run_virtio_console(test, params, env):
         # Check if python is still alive
         print "CLEANING"
         match, tmp = _on_guest("is_alive()", vm, 10)
-        if (match == None) or (match != 0):
+        if (match is None) or (match != 0):
             logging.error("Python died/is stucked/have remaining threads")
             logging.debug(tmp)
             try:
                 if vm[4] == True:
                     raise error.TestFail("Kernel crash.")
                 match, tmp = _on_guest("guest_exit()", vm, 10)
-                if (match == None) or (match == 0):
+                if (match is None) or (match == 0):
                     vm[1].close()
                     vm[1] = kvm_test_utils.wait_for_login(vm[0], 0,
                                         float(params.get("boot_timeout", 5)),
@@ -1487,7 +1485,7 @@ def run_virtio_console(test, params, env):
                 match = _on_guest("virt.clean_port('%s'),1024" %
                                   cname, vm, 10)[0]
 
-                if (match == None) or (match != 0):
+                if (match is None) or (match != 0):
                     raise error.TestFail("Virtio-console driver is irrepar"
                                          "ably blocked. Every comd end"
                                          " with sig KILL. Neither the "
@@ -1570,10 +1568,10 @@ def run_virtio_console(test, params, env):
         @param params: Test parameters '$console_type:$data;...'
         """
         subtest.headline("test_multiport:")
-        #Test Loopback
+        # Test Loopback
         subtest.do_test(tloopback, [vm, consoles, params[0]])
 
-        #Test Performance
+        # Test Performance
         subtest.do_test(tperf, [vm, consoles, params[1]])
 
 
@@ -1586,9 +1584,9 @@ def run_virtio_console(test, params, env):
         @param consoles: Field of virtio ports with the minimum of 2 items.
         """
         subtest.headline("test_destructive:")
-        #Test rmmod
-        subtest.do_test(trmmod,[vm, consoles])
-        subtest.do_test(tmax_serail_ports, [vm, consoles])
+        # Test rmmod
+        subtest.do_test(trmmod, [vm, consoles])
+        subtest.do_test(tmax_serial_ports, [vm, consoles])
         subtest.do_test(tmax_console_ports, [vm, consoles])
         subtest.do_test(tmax_mix_serial_conosle_port, [vm, consoles])
         subtest.do_test(tshutdown, [vm, consoles])
@@ -1604,21 +1602,21 @@ def run_virtio_console(test, params, env):
     no_serialports = 0
     no_consoles = 0
     # consoles required for Smoke test
-    if (tsmoke_params.count('serialport')):
+    if tsmoke_params.count('serialport'):
         no_serialports = max(2, no_serialports)
-    if (tsmoke_params.count('console')):
+    if tsmoke_params.count('console'):
         no_consoles = max(2, no_consoles)
     # consoles required for Loopback test
     for param in tloopback_params.split(';'):
         no_serialports = max(no_serialports, param.count('serialport'))
         no_consoles = max(no_consoles, param.count('console'))
     # consoles required for Performance test
-    if (tperf_params.count('serialport')):
+    if tperf_params.count('serialport'):
         no_serialports = max(1, no_serialports)
-    if (tperf_params.count('console')):
+    if tperf_params.count('console'):
         no_consoles = max(1, no_consoles)
 
-    if (no_serialports + no_consoles) == 0:
+    if no_serialports + no_consoles == 0:
         raise error.TestFail("No tests defined, probably incorrect "
                              "configuration in tests_base.cfg")
 
@@ -1639,13 +1637,13 @@ def run_virtio_console(test, params, env):
         init_guest(vm, consoles)
 
         subtest.set_cleanup_func(clean_ports, [vm, consoles])
-        #Test Smoke
+        # Test Smoke
         test_smoke(subtest, vm, consoles, tsmoke_params)
 
-        #Test multiport functionality and performance.
+        # Test multiport functionality and performance.
         test_multiport(subtest, vm, consoles, [tloopback_params, tperf_params])
 
-        #Test destructive test.
+        # Test destructive test.
         # Uses stronger clean up function
         (_cleanup_func, _cleanup_args) = subtest.get_cleanup_func()
         subtest.set_cleanup_func(clean_reload_vm, [vm, consoles])
-- 
1.7.4


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] KVM test: Cleanup of virtio_console subtest
  2011-02-09 10:43 [PATCH] KVM test: Cleanup of virtio_console subtest Lucas Meneghel Rodrigues
@ 2011-02-09 12:25 ` Jiri Zupka
  0 siblings, 0 replies; 2+ messages in thread
From: Jiri Zupka @ 2011-02-09 12:25 UTC (permalink / raw)
  To: Lucas Meneghel Rodrigues; +Cc: autotest, kvm

----- Original Message -----
> This is a cleanup patch for virtio_console:
> 
> 1) Use the safer is None instead of == None or similar
> comparisons
> 2) Remove some unused imports
> 3) Remove some unneded parenthesis
> 4) Correct typos

Thank you for your corrections.

> 
> Signed-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>
> ---
> client/tests/kvm/scripts/virtio_console_guest.py | 65 ++++++------
> client/tests/kvm/tests/virtio_console.py | 118 +++++++++++-----------
> 2 files changed, 91 insertions(+), 92 deletions(-)
> 
> diff --git a/client/tests/kvm/scripts/virtio_console_guest.py
> b/client/tests/kvm/scripts/virtio_console_guest.py
> index db67fc9..6626593 100755
> --- a/client/tests/kvm/scripts/virtio_console_guest.py
> +++ b/client/tests/kvm/scripts/virtio_console_guest.py
> @@ -9,8 +9,8 @@ Auxiliary script used to send data between ports on
> guests.
> """
> import threading
> from threading import Thread
> -import os, time, select, re, random, sys, array
> -import fcntl, subprocess, traceback, signal
> +import os, select, re, random, sys, array
> +import fcntl, traceback, signal
> 
> DEBUGPATH = "/sys/kernel/debug"
> SYSFSPATH = "/sys/class/virtio-ports/"
> @@ -63,7 +63,7 @@ class VirtioGuest:
> """
> ports = {}
> not_present_msg = "FAIL: There's no virtio-ports dir in debugfs"
> - if (not os.path.ismount(DEBUGPATH)):
> + if not os.path.ismount(DEBUGPATH):
> os.system('mount -t debugfs none %s' % (DEBUGPATH))
> try:
> if not os.path.isdir('%s/virtio-ports' % (DEBUGPATH)):
> @@ -72,21 +72,20 @@ class VirtioGuest:
> print not_present_msg
> else:
> viop_names = os.listdir('%s/virtio-ports' % (DEBUGPATH))
> - if (in_files != None):
> + if in_files is not None:
> dev_names = os.listdir('/dev')
> rep = re.compile(r"vport[0-9]p[0-9]+")
> - dev_names = filter(lambda x: rep.match(x) != None, dev_names)
> + dev_names = filter(lambda x: rep.match(x) is not None, dev_names)
> if len(dev_names) != len(in_files):
> - print ("FAIL: Not all ports are sucesfully inicailized"+
> - " in /dev "+
> - "only %d from %d." % (len(dev_names),
> - len(in_files)))
> + print ("FAIL: Not all ports were successfully initialized "
> + "in /dev, only %d from %d." % (len(dev_names),
> + len(in_files)))
> return
> 
> if len(viop_names) != len(in_files):
> - print ("FAIL: No all ports are sucesfully inicailized "
> - "in debugfs only %d from %d." % (len(viop_names),
> - len(in_files)))
> + print ("FAIL: Not all ports were successfuly initialized "
> + "in debugfs, only %d from %d." % (len(viop_names),
> + len(in_files)))
> return
> 
> for name in viop_names:
> @@ -101,35 +100,36 @@ class VirtioGuest:
> m = re.match("(\S+): (\S+)", line)
> port[m.group(1)] = m.group(2)
> 
> - if (port['is_console'] == "yes"):
> + if port['is_console'] == "yes":
> port["path"] = "/dev/hvc%s" % (port["console_vtermno"])
> # Console works like a serialport
> else:
> port["path"] = "/dev/%s" % name
> 
> - if (not os.path.exists(port['path'])):
> + if not os.path.exists(port['path']):
> print "FAIL: %s not exist" % port['path']
> 
> sysfspath = SYSFSPATH + name
> - if (not os.path.isdir(sysfspath)):
> + if not os.path.isdir(sysfspath):
> print "FAIL: %s not exist" % (sysfspath)
> 
> info_name = sysfspath + "/name"
> port_name = self._readfile(info_name).strip()
> - if (port_name != port["name"]):
> - print ("FAIL: Port info not match \n%s - %s\n%s - %s" %
> + if port_name != port["name"]:
> + print ("FAIL: Port info does not match "
> + "\n%s - %s\n%s - %s" %
> (info_name , port_name,
> "%s/virtio-ports/%s" % (DEBUGPATH, name),
> port["name"]))
> dev_ppath = DEVPATH + port_name
> - if not (os.path.exists(dev_ppath)):
> - print ("FAIL: Symlink " + dev_ppath + " not exist.")
> - if not (os.path.realpath(dev_ppath) != "/dev/name"):
> - print ("FAIL: Sumlink " + dev_ppath + " not correct.")
> + if not os.path.exists(dev_ppath):
> + print "FAIL: Symlink %s does not exist." % dev_ppath
> + if not os.path.realpath(dev_ppath) != "/dev/name":
> + print "FAIL: Symlink %s is not correct." % dev_ppath
> except AttributeError:
> - print ("In file " + open_db_file +
> - " are incorrect data\n" + "".join(file).strip())
> - print ("FAIL: Fail file data.")
> + print ("Bad data on file %s:\n%s. " %
> + (open_db_file, "".join(file).strip()))
> + print "FAIL: Bad data on file %s." % open_db_file
> return
> 
> ports[port['name']] = port
> @@ -142,10 +142,11 @@ class VirtioGuest:
> """
> Check if port /dev/vport0p0 was created.
> """
> - if os.path.exists("/dev/vport0p0"):
> - print "PASS: Port exist."
> + symlink = "/dev/vport0p0"
> + if os.path.exists(symlink):
> + print "PASS: Symlink %s exists." % symlink
> else:
> - print "FAIL: Device /dev/vport0p0 not exist."
> + print "FAIL: Symlink %s does not exist." % symlink
> 
> 
> def init(self, in_files):
> @@ -154,7 +155,7 @@ class VirtioGuest:
> """
> self.ports = self._get_port_status(in_files)
> 
> - if self.ports == None:
> + if self.ports is None:
> return
> for item in in_files:
> if (item[1] != self.ports[item[0]]["is_console"]):
> @@ -507,11 +508,11 @@ class VirtioGuest:
> """
> descriptor = None
> path = self.ports[file]["path"]
> - if path != None:
> + if path is not None:
> if path in self.files.keys():
> descriptor = self.files[path]
> del self.files[path]
> - if descriptor != None:
> + if descriptor is not None:
> try:
> os.close(descriptor)
> except Exception, inst:
> @@ -745,9 +746,9 @@ def main():
> catch = virt.catching_signal()
> if catch:
> signal.signal(signal.SIGIO, virt)
> - elif catch == False:
> + elif catch is False:
> signal.signal(signal.SIGIO, signal.SIG_DFL)
> - if (catch != None):
> + if catch is not None:
> virt.use_config.set()
> print "PASS: guest_exit"
> 
> diff --git a/client/tests/kvm/tests/virtio_console.py
> b/client/tests/kvm/tests/virtio_console.py
> index cbb19e4..bc40837 100644
> --- a/client/tests/kvm/tests/virtio_console.py
> +++ b/client/tests/kvm/tests/virtio_console.py
> @@ -23,10 +23,10 @@ def run_virtio_console(test, params, env):
> 3) Start loopback test
> 4) Start performance test
> 
> - This test uses an auxiliary script, console_switch.py, that is
> copied to
> - guests. This script has functions to send and write data to virtio
> console
> - ports. Details of each test can be found on the docstrings for the
> test_*
> - functions.
> + This test uses an auxiliary script, virtio_console_guest.py, that is
> copied
> + to guests. This script has functions to send and write data to
> virtio
> + console ports. Details of each test can be found on the docstrings
> for the
> + test_* functions.
> 
> @param test: kvm test object
> @param params: Dictionary with the test parameters
> @@ -79,7 +79,7 @@ def run_virtio_console(test, params, env):
> @raise TestError: If collapse of test is fatal raise forward
> exception from subtest.
> """
> - if args == None:
> + if args is None:
> args = []
> res = [None, function.func_name, args]
> try:
> @@ -403,7 +403,7 @@ def run_virtio_console(test, params, env):
> if ret[0] and (not self.exitevent.isSet()):
> buf = self.port.recv(self.blocklen)
> if buf:
> - # Compare the recvd data with the control data
> + # Compare the received data with the control data
> for ch in buf:
> ch_ = self.buffer.popleft()
> if not ch == ch_:
> @@ -502,12 +502,12 @@ def run_virtio_console(test, params, env):
> """
> data = vm_port.read_nonblocking()
> match = re.search("BUG:", data, re.MULTILINE)
> - if match == None:
> + if match is None:
> return None
> 
> match = re.search(r"BUG:.*---\[ end trace .* \]---",
> data, re.DOTALL |re.MULTILINE)
> - if match == None:
> + if match is None:
> data += vm_port.read_until_last_line_matches(
> ["---\[ end trace .* \]---"],timeout)
> 
> @@ -541,7 +541,7 @@ def run_virtio_console(test, params, env):
> data = "Timeout."
> 
> kcrash_data = _search_kernel_crashlog(vm[3])
> - if (kcrash_data != None):
> + if kcrash_data is not None:
> logging.error(kcrash_data)
> vm[4] = True
> 
> @@ -581,7 +581,7 @@ def run_virtio_console(test, params, env):
> """
> # in LOOP_NONE mode it might stuck in read/write
> match, tmp = _on_guest("virt.exit_threads()", vm, 10)
> - if match == None:
> + if match is None:
> logging.debug("Workaround the stuck thread on guest")
> # Thread is stucked in read/write
> for send_pt in send_pts:
> @@ -621,7 +621,6 @@ def run_virtio_console(test, params, env):
> consoles = []
> serialports = []
> tmp_dir = tempfile.mkdtemp(prefix="virtio-console-", dir="/tmp/")
> - #if not params.get('extra_params'):
> params['extra_params'] = ''
> 
> if not spread:
> @@ -643,7 +642,7 @@ def run_virtio_console(test, params, env):
> % (i, i, i, pci))
> 
> for i in range(no_console, no_console + no_serialport):
> - # Spread seroal ports between multiple PCI devices (2 per a dev)
> + # Spread serial ports between multiple PCI devices (2 per each dev)
> if not i % 2 and spread:
> pci = "virtio-serial-pci%d" % (i / 2)
> params['extra_params'] += (" -device virtio-serial-pci,id="
> @@ -672,7 +671,7 @@ def run_virtio_console(test, params, env):
> 
> def _restore_vm():
> """
> - Restore old virtual machine when VM is destroied.
> + Restore old virtual machine when VM is destroyed.
> """
> logging.debug("Booting guest %s", params.get("main_vm"))
> kvm_preprocessing.preprocess_vm(test, params, env,
> @@ -687,12 +686,12 @@ def run_virtio_console(test, params, env):
> 0, 2)
> except (error.TestFail):
> kernel_bug = _search_kernel_crashlog(vm.serial_console, 10)
> - if kernel_bug != None:
> + if kernel_bug is not None:
> logging.error(kernel_bug)
> raise
> 
> kernel_bug = _search_kernel_crashlog(vm.serial_console, 10)
> - if kernel_bug != None:
> + if kernel_bug is not None:
> logging.error(kernel_bug)
> 
> sserial = kvm_test_utils.wait_for_login(vm, 0,
> @@ -869,9 +868,9 @@ def run_virtio_console(test, params, env):
> on_guest("virt.recv('%s', 0, 1024, False)" % port.name, vm, 10)
> match, tmp = _on_guest("virt.send('%s', 10, True)" % port.name,
> vm, 10)
> - if match != None:
> + if match is not None:
> raise error.TestFail("Write on guest while host disconnected "
> - "didn't timed out.\nOutput:\n%s"
> + "didn't time out.\nOutput:\n%s"
> % tmp)
> 
> port.open()
> @@ -897,9 +896,9 @@ def run_virtio_console(test, params, env):
> on_guest("virt.clean_port('%s'),1024" % port.name, vm, 10)
> match, tmp = _on_guest("virt.send('%s', (1024**3)*3, True, "
> "is_static=True)" % port.name, vm, 30)
> - if match != None:
> + if match is None:
> raise error.TestFail("Write on guest while host disconnected "
> - "didn't timed out.\nOutput:\n%s"
> + "didn't time out.\nOutput:\n%s"
> % tmp)
> 
> time.sleep(20)
> @@ -912,8 +911,8 @@ def run_virtio_console(test, params, env):
> if (ret[0] != []):
> rlen += len(port.sock.recv(((4096))))
> elif rlen != (1024**3*3):
> - raise error.TestFail("Not all data are received."
> - "Only %d from %d" % (rlen, 1024**3*3))
> + raise error.TestFail("Not all data was received,"
> + "only %d from %d" % (rlen, 1024**3*3))
> on_guest("print 'PASS: nothing'", vm, 10)
> 
> 
> @@ -939,42 +938,41 @@ def run_virtio_console(test, params, env):
> loads.start()
> 
> try:
> - sended1 = 0
> + sent1 = 0
> for i in range(1000000):
> - sended1 += port.sock.send("a")
> - except (socket.timeout):
> - logging.info("Send data to closed port timeouted.")
> + sent1 += port.sock.send("a")
> + except socket.timeout:
> + logging.info("Data sending to closed port timed out.")
> 
> - logging.info("Sendes bytes to client: %d" % (sended1))
> + logging.info("Bytes sent to client: %d" % (sent1))
> logging.info("\n" + loads.get_cpu_status_string()[:-1])
> 
> on_guest('echo -n "PASS:"', vm, 10)
> 
> -
> - logging.info("Open and then close port %s." % (port.name))
> + logging.info("Open and then close port %s" % (port.name))
> init_guest(vm, consoles)
> - #Test of live and open and close port again.
> + # Test of live and open and close port again
> _clean_ports(vm, consoles)
> on_guest("virt.close('%s')" % (port.name), vm, 10)
> 
> - #With serialport it makes another behavior
> + # With serialport it is a different behavior
> on_guest("guest_exit()", vm, 10)
> port.sock.settimeout(20.0)
> 
> loads.start()
> try:
> - sended2 = 0
> + sent2 = 0
> for i in range(40000):
> - sended2 = port.sock.send("a")
> - except (socket.timeout):
> - logging.info("Send data to closed port timeouted.")
> + sent2 = port.sock.send("a")
> + except socket.timeout:
> + logging.info("Data sending to closed port timed out.")
> 
> - logging.info("Sendes bytes to client: %d" % (sended2))
> + logging.info("Bytes sent to client: %d" % (sent2))
> logging.info("\n" + loads.get_cpu_status_string()[:-1])
> loads.stop()
> - if (sended1 != sended2):
> - logging.warning("Inconsis behavior first send %d and sec send %d" %
> - (sended1, sended2))
> + if (sent1 != sent2):
> + logging.warning("Inconsistent behavior: First sent %d bytes and "
> + "second sent %d bytes" % (sent1, sent2))
> 
> port.sock.settimeout(None)
> (vm[0], vm[1], vm[3]) = _restore_vm()
> @@ -1000,7 +998,7 @@ def run_virtio_console(test, params, env):
> if match == 0:
> raise error.TestFail("Received data even when non were sent\n"
> "Data:\n%s" % tmp)
> - elif match != None:
> + elif match is not None:
> raise error.TestFail("Unexpected fail\nMatch: %s\nData:\n%s" %
> (match, tmp))
> port.sock.sendall("1234567890")
> @@ -1025,7 +1023,7 @@ def run_virtio_console(test, params, env):
> if match == 0:
> raise error.TestFail("Received data even when non were sent\n"
> "Data:\n%s" % tmp)
> - elif match == None:
> + elif match is None:
> raise error.TestFail("Timed out, probably in blocking mode\n"
> "Data:\n%s" % tmp)
> elif match != 1:
> @@ -1087,9 +1085,9 @@ def run_virtio_console(test, params, env):
> on_guest("virt.clean_port('%s'),1024" % cname, vm, 2)
> 
> 
> - def tmax_serail_ports(vm, consoles):
> + def tmax_serial_ports(vm, consoles):
> """
> - Test maximim count of ports in guest machine.
> + Test maximum count of ports in guest machine.
> 
> @param vm: Target virtual machine [vm, session, tmp_dir, ser_session].
> @param consoles: Consoles which should be close before rmmod.
> @@ -1107,7 +1105,7 @@ def run_virtio_console(test, params, env):
> 
> def tmax_console_ports(vm, consoles):
> """
> - Test maximim count of ports in guest machine.
> + Test maximum count of ports in guest machine.
> 
> @param vm: Target virtual machine [vm, session, tmp_dir, ser_session].
> @param consoles: Consoles which should be close before rmmod.
> @@ -1178,7 +1176,7 @@ def run_virtio_console(test, params, env):
> 
> def tmigrate_offline(vm, consoles):
> """
> - Let the machine migrate. Virtio_concoles should survive this.
> + Let the machine migrate. Virtio_consoles should survive this.
> 
> @param vm: Target virtual machine [vm, session, tmp_dir, ser_session].
> @param consoles: Consoles which should be close before rmmod.
> @@ -1444,14 +1442,14 @@ def run_virtio_console(test, params, env):
> # Check if python is still alive
> print "CLEANING"
> match, tmp = _on_guest("is_alive()", vm, 10)
> - if (match == None) or (match != 0):
> + if (match is None) or (match != 0):
> logging.error("Python died/is stucked/have remaining threads")
> logging.debug(tmp)
> try:
> if vm[4] == True:
> raise error.TestFail("Kernel crash.")
> match, tmp = _on_guest("guest_exit()", vm, 10)
> - if (match == None) or (match == 0):
> + if (match is None) or (match == 0):
> vm[1].close()
> vm[1] = kvm_test_utils.wait_for_login(vm[0], 0,
> float(params.get("boot_timeout", 5)),
> @@ -1487,7 +1485,7 @@ def run_virtio_console(test, params, env):
> match = _on_guest("virt.clean_port('%s'),1024" %
> cname, vm, 10)[0]
> 
> - if (match == None) or (match != 0):
> + if (match is None) or (match != 0):
> raise error.TestFail("Virtio-console driver is irrepar"
> "ably blocked. Every comd end"
> " with sig KILL. Neither the "
> @@ -1570,10 +1568,10 @@ def run_virtio_console(test, params, env):
> @param params: Test parameters '$console_type:$data;...'
> """
> subtest.headline("test_multiport:")
> - #Test Loopback
> + # Test Loopback
> subtest.do_test(tloopback, [vm, consoles, params[0]])
> 
> - #Test Performance
> + # Test Performance
> subtest.do_test(tperf, [vm, consoles, params[1]])
> 
> 
> @@ -1586,9 +1584,9 @@ def run_virtio_console(test, params, env):
> @param consoles: Field of virtio ports with the minimum of 2 items.
> """
> subtest.headline("test_destructive:")
> - #Test rmmod
> - subtest.do_test(trmmod,[vm, consoles])
> - subtest.do_test(tmax_serail_ports, [vm, consoles])
> + # Test rmmod
> + subtest.do_test(trmmod, [vm, consoles])
> + subtest.do_test(tmax_serial_ports, [vm, consoles])
> subtest.do_test(tmax_console_ports, [vm, consoles])
> subtest.do_test(tmax_mix_serial_conosle_port, [vm, consoles])
> subtest.do_test(tshutdown, [vm, consoles])
> @@ -1604,21 +1602,21 @@ def run_virtio_console(test, params, env):
> no_serialports = 0
> no_consoles = 0
> # consoles required for Smoke test
> - if (tsmoke_params.count('serialport')):
> + if tsmoke_params.count('serialport'):
> no_serialports = max(2, no_serialports)
> - if (tsmoke_params.count('console')):
> + if tsmoke_params.count('console'):
> no_consoles = max(2, no_consoles)
> # consoles required for Loopback test
> for param in tloopback_params.split(';'):
> no_serialports = max(no_serialports, param.count('serialport'))
> no_consoles = max(no_consoles, param.count('console'))
> # consoles required for Performance test
> - if (tperf_params.count('serialport')):
> + if tperf_params.count('serialport'):
> no_serialports = max(1, no_serialports)
> - if (tperf_params.count('console')):
> + if tperf_params.count('console'):
> no_consoles = max(1, no_consoles)
> 
> - if (no_serialports + no_consoles) == 0:
> + if no_serialports + no_consoles == 0:
> raise error.TestFail("No tests defined, probably incorrect "
> "configuration in tests_base.cfg")
> 
> @@ -1639,13 +1637,13 @@ def run_virtio_console(test, params, env):
> init_guest(vm, consoles)
> 
> subtest.set_cleanup_func(clean_ports, [vm, consoles])
> - #Test Smoke
> + # Test Smoke
> test_smoke(subtest, vm, consoles, tsmoke_params)
> 
> - #Test multiport functionality and performance.
> + # Test multiport functionality and performance.
> test_multiport(subtest, vm, consoles, [tloopback_params,
> tperf_params])
> 
> - #Test destructive test.
> + # Test destructive test.
> # Uses stronger clean up function
> (_cleanup_func, _cleanup_args) = subtest.get_cleanup_func()
> subtest.set_cleanup_func(clean_reload_vm, [vm, consoles])
> --
> 1.7.4

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2011-02-09 12:25 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-02-09 10:43 [PATCH] KVM test: Cleanup of virtio_console subtest Lucas Meneghel Rodrigues
2011-02-09 12:25 ` Jiri Zupka

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).