1from test_support import * 2 3 4def print_file(content): 5 for line in content: 6 print line 7 8# Build driver 9 10gprbuild('check_mem') 11 12# Run driver (2 loops) 13 14run('check_mem', ['2'], output_file='check_mem.res1') 15run('gnatmem', ['3', '-i', 'gmem.out', './check_mem', "2"], 16 output_file='check_mem.run1') 17 18# Run driver (30 loops) 19 20run('check_mem', ['30'], output_file='check_mem.res2') 21run('gnatmem', ['3', '-i', 'gmem.out', './check_mem', "30"], 22 output_file='check_mem.run2') 23 24# Now check that final water-mark for run1 and run2 is equal 25r1 = open('check_mem.run1').readlines() 26r2 = open('check_mem.run2').readlines() 27 28fr1 = "1" 29fr2 = "2" 30 31for item in r1: 32 if item[0:8] == " Final": 33 fr1 = item 34for item in r2: 35 if item[0:8] == " Final": 36 fr2 = item 37 38if fr1 != fr2: 39 print "NOK" 40 print "run 1 ---------------" 41 print_file(r1) 42 print "run 2 ---------------" 43 print_file(r2) 44 sys.exit(1) 45else: 46 print "OK" 47 sys.exit(0) 48