48 lines
1.4 KiB
Python
48 lines
1.4 KiB
Python
import unittest
|
|
import calc
|
|
|
|
class TestCalc(unittest.TestCase):
|
|
"""
|
|
Test the add function from the calc library
|
|
"""
|
|
|
|
def test_add_integers(self):
|
|
"""
|
|
Test that the addition of two integers returns the correct total
|
|
"""
|
|
result = calc.add2(1, 2)
|
|
self.assertEqual(result, 3)
|
|
|
|
def test_add_floats(self):
|
|
"""
|
|
Test that the addition of two floats returns the correct result
|
|
"""
|
|
result = calc.add2('10.5', 2)
|
|
self.assertEqual(result, 12.5)
|
|
|
|
def test_add_strings(self):
|
|
"""
|
|
Test the addition of two strings returns the two strings as one
|
|
concatenated string
|
|
"""
|
|
result = calc.add2('abc', 'def')
|
|
self.assertEqual(result, 'abcdef')
|
|
|
|
def test_add_string_and_integer(self):
|
|
"""
|
|
Test the addition of a string and an integer returns them as one
|
|
concatenated string (in which the integer is converted to a string)
|
|
"""
|
|
result = calc.add2('abc', 3)
|
|
self.assertEqual(result, 'abc3')
|
|
|
|
def test_add_string_and_number(self):
|
|
"""
|
|
Test the addition of a string and a float returns them as one
|
|
concatenated string (in which the float is converted to a string)
|
|
"""
|
|
result = calc.add2('abc', '5.5')
|
|
self.assertEqual(result, 'abc5.5')
|
|
|
|
if __name__ == '__main__':
|
|
unittest.main()
|