#! /usr/bin/env python
"""Test the arraymodule.
   Roger E. Masse
"""
import array
from test_support import verbose

def main():

    testtype('c', 'c')

    for type in (['b', 'h', 'i', 'l', 'f', 'd']):
	testtype(type, 1)


def testtype(type, example):

    
	a = array.array(type)
	a.append(example)
	if verbose:
	    print 40*'*'
	    print 'array after append: ', a
	a.typecode
	a.itemsize
	if a.typecode in ('i', 'b', 'h', 'l'):
	    a.byteswap()

	if a.typecode == 'c':
	    f = open('/etc/passwd', 'r')
	    a.fromfile(f, 10)
	    if verbose:
		print 'char array with 10 bytes of /etc/passwd appended: ', a
	    a.fromlist(['a', 'b', 'c'])
	    if verbose:
		print 'char array with list appended: ', a

	a.insert(0, example)
	if verbose:
	    print 'array of %s after inserting another:' % a.typecode, a
	f = open('/dev/null', 'w')
	a.tofile(f)
	a.tolist()
	a.tostring()
	if verbose:
	    print 'array of %s converted to a list: ' % a.typecode, a.tolist()
	if verbose:
	    print 'array of %s converted to a string: ' \
	           % a.typecode, a.tostring()

main()
	

@@ -108,17 +108,33 @@
  verbose
+, TESTFN, unlink
 %0A
-
 %0Adef mai
@@ -233,16 +233,36 @@
 pe, 1)%0A%0A
+    unlink(TESTFN)%0A%0A
 %0Adef tes
@@ -288,13 +288,8 @@
 ):%0A%0A
-    %0A
 %09a =
@@ -518,21 +518,119 @@
 pen(
-'/etc/passwd'
+TESTFN, %22w%22)%0A%09    f.write(%22The quick brown fox jumps over the lazy dog.%5Cn%22)%0A%09    f.close()%0A%09    f = open(TESTFN
 , 'r
@@ -655,16 +655,31 @@
 (f, 10)%0A
+%09    f.close()%0A
 %09    if 
@@ -728,19 +728,14 @@
  of 
-/etc/passwd
+TESTFN
  app
@@ -957,19 +957,14 @@
 pen(
-'/dev/null'
+TESTFN
 , 'w
@@ -979,16 +979,27 @@
 file(f)%0A
+%09f.close()%0A
 %09a.tolis
@@ -1165,16 +1165,16 @@
 ng: ' %5C%0A
-
 %09       
@@ -1205,16 +1205,17 @@
 ring()%0A%0A
+%0A
 main()%0A%09

Use TESTFN instead of /etc/passwd and /dev/null as test files.