3 from StringIO
import StringIO
7 sys
.path
.append(os
.path
.join(os
.path
.dirname(__file__
), '..'))
9 from Preprocessor
import Preprocessor
11 class TestLineEndings(unittest
.TestCase
):
13 Unit tests for the Context class
17 self
.pp
= Preprocessor()
18 self
.pp
.out
= StringIO()
19 self
.tempnam
= os
.tempnam('.')
22 os
.remove(self
.tempnam
)
24 def createFile(self
, lineendings
):
25 f
= open(self
.tempnam
, 'wb')
26 for line
, ending
in zip(['a', '#literal b', 'c'], lineendings
):
31 self
.createFile(['\x0D']*3)
32 self
.pp
.do_include(self
.tempnam
)
33 self
.assertEquals(self
.pp
.out
.getvalue(), 'a\nb\nc\n')
36 self
.createFile(['\x0A']*3)
37 self
.pp
.do_include(self
.tempnam
)
38 self
.assertEquals(self
.pp
.out
.getvalue(), 'a\nb\nc\n')
40 def testWindows(self
):
41 self
.createFile(['\x0D\x0A']*3)
42 self
.pp
.do_include(self
.tempnam
)
43 self
.assertEquals(self
.pp
.out
.getvalue(), 'a\nb\nc\n')
45 if __name__
== '__main__':