mailRe: r2774 - /branches/test_suite/test_suite/unit_tests/unit_test_runner.py


Others Months | Index by Date | Thread Index
>>   [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Header


Content

Posted by Edward d'Auvergne on November 09, 2006 - 13:32:
Gary, I was wondering how the code in this new 'unit_test_runner.py'
file is executed?  I can't work out how to run this code.

Cheers,

Edward


On 11/8/06, garyt@xxxxxxxxxxxxxxx <garyt@xxxxxxxxxxxxxxx> wrote:
Author: varioustoxins
Date: Wed Nov  8 11:15:47 2006
New Revision: 2774

URL: http://svn.gna.org/viewcvs/relax?rev=2774&view=rev
Log:
initial checkin of a unit test runner

note this version only runs one test test_float.py!

Added:
    branches/test_suite/test_suite/unit_tests/unit_test_runner.py

Added: branches/test_suite/test_suite/unit_tests/unit_test_runner.py
URL: 
http://svn.gna.org/viewcvs/relax/branches/test_suite/test_suite/unit_tests/unit_test_runner.py?rev=2774&view=auto
==============================================================================
--- branches/test_suite/test_suite/unit_tests/unit_test_runner.py (added)
+++ branches/test_suite/test_suite/unit_tests/unit_test_runner.py Wed Nov  8 
11:15:47 2006
@@ -1,0 +1,40 @@
+import os,re,unittest,string,sys
+
+class TestFinder:
+    pattern = re.compile('test.*\.py$')
+    suite = unittest.TestSuite()
+    def __init__(self,rootPath=None):
+        self.rootPath = rootPath
+        if self.rootPath == None:
+            self.rootPath = os.getcwd()
+    def importClass(self,name):
+        mod = __import__(name)
+        components = name.split('.')
+        for comp in components[1:]:
+            mod = getattr(mod, comp)
+        return mod
+
+    def scanPaths(self,path=None):
+        for (dirpath, dirnames, filenames) in os.walk(self.rootPath):
+             print dirpath, dirnames, filenames
+             for filename in filenames:
+                 if self.pattern.match(filename):
+                     moduleName  = os.path.splitext(filename)[0]
+                     className = string.upper(moduleName[0]) + moduleName[1:]
+                     module  = __import__ (moduleName)
+                     clazz =  getattr(module,className)
+
+
+                     self.suite = 
unittest.TestLoader().loadTestsFromTestCase(clazz)
+    #
+    def run(self):
+        runner = unittest.TextTestRunner()
+        runner.run(self.suite)
+
+class run_unit_tests(object):
+    def __init__(self,test_directory=None):
+        pass
+if __name__ == '__main__':
+    finder = TestFinder()
+    finder.scanPaths()
+    finder.run()


_______________________________________________ relax (http://nmr-relax.com)

This is the relax-commits mailing list
relax-commits@xxxxxxx

To unsubscribe from this list, get a password
reminder, or change your subscription options,
visit the list information page at
https://mail.gna.org/listinfo/relax-commits




Related Messages


Powered by MHonArc, Updated Thu Nov 09 18:20:28 2006