blob: 1f6a0aab56adb1cd0fdbb3bb2b7decaba72207c3 [file] [log] [blame]
Guido van Rossum7b8f1ab1999-10-19 17:48:54 +00001"""Test script for the binhex C module
Roger E. Masse2a1c8341997-01-16 16:44:09 +00002
3 Uses the mechanism of the python binhex module
Fred Drake275dfda2001-05-22 21:01:14 +00004 Based on an original test by Roger E. Masse.
Roger E. Masse2a1c8341997-01-16 16:44:09 +00005"""
6import binhex
Fred Drake275dfda2001-05-22 21:01:14 +00007import os
Fred Drake275dfda2001-05-22 21:01:14 +00008import unittest
Barry Warsaw04f357c2002-07-23 19:04:11 +00009from test import test_support
Roger E. Masse2a1c8341997-01-16 16:44:09 +000010
Roger E. Masse2a1c8341997-01-16 16:44:09 +000011
Fred Drake275dfda2001-05-22 21:01:14 +000012class BinHexTestCase(unittest.TestCase):
Roger E. Masse2a1c8341997-01-16 16:44:09 +000013
Fred Drake275dfda2001-05-22 21:01:14 +000014 def setUp(self):
Guido van Rossum3b0a3292002-08-09 16:38:32 +000015 self.fname1 = test_support.TESTFN + "1"
16 self.fname2 = test_support.TESTFN + "2"
Fred Drake004d5e62000-10-23 17:22:08 +000017
Fred Drake275dfda2001-05-22 21:01:14 +000018 def tearDown(self):
19 try: os.unlink(self.fname1)
20 except OSError: pass
Roger E. Masse2a1c8341997-01-16 16:44:09 +000021
Fred Drake275dfda2001-05-22 21:01:14 +000022 try: os.unlink(self.fname2)
23 except OSError: pass
Roger E. Masse2a1c8341997-01-16 16:44:09 +000024
Fred Drake275dfda2001-05-22 21:01:14 +000025 DATA = 'Jack is my hero'
Roger E. Masse2a1c8341997-01-16 16:44:09 +000026
Fred Drake275dfda2001-05-22 21:01:14 +000027 def test_binhex(self):
28 f = open(self.fname1, 'w')
29 f.write(self.DATA)
30 f.close()
Roger E. Masse2a1c8341997-01-16 16:44:09 +000031
Fred Drake275dfda2001-05-22 21:01:14 +000032 binhex.binhex(self.fname1, self.fname2)
33
34 binhex.hexbin(self.fname2, self.fname1)
35
36 f = open(self.fname1, 'r')
37 finish = f.readline()
38 f.close()
39
40 self.assertEqual(self.DATA, finish)
41
42
Fred Drake2e2be372001-09-20 21:33:42 +000043def test_main():
44 test_support.run_unittest(BinHexTestCase)
45
46
47if __name__ == "__main__":
48 test_main()