11-1 城市和国家:
'''module city_functions.py'''
def city_country(city, country):
return str(city) + ", " + str(country)
'''文件名: test_cities.py'''
import unittest
from city_functions import city_country
class CityCountryTest(unittest.TestCase):
def test_city_country(self):
formatted_name = city_country('Santiago', 'Chile')
self.assertEqual(formatted_name, 'Santiago, Chile')
unittest.main()
运行结果:
11-2 人口数量:
'''module city_functions.py'''
def city_country(city, country, population=5000000):
return str(city) + ", " + str(country) + " - population " + str(population)
'''文件名: test_cities.py'''
import unittest
from city_functions import city_country
class CityCountryTest(unittest.TestCase):
def test_city_country(self):
formatted_name = city_country('Santiago', 'Chile')
self.assertEqual(formatted_name, 'Santiago, Chile - population 5000000')
def test_city_country_population(self):
formatted_name = city_country('Santiago', 'Chile', 5000000)
self.assertEqual(formatted_name, 'Santiago, Chile - population 5000000')
unittest.main()
运行结果:
11-3 雇员:
class Employee():
def __init__(self, last_name, first_name, salary):
self.last_name = last_name
self.first_name =first_name
self.salary = salary
def give_raise(self, count=5000):
self.salary += count
'''文件名: test_employee.py'''
import unittest
from employee import Employee
class TestEmployee(unittest.TestCase):
def test_give_default_raise(self):
formatted = Employee('dong', 'zhiqi', 10000)
formatted.give_raise()
self.assertEqual(formatted.salary, 15000)
def test_give_custom_raise(self):
formatted = Employee('dong', 'zhiqi', 10000)
formatted.give_raise(10000)
self.assertEqual(formatted.salary, 20000)
unittest.main()
运行结果: