Mercurial > repos > yufei-luo > s_mart
diff commons/launcher/tests/Test_BlatProgramLauncher.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_BlatProgramLauncher.py Mon Apr 29 03:20:15 2013 -0400 @@ -0,0 +1,98 @@ +import unittest +from commons.launcher.BlatProgramLauncher import BlatProgramLauncher + + +class Test_BlatProgramLauncher( unittest.TestCase ): + + def setUp( self ): + self._i = BlatProgramLauncher() + + + def tearDown( self ): + self._i = None + + + def test_getHelpAsString( self ): + exp = "" + exp += "usage: BlatProgramLauncher.py [options]" + exp += "\ngeneric options:" + exp += "\n -h: this help" + exp += "\n -i: name of the input file (format='fasta')" + exp += "\n -c: clean" + exp += "\n -v: verbosity level (default=0/1)" + exp += "\nspecific options:" + exp += "\n -s: name of the subject file (database, format='fasta')" + exp += "\n -p: parameters for 'blat'" + exp += "\n -A: same sequences (all-by-all)" + exp += "\n -o: name of the output file (format='align', default=inFile+'.align')" + obs = self._i.getHelpAsString() + self.assertEqual( exp, obs ) + + + def test_setAttributesFromCmdLine( self ): + self._i.setAttributesFromCmdLine( "-s", "dummySubjectFile.fa" ) + self.assertEqual( "dummySubjectFile.fa", self._i.getSubjectFile() ) + + self._i.setAttributesFromCmdLine( "-o", "dummyOutFile.align" ) + self.assertEqual( "dummyOutFile.align", self._i.getOutputFile() ) + + + def test_setWrapperCommandLine( self ): + self._i.setInputFile( "dummyInFile.fa" ) + self._i.setSubjectFile( "dummySubjectFile.fa" ) + exp = "BlatProgramLauncher.py" + exp += " -i %s" % ( "dummyInFile.fa" ) + exp += " -s %s" % ( "dummySubjectFile.fa" ) + exp += " -o %s.align" % ( "dummyInFile.fa" ) + exp += " -v 0" + self._i.setWrapperCommandLine() + obs = self._i.getWrapperCommandLine() + self.assertEqual( exp, obs ) + + + def test_setProgramCommandLine( self ): + self._i.setInputFile( "dummyInFile.fa" ) + self._i.setSubjectFile( "dummySubjectFile.fa" ) + self._i.setProgramParameters( "-minIdentity=90" ) + exp = "blat dummySubjectFile.fa dummyInFile.fa -minIdentity=90 -out=blast8 dummyInFile.fa.blast" + self._i.setProgramCommandLine() + obs = self._i.getProgramCommandLine() + self.assertEqual( exp, obs ) + + + def test_setListFilesToKeep( self ): + self._i.setInputFile( "dummyInFile.fa" ) + lExp = [ "dummyInFile.fa.align" ] + self._i.setListFilesToKeep() + lObs = self._i.getListFilesToKeep() + lExp.sort() + lObs.sort() + self.assertEqual( lExp, lObs ) + + + def test_setListFilesToRemove( self ): + self._i.setInputFile( "dummyInFile.fa" ) + lExp = [ "dummyInFile.fa.blast" ] + self._i.setListFilesToRemove() + lObs = self._i.getListFilesToRemove() + lExp.sort() + lObs.sort() + self.assertEqual( lExp, lObs ) + + + def test_setSummary( self ): + self._i.setInputFile( "dummyInFile.fa" ) + self._i.setSubjectFile( "dummySubjectFile.fa" ) + exp = "input file: %s" % ( self._i.getInputFile() ) + exp += "\nsubject file: %s" % ( self._i.getSubjectFile() ) + exp += "\nparameters: %s" % ( self._i.getProgramParameters() ) + exp += "\noutput file: %s" % ( "dummyInFile.fa.align" ) + self._i.setSummary() + obs = self._i.getSummary() + self.assertEqual( exp, obs ) + + +test_suite = unittest.TestSuite() +test_suite.addTest( unittest.makeSuite( Test_BlatProgramLauncher ) ) +if __name__ == "__main__": + unittest.TextTestRunner(verbosity=2).run( test_suite )