11.1
代码:
#city_functions.py
def city_country(city,country):
return(city.title()+', '+country.title())
#test_cities.py
import unittest
from city_functions import city_country
class CitiesTest(unittest.TestCase):
"""docstring for CitiesTest"""
def test_city_country(self):
case1 = city_country('shanghai','china')
self.assertEqual(case1,'Shanghai, China')
unittest.main()
输出:
.
----------------------------------------------------------------------
Ran 1 test in 0.000s
OK
11.2
代码:
#city_functions.py
def city_country(city,country,population=0):
output = city.title()+', '+country.title()
if population:
output += ' - population ' + str(population)
return output
#test_cities.py
import unittest
from city_functions import city_country
class CitiesTest(unittest.TestCase):
"""docstring for CitiesTest"""
def test_city_country(self):
case1 = city_country('shanghai','china')
self.assertEqual(case1,'Shanghai, China')
def test_population(self):
case2 = city_country('guangzhou','china',population=100)
self.assertEqual(case2,'Guangzhou, China - population 100')
unittest.main()
输出:
..
----------------------------------------------------------------------
Ran 2 tests in 0.000s
OK
11.3
代码:
#employee.py
class Employee():
def __init__(self, name1, name2, salary):
self.first = name1.title()
self.last = name2.title()
self.salary = salary
def give_raise(self, amount=5000):
self.salary += amount
#test_employee.py
import unittest
from employee import Employee
class EmployeeTest(unittest.TestCase):
def setUp(self):
self.tom = Employee('tom','clancy',10000)
def test_raise(self):
self.tom.give_raise()
self.assertEqual(self.tom.salary,15000)
def test_raise2(self):
self.tom.give_raise(15000)
self.assertEqual(self.tom.salary,25000)
unittest.main()
输出:
..
----------------------------------------------------------------------
Ran 2 tests in 0.000s
OK