Roger E. Masse | 2a1c834 | 1997-01-16 16:44:09 +0000 | [diff] [blame] | 1 | #! /usr/bin/env python |
Guido van Rossum | 7b8f1ab | 1999-10-19 17:48:54 +0000 | [diff] [blame] | 2 | """Test script for the binhex C module |
Roger E. Masse | 2a1c834 | 1997-01-16 16:44:09 +0000 | [diff] [blame] | 3 | |
4 | Uses the mechanism of the python binhex module | ||||
5 | Roger E. Masse | ||||
6 | """ | ||||
7 | import binhex | ||||
8 | import tempfile | ||||
Thomas Wouters | b9fa0a8 | 2000-08-04 13:34:43 +0000 | [diff] [blame] | 9 | from test_support import verbose, TestSkipped |
Roger E. Masse | 2a1c834 | 1997-01-16 16:44:09 +0000 | [diff] [blame] | 10 | |
11 | def test(): | ||||
12 | |||||
13 | try: | ||||
Guido van Rossum | 41360a4 | 1998-03-26 19:42:58 +0000 | [diff] [blame] | 14 | fname1 = tempfile.mktemp() |
15 | fname2 = tempfile.mktemp() | ||||
16 | f = open(fname1, 'w') | ||||
Roger E. Masse | 2a1c834 | 1997-01-16 16:44:09 +0000 | [diff] [blame] | 17 | except: |
Thomas Wouters | b9fa0a8 | 2000-08-04 13:34:43 +0000 | [diff] [blame] | 18 | raise TestSkipped, "Cannot test binhex without a temp file" |
Roger E. Masse | 2a1c834 | 1997-01-16 16:44:09 +0000 | [diff] [blame] | 19 | |
20 | start = 'Jack is my hero' | ||||
21 | f.write(start) | ||||
22 | f.close() | ||||
Fred Drake | 004d5e6 | 2000-10-23 17:22:08 +0000 | [diff] [blame] | 23 | |
Roger E. Masse | 2a1c834 | 1997-01-16 16:44:09 +0000 | [diff] [blame] | 24 | binhex.binhex(fname1, fname2) |
25 | if verbose: | ||||
Guido van Rossum | 41360a4 | 1998-03-26 19:42:58 +0000 | [diff] [blame] | 26 | print 'binhex' |
Roger E. Masse | 2a1c834 | 1997-01-16 16:44:09 +0000 | [diff] [blame] | 27 | |
28 | binhex.hexbin(fname2, fname1) | ||||
29 | if verbose: | ||||
Guido van Rossum | 41360a4 | 1998-03-26 19:42:58 +0000 | [diff] [blame] | 30 | print 'hexbin' |
Roger E. Masse | 2a1c834 | 1997-01-16 16:44:09 +0000 | [diff] [blame] | 31 | |
32 | f = open(fname1, 'r') | ||||
33 | finish = f.readline() | ||||
34 | |||||
Fred Drake | 132dce2 | 2000-12-12 23:11:42 +0000 | [diff] [blame^] | 35 | if start != finish: |
36 | print 'Error: binhex != hexbin' | ||||
Roger E. Masse | 2a1c834 | 1997-01-16 16:44:09 +0000 | [diff] [blame] | 37 | elif verbose: |
Guido van Rossum | 41360a4 | 1998-03-26 19:42:58 +0000 | [diff] [blame] | 38 | print 'binhex == hexbin' |
Roger E. Masse | 2a1c834 | 1997-01-16 16:44:09 +0000 | [diff] [blame] | 39 | |
Roger E. Masse | 3b039fa | 1997-01-16 18:53:01 +0000 | [diff] [blame] | 40 | try: |
Guido van Rossum | 41360a4 | 1998-03-26 19:42:58 +0000 | [diff] [blame] | 41 | import os |
42 | os.unlink(fname1) | ||||
43 | os.unlink(fname2) | ||||
Roger E. Masse | 3b039fa | 1997-01-16 18:53:01 +0000 | [diff] [blame] | 44 | except: |
Guido van Rossum | 41360a4 | 1998-03-26 19:42:58 +0000 | [diff] [blame] | 45 | pass |
Roger E. Masse | 2a1c834 | 1997-01-16 16:44:09 +0000 | [diff] [blame] | 46 | test() |