From: Diane Trout Date: Tue, 20 Dec 2011 00:33:55 +0000 (-0800) Subject: Add in test code for testing downloading the ucsc download file index X-Git-Tag: v0.5.5~76^2~3 X-Git-Url: http://woldlab.caltech.edu/gitweb/?p=htsworkflow.git;a=commitdiff_plain;h=f57ab51256b51dbbec95a7d3b09542578fa5627c Add in test code for testing downloading the ucsc download file index --- diff --git a/htsworkflow/submission/test/test_ucsc.py b/htsworkflow/submission/test/test_ucsc.py new file mode 100644 index 0000000..f05de23 --- /dev/null +++ b/htsworkflow/submission/test/test_ucsc.py @@ -0,0 +1,29 @@ +import unittest +from StringIO import StringIO + +from htsworkflow.submission import ucsc + + +ENCODE_FILES="""wgEncodeGisChiaPetHCT116D000005593.bed.gz project=wgEncode; grant=Ruan; lab=GIS-Ruan; composite=wgEncodeGisChiaPet; dataType=ChiaPet; view=Interactions; cell=HCT-116; antibody=Pol2; replicate=1; origAssembly=hg19; dataVersion=ENCODE Jan 2011 Freeze; dccAccession=wgEncodeEH001427; dateSubmitted=2011-02-04; dateUnrestricted=2011-11-04; subId=3267; labVersion=CHH524; tableName=wgEncodeGisChiaPetHCT116D000005593; type=bed; md5sum=a3c7420aece4acfb15f80f4dfe9f1fb3; size=924K +wgEncodeCaltechRnaSeqGm12878R2x75Il200FastqRd2Rep1.fastq.tgz project=wgEncode; grant=Myers; lab=Caltech; composite=wgEncodeCaltechRnaSeq; dataType=RnaSeq; view=FastqRd2; cell=GM12878; localization=cell; rnaExtract=longPolyA; readType=2x75; insertLength=200; replicate=1; origAssembly=hg18; dataVersion=ENCODE Jan 2011 Freeze; dccAccession=wgEncodeEH000122; dateSubmitted=2010-07-14; dateResubmitted=2010-06-21; dateUnrestricted=2011-04-14; subId=1647; type=fastq; md5sum=51c4d1679b0ad29888bea2b40e26364a; size=4.8G +""" + + +class TestUCSCInfo(unittest.TestCase): + def test_parse_encodedcc_file(self): + stream = StringIO(ENCODE_FILES) + file_index = ucsc.parse_ucsc_file_index(stream) + self.assertEquals(len(file_index), 2) + + for attributes in file_index.values(): + self.assertIn('subId', attributes) + self.assertIn('project', attributes) + self.assertEquals(attributes['project'], 'wgEncode') + +def suite(): + suite = unittest.makeSuite(TestUCSCInfo, 'test') + return suite + +if __name__ == "__main__": + unittest.main(defaultTest='suite') +