+++ /dev/null
-import unittest
-
-
-import os
-from htsworkflow.automation.copier import runfolder_validate
-
-def extract_runfolder_path(watchdir, event):
- runfolder_path = watchdir
- path = event.path
- if not path.startswith(watchdir):
- return None
-
- fragments = path[len(watchdir):].split(os.path.sep)
- for f in fragments:
- runfolder_path = os.path.join(runfolder_path, f)
- if runfolder_validate(f):
- return runfolder_path
- return None
-
-class Event(object):
- def __init__(self, path=None, name=None):
- self.path = path
- self.name = name
-
-class testRunner(unittest.TestCase):
-
- def test_extract_runfolder(self):
- watchdir = os.path.join('root', 'server', 'mount')
- runfolder = os.path.join(watchdir, '080909_HWI-EAS229_0052_1234ABCD')
- ipar = os.path.join(runfolder, 'Data', 'IPAR_1.01')
- other = os.path.join(watchdir, 'other')
-
- event = Event( path=runfolder )
- self.failUnlessEqual(extract_runfolder_path(watchdir, event), runfolder)
-
- event = Event( path=ipar )
- self.failUnlessEqual(extract_runfolder_path(watchdir, event), runfolder)
-
- event = Event( path=other)
- self.failUnlessEqual(extract_runfolder_path(watchdir, event), None )
-
-def suite():
- return unittest.makeSuite(testRunner,'test')
-
-if __name__ == "__main__":
- unittest.main(defaultTest="suite")