1+ ### Python Unit Testing ###\
2+ import unittest
3+
4+ def sum (num1 , num2 ):
5+ return num1 + num2
6+
7+
8+ class TestAddFunction (unittest .TestCase ):
9+
10+ def test_add (self ):
11+ self .assertEqual (sum (5 , 5 ), 10 )
12+ self .assertEqual (sum (5 , 3 ), 8 )
13+ self .assertEqual (sum (2 , 2 ), 4 )
14+ self .assertEqual (sum (10 , 45 ), 55 )
15+ self .assertEqual (sum (5 , - 5 ), 0 )
16+
17+ def test_add_large_numbers (self ):
18+ self .assertEqual (sum (45000 , 20000 ), 65000 )
19+
20+
21+ #! Optional Challenge
22+ my_info = {
23+ 'name' : 'John' ,
24+ 'age' : 37 ,
25+ 'birth_date' : '23/12/1986' ,
26+ 'programming_languages' : ['JavaScript' , 'Python' ]
27+ }
28+
29+ def get_info (info ):
30+ return info
31+
32+ class TestMyInfoDict (unittest .TestCase ):
33+
34+ def test_dict_fields (self ):
35+ fields = ['name' , 'age' , 'birth_date' , 'programming_languages' ]
36+ result = get_info (my_info )
37+
38+ for field in fields :
39+ self .assertTrue (field in result , f'Missing field: { field } ' )
40+
41+ def test_dict_fields (self ):
42+ values = ['John' , 37 , '23/12/1986' , ['JavaScript' , 'Python' ]]
43+ result = get_info (my_info )
44+ for value in values :
45+ self .assertTrue (value in result .values (), f'Value is not correct: { value } ' )
46+
47+ if __name__ == '__main__' :
48+ unittest .main ()
49+
0 commit comments