X-Git-Url: http://woldlab.caltech.edu/gitweb/?p=erange.git;a=blobdiff_plain;f=test%2FtestGeneMrnaCountsWeighted.py;fp=test%2FtestGeneMrnaCountsWeighted.py;h=108a3b84779beb32a2226e6a0733aa359d107f31;hp=0000000000000000000000000000000000000000;hb=0d3e3112fd04c2e6b44a25cacef1d591658ad181;hpb=5e4ae21098dba3d1edcf11e7279da0d84c3422e4 diff --git a/test/testGeneMrnaCountsWeighted.py b/test/testGeneMrnaCountsWeighted.py new file mode 100644 index 0000000..108a3b8 --- /dev/null +++ b/test/testGeneMrnaCountsWeighted.py @@ -0,0 +1,99 @@ +''' +Created on Oct 20, 2010 + +@author: sau +''' +import unittest +from erange import geneMrnaCountsWeighted + + +class TestGeneMrnaCountsWeighted(unittest.TestCase): + + + def setUp(self): + pass + + + def tearDown(self): + pass + + + #TODO: write test + def testMain(self): + pass + + + #TODO: write test + def testGeneMrnaCountsWeighted(self): + pass + + + def testDoNotProcessChromosome(self): + chromosomeList = [] + self.assertTrue(geneMrnaCountsWeighted.doNotProcessChromosome("chr1", chromosomeList)) + + chromosomeList = ["chr1"] + self.assertFalse(geneMrnaCountsWeighted.doNotProcessChromosome("chr1", chromosomeList)) + + chromosomeList = ["chr2"] + self.assertTrue(geneMrnaCountsWeighted.doNotProcessChromosome("chr1", chromosomeList)) + + + #TODO: write test + def testGetReadGIDs(self): + pass + + + def testGetGeneSymbolEmptyDicts(self): + geneinfoDict = {} + geneannotDict = {} + genome = "hsapien" + self.assertEquals("FARGene", geneMrnaCountsWeighted.getGeneSymbol("FARGene", genome, geneinfoDict, geneannotDict)) + self.assertEquals("LOCGene", geneMrnaCountsWeighted.getGeneSymbol("Gene", genome, geneinfoDict, geneannotDict)) + + + def testGetGeneSymbolFromInfoDict(self): + geneinfoDict = {"Gene": [("GeneName", "AltGeneName")]} + geneannotDict = {} + self.assertEquals("GeneName", geneMrnaCountsWeighted.getGeneSymbol("Gene", "hsapien", geneinfoDict, geneannotDict)) + self.assertEquals("AltGeneName", geneMrnaCountsWeighted.getGeneSymbol("Gene", "celegans", geneinfoDict, geneannotDict)) + + + def testGetGeneSymbolFromAnnotDict(self): + geneinfoDict = {} + geneannotDict = {("hsapien", "Gene"): ["GeneName", "AltGeneName"]} + self.assertEquals("GeneName", geneMrnaCountsWeighted.getGeneSymbol("Gene", "hsapien", geneinfoDict, geneannotDict)) + self.assertEquals("LOCGene", geneMrnaCountsWeighted.getGeneSymbol("Gene", "celegans", geneinfoDict, geneannotDict)) + + + #TODO: write test + def testWriteCountsToFile(self): + pass + + + def testGetTagCount(self): + self.assertEquals(0.0, geneMrnaCountsWeighted.getTagCount({}, "gene", {"gene": ""}, {})) + + uniqueCountDict = {"gene": 1, + "related1": 1, + "related2": 1 + } + gidReadDict = {"gene": ["read1"]} + read2GidDict = {"read1": ["related1", "related2"]} + self.assertEquals(0.5, geneMrnaCountsWeighted.getTagCount(uniqueCountDict, "gene", gidReadDict, read2GidDict)) + self.assertEquals(0.5, geneMrnaCountsWeighted.getTagCount({}, "gene", gidReadDict, read2GidDict)) + + uniqueCountDict["gene"] = 2 + self.assertEquals(1.0, geneMrnaCountsWeighted.getTagCount(uniqueCountDict, "gene", gidReadDict, read2GidDict)) + + +def suite(): + suite = unittest.TestSuite() + suite.addTest(unittest.makeSuite(TestGeneMrnaCountsWeighted)) + + return suite + + +if __name__ == "__main__": + #import sys;sys.argv = ['', 'Test.testName'] + unittest.main() \ No newline at end of file