Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import os
- import random
- NUMBER_OF_ERRORS = 48
- BASELOG = 9
- MAXSIZE = 3000
- errors = 0
- while(errors < NUMBER_OF_ERRORS):
- a = random.randint(-10**20001, 10**20001)
- b = random.randint(-10**20001, 10**20001)
- c = random.randint(-10**10, 10**10)
- os.system("./cppA {0} {1} {2}".format(a, b, c))
- f = open('mylib', 'r')
- line = f.readline()
- if(line != str(int(a * c == c * (b - 1))) + '\n'):
- errors = errors + 1
- temp = open(str(errors) + ' in test 1', 'w')
- temp.write("{0} {1} {2} \n got:{3} \n expected:{4} in test 1".format(a, b, c, line, str(int(a * c == c * (b - 1))) + '\n'))
- temp.close()
- continue
- line = f.readline()
- if(line != str(int(a + 5 < b + 1)) + '\n'):
- errors = errors + 1
- temp = open(str(errors) + ' in test 2', 'w')
- temp.write("{0} {1} {2} \n got:{3} \n expected:{4} in test 2".format(a, b, c, line, str(int(a + 5 < b + 1)) + '\n'))
- temp.close()
- continue
- line = f.readline()
- if(line != str(int(a <= b)) + '\n'):
- errors = errors + 1
- temp = open(str(errors) + ' in test 3', 'w')
- temp.write("{0} {1} {2} \n got:{3} \n expected:{4} in test 3".format(a, b, c, line, str(int(a <= b)) + '\n'))
- temp.close()
- continue
- line = f.readline()
- if(line != str(int(a > b - 5)) + '\n'):
- errors = errors + 1
- temp = open(str(errors) + ' in test 4', 'w')
- temp.write("{0} {1} {2} \n got:{3} \n expected:{4} in test 4".format(a, b, c, line, str(int(a > b - 5)) + '\n'))
- temp.close()
- continue
- line = f.readline()
- if(line != str(int(a >= b - 5)) + '\n'):
- errors = errors + 1
- temp = open(str(errors) + ' in test 5', 'w')
- temp.write("{0} {1} {2} \n got:{3} \n expected:{4} in test 5".format(a, b, c, line, str(int(a >= b - 5)) + '\n'))
- temp.close()
- continue
- line = f.readline()
- if(line != str(int(a != b * c)) + '\n'):
- errors = errors + 1
- temp = open(str(errors) + ' in test 6', 'w')
- temp.write("{0} {1} {2} \n got:{3} \n expected:{4} in test 6".format(a, b, c, line, str(int(a != b * c)) + '\n'))
- temp.close()
- continue
- line = f.readline()
- if(line != str(int(a == -b)) + '\n'):
- errors = errors + 1
- temp = open(str(errors) + ' in test 7', 'w')
- temp.write("{0} {1} {2} \n got:{3} \n expected:{4} in test 7".format(a, b, c, line, str(int(a == -b)) + '\n'))
- temp.close()
- continue
- line = f.readline()
- if(line != str((123 + c) * 2**63) + '\n'):
- errors = errors + 1
- temp = open(str(errors) + ' in test 8', 'w')
- temp.write("{0} {1} {2} \n got:{3} \n expected:{4} in test 8".format(a, b, c, line, str((123 + c) * 2**63) + '\n'))
- temp.close()
- continue
- a = a + b
- b = a - b
- a = a - b
- line = f.readline()
- if(line != str(a + b) + '\n'):
- errors = errors + 1
- temp = open(str(errors) + ' in test 9', 'w')
- temp.write("{0} {1} {2} \n got:{3} \n expected:{4} in test 9".format(a, b, c, line, str(a + b) + '\n'))
- temp.close()
- continue
- line = f.readline()
- if(line != str(a - b) + '\n'):
- errors = errors + 1
- temp = open(str(errors) + ' in test 10', 'w')
- temp.write("{0} {1} {2} \n got:{3} \n expected:{4} in test 10".format(a, b, c, line, str(a - b) + '\n'))
- temp.close()
- continue
- line = f.readline()
- if((line != str(a * b) + '\n' and (a * b < 10**(BASELOG*MAXSIZE))) or (a * b >= 10**(BASELOG*MAXSIZE) and line != 'Overflow' + '\n')):
- errors = errors + 1
- temp = open(str(errors) + ' in test 11', 'w')
- if(a * b < 10**(BASELOG*MAXSIZE)):
- temp.write("{0} {1} {2} \n got:{3} \n expected:{4} in test 11".format(a, b, c, line, str(a * b) + '\n'))
- else:
- temp.write("{0} {1} {2} \n got:{3} \n expected:Overflow\n in test 11".format(a, b, c, line))
- temp.close()
- continue
- f.close()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement