-
Notifications
You must be signed in to change notification settings - Fork 0
/
test_calculator.py
141 lines (98 loc) · 2.8 KB
/
test_calculator.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
## import from calculator you created 'calculator.py'
# from calculator import square
# def main():
# test_square()
# def test_square():
# if square(2) != 4:
# print("2 squared was not 4")
# if square(3) != 9:
# print("3 squared was not 9")
# if __name__ == "__main__":
# main()
# ## Using 'assert' to condense code above
# from calculator import square
# def main():
# test_square()
# def test_square():
# assert square(2) == 4
# assert square(3) == 9
# if __name__ == "__main__":
# main()
# ## Using 'try' and 'except' to address AssertionError
# from calculator import square
# def main():
# test_square()
# def test_square():
# try:
# assert square(2) == 4
# except AssertionError:
# print("2 squared was not 4")
# try:
# assert square(3) == 9
# except AssertionError:
# print("3 sqaured was not 9")
# if __name__ == "__main__":
# main()
# ## Including other parameters
# from calculator import square
# def main():
# test_square()
# def test_square():
# try:
# assert square(2) == 4
# except AssertionError:
# print("2 squared was not 4")
# try:
# assert square(3) == 9
# except AssertionError:
# print("3 sqaured was not 9")
# try:
# assert square(-2) == 4
# except AssertionError:
# print("-2 squared was not 4")
# try:
# assert square(-3) == 9
# except AssertionError:
# print("-3 sqaured was not 9")
# try:
# assert square(0) == 0
# except AssertionError:
# print("0 sqaured was not 0")
# if __name__ == "__main__":
# main()
## Integrating 'pytest': this will hint to you where the error might coming from!
## If needed, to Install pytest: 'pip install pytest'
# from calculator import square
# def test_square():
# assert square(2) == 4
# assert square(3) == 9
# assert square(-2) == 4
# assert square(-3) == 9
# assert square(0) == 0
# Then in the terminal you would run this code as:
## 'pytest test_calculator.py'
## Note that from the code above, only the first error will be reported
# ## One approach, you can break up your code by:
# from calculator import square
# def test_square():
# assert square(2) == 4
# assert square(3) == 9
# def test_negative():
# assert square(-2) == 4
# assert square(-3) == 9
# def test_zero():
# assert square(0) == 0
## Integrtating potential TypeError, in case a none integer were to inputted
import pytest
from calculator import square
def test_square():
assert square(2) == 4
assert square(3) == 9
def test_negative():
assert square(-2) == 4
assert square(-3) == 9
def test_zero():
assert square(0) == 0
def test_str():
with pytest.raises(TypeError):
square("cat")