diff commons/launcher/tests/Test_F_LaunchMatcher.py @ 18:94ab73e8a190

Uploaded
author m-zytnicki
date Mon, 29 Apr 2013 03:20:15 -0400
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/commons/launcher/tests/Test_F_LaunchMatcher.py	Mon Apr 29 03:20:15 2013 -0400
@@ -0,0 +1,63 @@
+from commons.core.utils.FileUtils import FileUtils
+import unittest
+import os
+import subprocess
+from commons.launcher.LaunchMatcher import LaunchMatcher
+
+class Test_F_LaunchMatcher(unittest.TestCase):
+
+    def setUp(self):
+        self._inFileName = "DmelChr4.align"
+        self._fastaFileName = "DmelChr4.fa"
+        inFilePath = "%s/Tools/%s" % (os.environ["REPET_DATA"], self._inFileName)
+        inFastaPath = "%s/Tools/%s" % (os.environ["REPET_DATA"], self._fastaFileName)
+        try:
+            os.remove(self._inFileName)
+        except:
+            pass
+        os.symlink(inFilePath, self._inFileName)
+        os.symlink(inFastaPath, self._fastaFileName)
+        self._iLaunchMatcher = LaunchMatcher(align=self._inFileName, queryFileName=self._fastaFileName, subjectFileName=self._fastaFileName, doJoin=True, evalue="1e-20", keepConflict=True)
+        self._iLaunchMatcher.setVerbosity(2)
+
+    def tearDown(self):
+        try:
+            FileUtils.removeFilesByPattern("%s*" % self._inFileName)
+            os.remove(self._fastaFileName)
+        except:
+            pass
+
+    def test_run_as_class_1_file(self):
+        expPathFileName = "%s/Tools/DmelChr4.align.match.path" % os.environ["REPET_DATA"]
+        expTabFileName = "%s/Tools/DmelChr4.align.match.tab" % os.environ["REPET_DATA"]
+        
+        obsPathFileName = "%s.match.path" % self._inFileName
+        obsTabFileName = "%s.match.tab" % self._inFileName
+        
+        self._iLaunchMatcher.run()
+        
+        self.assertTrue(FileUtils.are2FilesIdentical(expPathFileName, obsPathFileName))
+        self.assertTrue(FileUtils.are2FilesIdentical(expTabFileName, obsTabFileName))
+
+    def test_run_as_script(self):
+        expPathFileName = "%s/Tools/DmelChr4.align.match.path" % os.environ["REPET_DATA"]
+        expTabFileName = "%s/Tools/DmelChr4.align.match.tab" % os.environ["REPET_DATA"]
+
+        cmd = "LaunchMatcher.py "
+        cmd += "-a %s " % self._inFileName
+        cmd += "-q %s " % self._fastaFileName
+        cmd += "-s %s " % self._fastaFileName
+        cmd += "-o DmelChr4.align "
+        cmd += "-j "
+        cmd += "-k "
+        cmd += "-e 1e-20 "
+        process = subprocess.Popen(cmd, shell = True)
+        process.communicate()
+        obsPathFileName = "%s.match.path" % self._inFileName
+        obsTabFileName = "%s.match.tab" % self._inFileName
+        
+        self.assertTrue(FileUtils.are2FilesIdentical(expPathFileName, obsPathFileName))
+        self.assertTrue(FileUtils.are2FilesIdentical(expTabFileName, obsTabFileName))
+
+if __name__ == "__main__":
+    unittest.main()
\ No newline at end of file