annotate commons/core/writer/test/Test_MapWriter.py @ 6:769e306b7933

Change the repository level.
author yufei-luo
date Fri, 18 Jan 2013 04:54:14 -0500
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
6
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
1 from SMART.Java.Python.structure.Transcript import Transcript
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
2 from SMART.Java.Python.structure.Interval import Interval
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
3 import unittest
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
4 import os
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
5 from SMART.Java.Python.misc import Utils
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
6 from commons.core.writer.MapWriter import MapWriter
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
7 from commons.core.utils.FileUtils import FileUtils
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
8
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
9 class Test_MapWriter(unittest.TestCase):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
10
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
11 def setUp(self):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
12 self.expFileName = "expMapWriter.map"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
13 self.obsFileName = "testMapWriter1.map"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
14
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
15 def tearDown(self):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
16 os.remove(self.expFileName)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
17 os.remove(self.obsFileName)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
18
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
19 def test_writer(self):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
20 self.write_ExpMapFileName()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
21 writer = MapWriter(self.obsFileName)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
22
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
23 transcript = Transcript()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
24 transcript.setName("test1.1")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
25 transcript.setChromosome("arm_X")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
26 transcript.setStart(1000)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
27 transcript.setEnd(4000)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
28 transcript.setDirection("+")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
29 transcript.setTagValue("ID", "test1.1-1")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
30 transcript.setTagValue("occurrence", 1)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
31 transcript.setTagValue("nbOccurrences", 2)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
32
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
33 exon1 = Interval()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
34 exon1.setChromosome("arm_X")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
35 exon1.setStart(1000)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
36 exon1.setEnd(2000)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
37 exon1.setDirection("+")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
38
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
39 exon2 = Interval()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
40 exon2.setChromosome("arm_X")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
41 exon2.setStart(3000)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
42 exon2.setEnd(4000)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
43 exon2.setDirection("+")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
44
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
45 transcript.addExon(exon1)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
46 transcript.addExon(exon2)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
47
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
48 writer.addTranscript(transcript)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
49 writer.write()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
50 writer.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
51
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
52 self.assertTrue(FileUtils.are2FilesIdentical(self.expFileName, self.obsFileName))
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
53
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
54
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
55 def write_ExpMapFileName(self):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
56 f = open(self.expFileName, "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
57 f.write("test1.1\tarm_X\t1000\t4001\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
58 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
59
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
60 if __name__ == '__main__':
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
61 unittest.main()