summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_binhex.py
blob: 2de35ce301d2091657645e6a184a78e4c9b37dc2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#! /usr/bin/env python
"""Test script for the binhex C module

   Uses the mechanism of the python binhex module
   Based on an original test by Roger E. Masse.
"""
import binhex
import os
import tempfile
import unittest
from test import test_support


class BinHexTestCase(unittest.TestCase):

    def setUp(self):
        self.fname1 = tempfile.mktemp()
        self.fname2 = tempfile.mktemp()

    def tearDown(self):
        try: os.unlink(self.fname1)
        except OSError: pass

        try: os.unlink(self.fname2)
        except OSError: pass

    DATA = 'Jack is my hero'

    def test_binhex(self):
        f = open(self.fname1, 'w')
        f.write(self.DATA)
        f.close()

        binhex.binhex(self.fname1, self.fname2)

        binhex.hexbin(self.fname2, self.fname1)

        f = open(self.fname1, 'r')
        finish = f.readline()
        f.close()

        self.assertEqual(self.DATA, finish)


def test_main():
    test_support.run_unittest(BinHexTestCase)


if __name__ == "__main__":
    test_main()