Jul-01-2020, 07:26 PM
# -*- coding: utf-8 -*- """ Created on Mon Jun 22 23:46:47 2020 @author: Lenovo """ #import pdb import unittest class Calculator: """ A class is defined for calculator, to preform addition,subtration,multiplication,divison,power and exponent. """ def __init__(self,num1,num2): try: assert type(num1) == int assert type(num2) == int except AssertionError: print('Invalid parameter type') raise Exception self.num1 = num1 self.num2 = num2 def addition(self): #pdb.set_trace()# we have added a breakpoint here. The code pause execution here. #print(' Addition') return (self.num1 + self.num2) def subtraction(self): return(self.num1 - self.num2) def division(self): return(self.num1 / self.num2) def moduler(self): return(self.num1 // self.num2) def multiplication(self): return(self.num1 * self.num2) def power(self): return(self.num1 ** self.num2) cal= Calculator(2,2) #print(cal.addition()) """ print(f"Subtraction-> {cal.num1}-{cal.num2} = ",cal.subtraction()) print(f"Addition-> {cal.num1} + {cal.num2} = ",cal.addition()) print(f"Division-> {cal.num1} / {cal.num2} =",cal.division()) print(f"Moduler-> {cal.num1} // {cal.num2} =",cal.moduler()) print(f"Multiplication->{cal.num1} * {cal.num2} = ",cal.multiplication()) print(f"Power-> {cal.num1} ** {cal.num2} = ",cal.power()) """ #add = cal.subtraction() """print(f"Addition-> {cal.num1} + {cal.num2} = ",cal.addition()) print(f"Division-> {cal.num1} / {cal.num2} =",cal.division()) print(f"Moduler-> {cal.num1} // {cal.num2} =",cal.moduler()) print(f"Multiplication->{cal.num1} * {cal.num2} = ",cal.multiplication()) print(f"Power-> {cal.num1} ** {cal.num2} = ",cal.power()) """ class TestNumberMethods(unittest.TestCase): def addition(self): print(cal.addition()) self.assertNotEqual(cal.addition(),4) self.assertTrue(cal.addition()) #self.assertEqual(cal.addition(),3,"Should be 4") if __name__ =='__main__': unittest.main() #print("Everything passed")
Output:runfile('E:/My Folders/Alnafi/AlNafi/PythonBetaTheNextLevelUpPart3_Testing_Debugging_Ex1.py')
----------------------------------------------------------------------
Ran 0 tests in 0.000s
OK