annotate commons/core/utils/test/Test_FileUtils.py @ 6:769e306b7933

Change the repository level.
author yufei-luo
date Fri, 18 Jan 2013 04:54:14 -0500
parents
children 94ab73e8a190
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 # Copyright INRA (Institut National de la Recherche Agronomique)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
2 # http://www.inra.fr
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
3 # http://urgi.versailles.inra.fr
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
4 #
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
5 # This software is governed by the CeCILL license under French law and
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
6 # abiding by the rules of distribution of free software. You can use,
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
7 # modify and/ or redistribute the software under the terms of the CeCILL
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
8 # license as circulated by CEA, CNRS and INRIA at the following URL
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
9 # "http://www.cecill.info".
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
10 #
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
11 # As a counterpart to the access to the source code and rights to copy,
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
12 # modify and redistribute granted by the license, users are provided only
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
13 # with a limited warranty and the software's author, the holder of the
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
14 # economic rights, and the successive licensors have only limited
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
15 # liability.
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
16 #
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
17 # In this respect, the user's attention is drawn to the risks associated
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
18 # with loading, using, modifying and/or developing or reproducing the
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
19 # software by the user in light of its specific status of free software,
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
20 # that may mean that it is complicated to manipulate, and that also
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
21 # therefore means that it is reserved for developers and experienced
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
22 # professionals having in-depth computer knowledge. Users are therefore
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
23 # encouraged to load and test the software's suitability as regards their
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
24 # requirements in conditions enabling the security of their systems and/or
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
25 # data to be ensured and, more generally, to use and operate it in the
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
26 # same conditions as regards security.
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
27 #
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
28 # The fact that you are presently reading this means that you have had
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
29 # knowledge of the CeCILL license and that you accept its terms.
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
30
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
31
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
32 import os
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
33 import sys
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
34 import unittest
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
35 import time
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
36 import shutil
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
37 from commons.core.utils.FileUtils import FileUtils
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
38
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
39
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
40 class Test_FileUtils( unittest.TestCase ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
41
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
42 def setUp( self ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
43 self._uniqId = "%s_%s" % ( time.strftime("%Y%m%d%H%M%S"), os.getpid() )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
44
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
45 def tearDown( self ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
46 self._uniqId = ""
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
47
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
48 def test_getNbLinesInSingleFile_non_empty( self ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
49 file = "dummyFile_%s" % ( self._uniqId )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
50 f = open( file, "w" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
51 f.write( "line1\n" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
52 f.write( "line2\n" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
53 f.write( "line3" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
54 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
55 exp = 3
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
56 obs = FileUtils.getNbLinesInSingleFile( file )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
57 self.assertEquals( exp, obs )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
58 os.remove( file )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
59
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
60 def test_getNbLinesInSingleFile_non_empty_endEmptyLine( self ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
61 file = "dummyFile_%s" % ( self._uniqId )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
62 f = open( file, "w" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
63 f.write( "line1\n" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
64 f.write( "line2\n" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
65 f.write( "line3\n" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
66 f.write( "\n" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
67 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
68 exp = 3
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
69 obs = FileUtils.getNbLinesInSingleFile( file )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
70 self.assertEquals( exp, obs )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
71 os.remove( file )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
72
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
73 def test_getNbLinesInSingleFile_empty( self ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
74 file = "dummyFile_%s" % ( self._uniqId )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
75 os.system( "touch %s" % ( file ) )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
76 exp = 0
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
77 obs = FileUtils.getNbLinesInSingleFile( file )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
78 self.assertEquals( exp, obs )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
79 os.remove( file )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
80
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
81 def test_getNbLinesInFileList_non_empty( self ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
82 f = open("dummy1.txt", "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
83 f.write("line1\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
84 f.write("line2\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
85 f.write("line3")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
86 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
87 f = open("dummy2.txt", "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
88 f.write("line1\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
89 f.write("line2\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
90 f.write("line3")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
91 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
92 f = open("dummy3.txt", "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
93 f.write("line1\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
94 f.write("line2\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
95 f.write("line3")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
96 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
97 lFiles = [ "dummy1.txt", "dummy2.txt", "dummy3.txt" ]
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
98 exp = 9
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
99 obs = FileUtils.getNbLinesInFileList( lFiles )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
100 self.assertEqual( exp, obs )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
101 for f in lFiles:
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
102 os.remove( f )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
103
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
104 def test_catFilesByPattern( self ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
105 f = open("dummy1.txt", "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
106 f.write("line11\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
107 f.write("line12\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
108 f.write("line13")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
109 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
110 f = open("dummy2.txt", "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
111 f.write("line21\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
112 f.write("line22\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
113 f.write("line23\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
114 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
115 f = open("dummy3.txt", "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
116 f.write("line31\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
117 f.write("line32\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
118 f.write("line33")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
119 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
120 lFiles = [ "dummy1.txt", "dummy2.txt", "dummy3.txt" ]
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
121 outFile = "concatFiles.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
122 FileUtils.catFilesByPattern( "dummy*.txt", outFile )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
123 self.assertTrue( os.path.exists( outFile ) )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
124 exp = "line11\nline12\nline13line21\nline22\nline23\nline31\nline32\nline33"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
125 obs = FileUtils.getFileContent( [ outFile ] )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
126 self.assertEqual( exp, obs )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
127 for f in lFiles:
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
128 os.remove( f )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
129 os.remove(outFile)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
130
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
131 def test_catFilesByPattern_with_headers( self ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
132 f = open("dummy1.txt", "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
133 f.write("line11\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
134 f.write("line12\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
135 f.write("line13\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
136 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
137 f = open("dummy2.txt", "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
138 f.write("line21\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
139 f.write("line22\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
140 f.write("line23\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
141 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
142 f = open("dummy3.txt", "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
143 f.write("line31\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
144 f.write("line32\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
145 f.write("line33\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
146 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
147 lFiles = [ "dummy1.txt", "dummy2.txt", "dummy3.txt" ]
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
148 outFile = "concatFiles.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
149 FileUtils.catFilesByPattern( "dummy*.txt", outFile, skipHeaders = True)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
150 self.assertTrue( os.path.exists( outFile ) )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
151 exp = "line12\nline13\nline22\nline23\nline32\nline33\n"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
152 obs = FileUtils.getFileContent( [ outFile ] )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
153 self.assertEqual( exp, obs )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
154 for f in lFiles:
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
155 os.remove( f )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
156 os.remove(outFile)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
157
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
158 def test_catFilesByPattern_with_separator( self ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
159 f = open("dummy1.txt", "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
160 f.write("line11\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
161 f.write("line12\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
162 f.write("line13")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
163 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
164 f = open("dummy2.txt", "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
165 f.write("line21\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
166 f.write("line22\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
167 f.write("line23\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
168 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
169 f = open("dummy3.txt", "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
170 f.write("line31\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
171 f.write("line32\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
172 f.write("line33")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
173 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
174 lFiles = [ "dummy1.txt", "dummy2.txt", "dummy3.txt" ]
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
175 outFile = "concatFiles.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
176 FileUtils.catFilesByPattern( "dummy*.txt", outFile, separator = "\n+------------+\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
177 self.assertTrue( os.path.exists( outFile ) )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
178 exp = "line11\nline12\nline13\n+------------+\nline21\nline22\nline23\n\n+------------+\nline31\nline32\nline33"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
179 obs = FileUtils.getFileContent( [ outFile ] )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
180 self.assertEqual( exp, obs )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
181 for f in lFiles:
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
182 os.remove( f )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
183 os.remove(outFile)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
184
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
185 def test_catFilesByPattern_with_headers_and_separator( self ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
186 f = open("dummy1.txt", "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
187 f.write("line11\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
188 f.write("line12\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
189 f.write("line13\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
190 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
191 f = open("dummy2.txt", "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
192 f.write("line21\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
193 f.write("line22\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
194 f.write("line23\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
195 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
196 f = open("dummy3.txt", "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
197 f.write("line31\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
198 f.write("line32\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
199 f.write("line33\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
200 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
201 lFiles = [ "dummy1.txt", "dummy2.txt", "dummy3.txt" ]
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
202 outFile = "concatFiles.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
203 FileUtils.catFilesByPattern( "dummy*.txt", outFile, separator = "\n+------------+\n", skipHeaders = True)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
204 self.assertTrue( os.path.exists( outFile ) )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
205 exp = "line12\nline13\n\n+------------+\nline22\nline23\n\n+------------+\nline32\nline33\n"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
206 obs = FileUtils.getFileContent( [ outFile ] )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
207 self.assertEqual( exp, obs )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
208 for f in lFiles:
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
209 os.remove( f )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
210 os.remove(outFile)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
211
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
212 def test_isRessourceExists_exists(self):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
213 f = open("dummyFile.txt", "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
214 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
215 self.assertTrue(FileUtils.isRessourceExists("dummyFile.txt"))
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
216 os.system("rm dummyFile.txt")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
217
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
218 def test_isRessourceExists_not_exists(self):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
219 self.assertFalse(FileUtils.isRessourceExists("dummyFile.txt"))
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
220
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
221 def test_isEmpty_empty( self ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
222 file = "dummyFile_%s" % ( self._uniqId )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
223 os.system( "touch %s" % ( file ) )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
224 self.assertTrue( FileUtils.isEmpty( file ) )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
225 os.remove( file )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
226
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
227 def test_isEmpty_non_empty( self ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
228 file = "dummyFile_%s" % ( self._uniqId )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
229 fileHandler = open( file, "w" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
230 fileHandler.write( "line1\n" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
231 fileHandler.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
232 self.assertFalse( FileUtils.isEmpty( file ) )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
233 os.remove( file )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
234
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
235 def test_are2FilesIdentical_true( self ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
236 f = open("dummy1.txt", "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
237 f.write("line11\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
238 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
239 f = open("dummy2.txt", "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
240 f.write("line11\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
241 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
242 self.assertTrue( FileUtils.are2FilesIdentical( "dummy1.txt", "dummy2.txt" ) )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
243 for f in [ "dummy1.txt", "dummy2.txt" ]:
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
244 os.remove( f )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
245
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
246 def test_are2FilesIdentical_false( self ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
247 f = open("dummy1.txt", "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
248 f.write("line11\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
249 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
250 f = open("dummy2.txt", "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
251 f.write("line21\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
252 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
253 self.assertFalse( FileUtils.are2FilesIdentical( "dummy1.txt", "dummy2.txt" ) )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
254 for f in [ "dummy1.txt", "dummy2.txt" ]:
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
255 os.remove( f )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
256
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
257 def test_getFileContent( self ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
258 inFile = "dummyInFile_%s" % ( self._uniqId )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
259 inFileHandler = open( inFile, "w" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
260 inFileHandler.write( "zgdfet\n" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
261 inFileHandler.write( "agdfet\n" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
262 inFileHandler.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
263 exp = "zgdfet\n" + "agdfet\n"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
264 obs = FileUtils.getFileContent( [ inFile ] )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
265 self.assertEquals( exp, obs )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
266 os.remove( inFile )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
267
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
268 def test_sortFileContent( self ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
269 inFile = "dummyInFile_%s" % ( self._uniqId )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
270 inFileHandler = open( inFile, "w" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
271 inFileHandler.write( "zgdfet\n" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
272 inFileHandler.write( "agdfet\n" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
273 inFileHandler.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
274
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
275 expFile = "dummyExpFile_%s" % ( self._uniqId )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
276 expFileHandler = open( expFile, "w" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
277 expFileHandler.write( "agdfet\n" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
278 expFileHandler.write( "zgdfet\n" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
279 expFileHandler.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
280
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
281 FileUtils.sortFileContent( inFile )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
282
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
283 self.assertTrue( FileUtils.are2FilesIdentical( expFile, inFile ) )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
284 for f in [ inFile, expFile ]:
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
285 os.remove( f )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
286
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
287 def test_removeFilesByPattern_prefix( self ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
288 fileName1 = "filetest.fa"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
289 fileName2 = "test.fa.Nstretch.map"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
290 fileName3 = "test.fa_cut"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
291 os.system("touch %s" % fileName1)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
292 os.system("touch %s" % fileName2)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
293 os.system("touch %s" % fileName3)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
294 FileUtils.removeFilesByPattern("test*")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
295 self.assertTrue(os.path.exists(fileName1))
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
296 self.assertFalse(os.path.exists(fileName2))
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
297 self.assertFalse(os.path.exists(fileName3))
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
298 os.remove(fileName1)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
299
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
300 def test_removeFilesByPattern_suffix( self ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
301 fileName1 = "filetest"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
302 fileName2 = "test.fa.Nstretch.map"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
303 fileName3 = "test.fa_cut"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
304 os.system("touch %s" % fileName1)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
305 os.system("touch %s" % fileName2)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
306 os.system("touch %s" % fileName3)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
307 FileUtils.removeFilesByPattern("*test")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
308 self.assertFalse(os.path.exists(fileName1))
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
309 self.assertTrue(os.path.exists(fileName2))
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
310 self.assertTrue(os.path.exists(fileName3))
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
311 os.remove(fileName2)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
312 os.remove(fileName3)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
313
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
314 def test_removeFilesBySuffixList( self ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
315 tmpDir = "dummyDir_%s" % ( self._uniqId )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
316 if not os.path.exists( tmpDir ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
317 os.mkdir( tmpDir )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
318 commonPrefix = "dummyFile_%s" %( self._uniqId )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
319 os.system( "touch %s/%s.fa" % ( tmpDir, commonPrefix ) )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
320 os.system( "touch %s/%s.fa.Nstretch.map" % ( tmpDir, commonPrefix ) )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
321 os.system( "touch %s/%s.fa_cut" % ( tmpDir, commonPrefix ) )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
322 lSuffixes = [ ".Nstretch.map", "_cut" ]
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
323 FileUtils.removeFilesBySuffixList( tmpDir, lSuffixes )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
324 self.assertTrue( os.path.exists( "%s/%s.fa" % ( tmpDir, commonPrefix ) ) )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
325 self.assertFalse( os.path.exists( "%s/%s.fa.Nstretch.map" % ( tmpDir, commonPrefix ) ) )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
326 self.assertFalse( os.path.exists( "%s/%s.fa_cut" % ( tmpDir, commonPrefix ) ) )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
327 shutil.rmtree( tmpDir )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
328
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
329 def test_removeRepeatedBlanks( self ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
330 inFileName = "dummyWithRepeatedBlanks.dum"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
331 obsFileName = "dummyWithoutRepeatedBlanks.dum"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
332 expFileName = "dummyExpWithoutRepeatedBlanks.dum"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
333 self._writeFileWithRepeatedBlanks( inFileName )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
334 self._writeFileWithoutRepeatedBlanks( expFileName )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
335 FileUtils.removeRepeatedBlanks( inFileName, obsFileName )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
336 self.assertTrue( FileUtils.are2FilesIdentical( expFileName, obsFileName ) )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
337 for f in [ inFileName, expFileName, obsFileName ]:
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
338 os.remove( f )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
339
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
340 def test_RemoveRepeatedBlanks_without_outfileName (self):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
341 inFileName = "dummyWithRepeatedBlanks.dum"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
342 expFileName = "dummyExpWithoutRepeatedBlanks.dum"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
343 obsFileName = inFileName
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
344 self._writeFileWithRepeatedBlanks( inFileName )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
345 self._writeFileWithoutRepeatedBlanks( expFileName )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
346 FileUtils.removeRepeatedBlanks( inFileName )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
347 self.assertTrue( FileUtils.are2FilesIdentical( expFileName, obsFileName ) )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
348 for f in [ inFileName, expFileName ]:
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
349 os.remove( f )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
350
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
351
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
352 def test_fromWindowsToUnixEof( self ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
353 inFile = "dummyInFile"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
354 inFileHandler = open( inFile, "w" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
355 inFileHandler.write( "toto\r\n" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
356 inFileHandler.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
357 expFile = "dummyExpFile"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
358 expFileHandler = open( expFile, "w" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
359 expFileHandler.write( "toto\n" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
360 expFileHandler.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
361 FileUtils.fromWindowsToUnixEof( inFile )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
362 self.assertTrue( FileUtils.are2FilesIdentical( expFile, inFile ) )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
363 for f in [ inFile, expFile ]:
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
364 os.remove( f )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
365
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
366
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
367 def test_removeDuplicatedLines( self ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
368 inFile = "dummyInFile"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
369 inFileHandler = open( inFile, "w" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
370 inFileHandler.write( "toto\n" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
371 inFileHandler.write( "titi\n" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
372 inFileHandler.write( "toto\n" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
373 inFileHandler.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
374 expFile = "dummyExpFile"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
375 expFileHandler = open( expFile, "w" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
376 expFileHandler.write( "toto\n" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
377 expFileHandler.write( "titi\n" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
378 expFileHandler.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
379 FileUtils.removeDuplicatedLines( inFile )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
380 self.assertTrue( FileUtils.are2FilesIdentical( expFile, inFile ) )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
381 for f in [ inFile, expFile ]:
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
382 os.remove( f )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
383
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
384
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
385 def test_writeLineListInFile( self ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
386 inFile = "dummyInFile"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
387 lLines = [ "toto\n", "titi\n" ]
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
388 expFile = "dummyExpFile"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
389 expFileHandler = open( expFile, "w" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
390 expFileHandler.write( "toto\n" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
391 expFileHandler.write( "titi\n" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
392 expFileHandler.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
393 FileUtils.writeLineListInFile( inFile, lLines )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
394 self.assertTrue( FileUtils.are2FilesIdentical( expFile, inFile ) )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
395 for f in [ inFile, expFile ]:
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
396 os.remove( f )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
397
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
398
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
399 def test_getAbsoluteDirectoryPathList(self):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
400 currentDir = os.getcwd()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
401 rootDir = currentDir + "/" + "dummy"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
402 if os.path.exists( rootDir ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
403 shutil.rmtree(rootDir)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
404 os.mkdir(rootDir)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
405
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
406 os.mkdir(rootDir + "/" + "dummyDir1")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
407 os.mkdir(rootDir + "/" + "dummyDir2")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
408
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
409 expLDir = [rootDir + "/" + "dummyDir1", rootDir + "/" + "dummyDir2"]
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
410 obsLDir = FileUtils.getAbsoluteDirectoryPathList(rootDir)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
411
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
412 expLDir.sort()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
413 obsLDir.sort()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
414 self.assertEquals(expLDir, obsLDir)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
415
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
416 shutil.rmtree(rootDir + "/" + "dummyDir1")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
417 shutil.rmtree(rootDir + "/" + "dummyDir2")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
418 shutil.rmtree(rootDir)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
419
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
420
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
421 def test_getAbsoluteDirectoryPathList_empty_dir(self):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
422 currentDir = os.getcwd()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
423 rootDir = currentDir + "/" + "dummy"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
424 if os.path.exists( rootDir ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
425 shutil.rmtree(rootDir)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
426 os.mkdir(rootDir)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
427
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
428 expLDir = []
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
429 obsLDir = FileUtils.getAbsoluteDirectoryPathList(rootDir)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
430
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
431 self.assertEquals(expLDir, obsLDir)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
432
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
433 shutil.rmtree(rootDir)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
434
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
435
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
436 def test_getSubListAccordingToPattern_match(self):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
437 lPath = ["/home/repet/titi", "/pattern/test", "/patter/test", "/_patternic_/test", "/home/patternic/test", "/home/pattern", "pattern", ""]
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
438
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
439 expL = ["/pattern/test", "/_patternic_/test", "/home/patternic/test", "/home/pattern", "pattern"]
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
440 obsL = FileUtils.getSubListAccordingToPattern(lPath, "pattern")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
441
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
442 self.assertEquals(expL, obsL)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
443
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
444
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
445 def test_getSubListAccordingToPattern_not_match(self):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
446 lPath = ["/home/repet/titi", "/pattern/test", "/patter/test", "/_patternic_/test", "/home/patternic/test", "/home/pattern", "pattern", ""]
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
447
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
448 expL = ["/home/repet/titi", "/patter/test", ""]
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
449 obsL = FileUtils.getSubListAccordingToPattern(lPath, "pattern", False)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
450
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
451 self.assertEquals(expL, obsL)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
452
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
453
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
454 def test_getFileNamesList(self):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
455 currentDir = os.getcwd()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
456 rootDir = currentDir + "/" + "dummy"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
457 if os.path.exists( rootDir ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
458 shutil.rmtree(rootDir)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
459 os.mkdir(rootDir)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
460
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
461 directory = "testDir"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
462 os.mkdir(rootDir + "/" + directory)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
463 fileName1 = "dummyFile1.gff"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
464 fullFileName1 = rootDir + "/" + directory + "/" + fileName1
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
465 file1 = open(fullFileName1, "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
466 file1.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
467 fileName2 = "dummyFile2.gff"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
468 fullFileName2 = rootDir + "/" + directory + "/" + fileName2
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
469 file2 = open(fullFileName2, "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
470 file2.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
471
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
472 expLFiles = [fileName1, fileName2]
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
473 obsLFiles = FileUtils.getFileNamesList(rootDir + "/" + directory)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
474
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
475 self.assertEquals(expLFiles, sorted(obsLFiles))
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
476
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
477 shutil.rmtree(rootDir)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
478
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
479 def test_getFileNamesList_withPattern(self):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
480 currentDir = os.getcwd()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
481 rootDir = currentDir + "/" + "dummy"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
482 if os.path.exists( rootDir ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
483 shutil.rmtree(rootDir)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
484 os.mkdir(rootDir)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
485
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
486 directory = "testDir"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
487 os.mkdir(rootDir + "/" + directory)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
488 fileName1 = "dummyFile1.gff"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
489 fullFileName1 = rootDir + "/" + directory + "/" + fileName1
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
490 file1 = open(fullFileName1, "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
491 file1.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
492 fileName2 = "dummyFile2.gff"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
493 fullFileName2 = rootDir + "/" + directory + "/" + fileName2
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
494 file2 = open(fullFileName2, "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
495 file2.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
496
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
497 expLFiles = [fileName1]
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
498 obsLFiles = FileUtils.getFileNamesList(rootDir + "/" + directory, "dummyFile1.*")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
499
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
500 self.assertEquals(expLFiles, obsLFiles)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
501
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
502 shutil.rmtree(rootDir)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
503
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
504 def test_getFileNamesList_empty_dir(self):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
505 currentDir = os.getcwd()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
506 rootDir = currentDir + "/" + "dummy"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
507 os.mkdir(rootDir)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
508
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
509 directory = "testDir"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
510 os.mkdir(rootDir + "/" + directory)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
511
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
512 expLFiles = []
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
513 obsLFiles = FileUtils.getFileNamesList(rootDir + "/" + directory)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
514
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
515 self.assertEquals(expLFiles, obsLFiles)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
516
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
517 shutil.rmtree(rootDir)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
518
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
519 def test_getMd5SecureHash( self ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
520 if "hashlib" in sys.modules:
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
521 inFile = "dummyInFile"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
522 inFileHandler = open( inFile, "w" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
523 inFileHandler.write( "DLZIH17T63B;?" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
524 inFileHandler.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
525 exp = "50d1e2ded8f03881f940f70226e2b986"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
526 obs = FileUtils.getMd5SecureHash( inFile )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
527 self.assertEqual( exp, obs )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
528 os.remove( inFile )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
529
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
530 def test_catFilesOfDir(self):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
531 currentDir = os.getcwd()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
532 rootDir = currentDir + "/" + "dummy"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
533 if os.path.exists( rootDir ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
534 shutil.rmtree(rootDir)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
535 os.mkdir(rootDir)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
536
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
537 directory = "testDir"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
538 os.mkdir(rootDir + "/" + directory)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
539 fileName1 = "dummyFile1.gff"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
540 fullFileName1 = rootDir + "/" + directory + "/" + fileName1
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
541 file1 = open(fullFileName1, "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
542 file1.write("file1\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
543 file1.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
544 fileName2 = "dummyFile2.gff"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
545 fullFileName2 = rootDir + "/" + directory + "/" + fileName2
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
546 file2 = open(fullFileName2, "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
547 file2.write("file2\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
548 file2.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
549 obsFile = "obsFile"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
550 expFile = "expFile"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
551 expF = open(expFile, "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
552 expF.write("file1\nfile2\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
553 expF.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
554 FileUtils.catFilesOfDir(rootDir + "/" + directory, obsFile)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
555 self.assertTrue(FileUtils.are2FilesIdentical(expFile, obsFile))
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
556
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
557 shutil.rmtree(rootDir)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
558 os.remove(expFile)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
559 os.remove(obsFile)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
560
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
561 def test_isSizeNotNull_True(self):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
562 file = "dummyExpFile"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
563 fileHandler = open( file, "w" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
564 fileHandler.write( "toto\n" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
565 fileHandler.write( "titi\n" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
566 fileHandler.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
567 obsSize = FileUtils.isSizeNotNull(file)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
568 self.assertTrue(obsSize)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
569 os.remove(file)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
570
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
571 def test_isSizeNotNull_False(self):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
572 file = "dummyExpFile"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
573 fileHandler = open( file, "w" )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
574 fileHandler.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
575 obsSize = FileUtils.isSizeNotNull(file)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
576 self.assertFalse(obsSize)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
577 os.remove(file)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
578
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
579 def test_splitFileIntoNFiles_3_files(self):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
580 inputFile = "dummy.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
581 obsFile1 = "dummy-1.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
582 obsFile2 = "dummy-2.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
583 obsFile3 = "dummy-3.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
584
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
585 f = open(inputFile, "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
586 f.write("line1\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
587 f.write("line2\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
588 f.write("line3\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
589 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
590
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
591 exp1 = "line1\n"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
592 exp2 = "line2\n"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
593 exp3 = "line3\n"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
594
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
595 FileUtils.splitFileIntoNFiles(inputFile, 3)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
596
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
597 obs1 = open(obsFile1).read()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
598 obs2 = open(obsFile2).read()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
599 obs3 = open(obsFile3).read()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
600
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
601 self.assertEqual(exp1, obs1)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
602 self.assertEqual(exp2, obs2)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
603 self.assertEqual(exp3, obs3)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
604 self.assertFalse(FileUtils.isRessourceExists("dummy-4.txt"))
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
605 FileUtils.removeFilesByPattern("dummy*")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
606
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
607 def test_splitFileIntoNFiles_2_files(self):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
608 inputFile = "dummy.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
609 obsFile1 = "dummy-1.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
610 obsFile2 = "dummy-2.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
611
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
612 f = open(inputFile, "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
613 f.write("line1\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
614 f.write("line2\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
615 f.write("line3\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
616 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
617
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
618 exp1 = "line1\nline2\n"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
619 exp2 = "line3\n"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
620
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
621 FileUtils.splitFileIntoNFiles(inputFile, 2)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
622
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
623 obs1 = open(obsFile1).read()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
624 obs2 = open(obsFile2).read()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
625
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
626 self.assertEqual(exp1, obs1)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
627 self.assertEqual(exp2, obs2)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
628 self.assertFalse(FileUtils.isRessourceExists("dummy-3.txt"))
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
629 FileUtils.removeFilesByPattern("dummy*")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
630
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
631 def test_splitFileIntoNFiles_one_file(self):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
632 inputFile = "dummy.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
633 obsFile1 = "dummy-1.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
634
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
635 f = open(inputFile, "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
636 f.write("line1\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
637 f.write("line2\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
638 f.write("line3\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
639 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
640
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
641 exp1 = "line1\nline2\nline3\n"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
642
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
643 FileUtils.splitFileIntoNFiles(inputFile, 1)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
644
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
645 obs1 = open(obsFile1).read()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
646
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
647 self.assertEqual(exp1, obs1)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
648 self.assertFalse(FileUtils.isRessourceExists("dummy-2.txt"))
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
649 FileUtils.removeFilesByPattern("dummy*")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
650
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
651 def test_splitFileIntoNFiles_more_file_than_lines(self):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
652 inputFile = "dummy.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
653 obsFile1 = "dummy-1.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
654 obsFile2 = "dummy-2.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
655 obsFile3 = "dummy-3.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
656
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
657 f = open(inputFile, "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
658 f.write("line1\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
659 f.write("line2\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
660 f.write("line3\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
661 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
662
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
663 exp1 = "line1\n"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
664 exp2 = "line2\n"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
665 exp3 = "line3\n"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
666
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
667 FileUtils.splitFileIntoNFiles(inputFile, 10)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
668
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
669 obs1 = open(obsFile1).read()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
670 obs2 = open(obsFile2).read()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
671 obs3 = open(obsFile3).read()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
672
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
673 self.assertEqual(exp1, obs1)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
674 self.assertEqual(exp2, obs2)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
675 self.assertEqual(exp3, obs3)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
676 self.assertFalse(FileUtils.isRessourceExists("dummy-4.txt"))
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
677 FileUtils.removeFilesByPattern("dummy*")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
678
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
679 def test_splitFileIntoNFiles_empty_file(self):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
680 inputFile = "dummy.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
681 obsFile1 = "dummy-1.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
682
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
683 os.system( "touch %s" % ( inputFile ) )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
684
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
685 exp1 = ""
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
686
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
687 FileUtils.splitFileIntoNFiles(inputFile, 10)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
688
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
689 obs1 = open(obsFile1).read()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
690
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
691 self.assertEqual(exp1, obs1)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
692 self.assertFalse(FileUtils.isRessourceExists("dummy-2.txt"))
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
693 FileUtils.removeFilesByPattern("dummy*")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
694
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
695 def test_splitFileIntoNFiles_0_file(self):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
696 inputFile = "dummy.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
697 obsFile1 = "dummy-1.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
698
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
699 f = open(inputFile, "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
700 f.write("line1\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
701 f.write("line2\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
702 f.write("line3\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
703 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
704
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
705 exp1 = "line1\nline2\nline3\n"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
706
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
707 FileUtils.splitFileIntoNFiles(inputFile, 0)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
708
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
709 obs1 = open(obsFile1).read()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
710
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
711 self.assertEqual(exp1, obs1)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
712 self.assertFalse(FileUtils.isRessourceExists("dummy-2.txt"))
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
713 FileUtils.removeFilesByPattern("dummy*")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
714
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
715 def test_splitFileAccordingToLineNumber_3_files(self):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
716 inputFile = "dummy.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
717 obsFile1 = "dummy-1.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
718 obsFile2 = "dummy-2.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
719 obsFile3 = "dummy-3.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
720
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
721 f = open(inputFile, "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
722 f.write("line1\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
723 f.write("line2\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
724 f.write("line3\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
725 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
726
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
727 exp1 = "line1\n"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
728 exp2 = "line2\n"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
729 exp3 = "line3\n"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
730
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
731 FileUtils.splitFileAccordingToLineNumber(inputFile, 1)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
732
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
733 obs1 = open(obsFile1).read()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
734 obs2 = open(obsFile2).read()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
735 obs3 = open(obsFile3).read()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
736
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
737 self.assertEqual(exp1, obs1)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
738 self.assertEqual(exp2, obs2)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
739 self.assertEqual(exp3, obs3)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
740 self.assertFalse(FileUtils.isRessourceExists("dummy-4.txt"))
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
741 FileUtils.removeFilesByPattern("dummy*")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
742
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
743 def test_splitFileAccordingToLineNumber_2_files(self):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
744 inputFile = "dummy.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
745 obsFile1 = "dummy-1.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
746 obsFile2 = "dummy-2.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
747
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
748 f = open(inputFile, "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
749 f.write("line1\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
750 f.write("line2\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
751 f.write("line3\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
752 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
753
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
754 exp1 = "line1\nline2\n"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
755 exp2 = "line3\n"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
756
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
757 FileUtils.splitFileAccordingToLineNumber(inputFile, 2)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
758
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
759 obs1 = open(obsFile1).read()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
760 obs2 = open(obsFile2).read()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
761
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
762 self.assertEqual(exp1, obs1)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
763 self.assertEqual(exp2, obs2)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
764 self.assertFalse(FileUtils.isRessourceExists("dummy-3.txt"))
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
765 FileUtils.removeFilesByPattern("dummy*")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
766
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
767 def test_splitFileAccordingToLineNumber_one_file(self):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
768 inputFile = "dummy.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
769 obsFile1 = "dummy-1.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
770
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
771 f = open(inputFile, "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
772 f.write("line1\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
773 f.write("line2\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
774 f.write("line3\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
775 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
776
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
777 exp1 = "line1\nline2\nline3\n"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
778
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
779 FileUtils.splitFileAccordingToLineNumber(inputFile, 3)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
780
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
781 obs1 = open(obsFile1).read()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
782
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
783 self.assertEqual(exp1, obs1)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
784 self.assertFalse(FileUtils.isRessourceExists("dummy-2.txt"))
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
785 FileUtils.removeFilesByPattern("dummy*")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
786
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
787 def test_splitFileAccordingToLineNumber_more_maxLines_than_lines(self):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
788 inputFile = "dummy.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
789 obsFile1 = "dummy-1.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
790
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
791 f = open(inputFile, "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
792 f.write("line1\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
793 f.write("line2\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
794 f.write("line3\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
795 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
796
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
797 exp1 = "line1\nline2\nline3\n"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
798
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
799 FileUtils.splitFileAccordingToLineNumber(inputFile, 10)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
800
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
801 obs1 = open(obsFile1).read()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
802
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
803 self.assertEqual(exp1, obs1)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
804 self.assertFalse(FileUtils.isRessourceExists("dummy-2.txt"))
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
805 FileUtils.removeFilesByPattern("dummy*")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
806
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
807 def test_splitFileAccordingToLineNumber_empty_file(self):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
808 inputFile = "dummy.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
809 obsFile1 = "dummy-1.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
810
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
811 os.system( "touch %s" % ( inputFile ) )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
812
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
813 exp1 = ""
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
814
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
815 FileUtils.splitFileAccordingToLineNumber(inputFile, 10)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
816
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
817 obs1 = open(obsFile1).read()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
818
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
819 self.assertEqual(exp1, obs1)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
820 self.assertFalse(FileUtils.isRessourceExists("dummy-2.txt"))
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
821 FileUtils.removeFilesByPattern("dummy*")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
822
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
823 def test_splitFileAccordingToLineNumber_0_lines(self):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
824 inputFile = "dummy.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
825 obsFile1 = "dummy-1.txt"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
826
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
827 f = open(inputFile, "w")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
828 f.write("line1\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
829 f.write("line2\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
830 f.write("line3\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
831 f.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
832
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
833 exp1 = "line1\nline2\nline3\n"
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
834
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
835 FileUtils.splitFileAccordingToLineNumber(inputFile, 0)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
836
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
837 obs1 = open(obsFile1).read()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
838
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
839 self.assertEqual(exp1, obs1)
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
840 self.assertFalse(FileUtils.isRessourceExists("dummy-2.txt"))
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
841 FileUtils.removeFilesByPattern("dummy*")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
842
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
843 def _writeFile( self, fileName ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
844 inFile = open(fileName, 'w')
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
845 inFile.write(">Sequence_de_reference\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
846 inFile.write("ATTTTGCAGTCTTATTCGAG-----GCCATTGCT\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
847 inFile.write(">Lignee1_mismatch\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
848 inFile.write("ATTTTGCAGACTTATTCGAG-----GCCATTGCT\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
849 inFile.write(">Lignee2_insertion\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
850 inFile.write("ATTTTGCAGTCTTATTCGAGATTACGCCATTGCT\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
851 inFile.write(">Lignee3_deletion\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
852 inFile.write("A---TGCAGTCTTATTCGAG-----GCCATTGCT\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
853 inFile.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
854
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
855 def _writeFileWithEmptyLine( self, fileName ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
856 fileWithEmptyLine = open(fileName, 'w')
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
857 fileWithEmptyLine.write(">Sequence_de_reference\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
858 fileWithEmptyLine.write("ATTTTGCAGTCTTATTCGAG-----GCCATTGCT\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
859 fileWithEmptyLine.write("\n\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
860 fileWithEmptyLine.write(">Lignee1_mismatch\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
861 fileWithEmptyLine.write("ATTTTGCAGACTTATTCGAG-----GCCATTGCT\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
862 fileWithEmptyLine.write("\n\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
863 fileWithEmptyLine.write(">Lignee2_insertion\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
864 fileWithEmptyLine.write("ATTTTGCAGTCTTATTCGAGATTACGCCATTGCT\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
865 fileWithEmptyLine.write("\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
866 fileWithEmptyLine.write(">Lignee3_deletion\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
867 fileWithEmptyLine.write("A---TGCAGTCTTATTCGAG-----GCCATTGCT\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
868 fileWithEmptyLine.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
869
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
870 def _writeFileWithRepeatedBlanks( self, fileName ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
871 fileWithRepeatedBlanks = open(fileName, 'w')
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
872 fileWithRepeatedBlanks.write(">Sequ ence_de _reference\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
873 fileWithRepeatedBlanks.write("ATTTT GCAGTCTT TTCGAG- ----GCCATT GCT\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
874 fileWithRepeatedBlanks.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
875
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
876 def _writeFileWithoutRepeatedBlanks( self, fileName ):
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
877 fileWithoutRepeatedBlanks = open(fileName, 'w')
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
878 fileWithoutRepeatedBlanks.write(">Sequ ence_de _reference\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
879 fileWithoutRepeatedBlanks.write("ATTTT GCAGTCTT TTCGAG- ----GCCATT GCT\n")
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
880 fileWithoutRepeatedBlanks.close()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
881
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
882 test_suite = unittest.TestSuite()
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
883 test_suite.addTest( unittest.makeSuite( Test_FileUtils ) )
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
884 if __name__ == "__main__":
769e306b7933 Change the repository level.
yufei-luo
parents:
diff changeset
885 unittest.TextTestRunner(verbosity=2).run( test_suite )