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 CitiesTestCase(unittest.TestCase):
def test_city_country(self):
santiago_chile = city_country('santiago', 'chile')
self.assertEqual(santiago_chile, 'Santiago, Chile')
unittest.main()
11-2 人口数量
city_functions.py
def city_country(city, country, population = 0):
city_message = city.title() + ", " + country.title()
if population:
city_message += ' - population ' + str(population)
return city_message
test_cities.py
import unittest
from city_functions import city_country
class CitiesTestCase(unittest.TestCase):
def test_city_country(self):
santiago_chile = city_country('santiago', 'chile')
self.assertEqual(santiago_chile, 'Santiago, Chile')
def test_city_country_population(self):
santiago_chile = city_country('santiago', 'chile', population=5000000)
self.assertEqual(santiago_chile, 'Santiago, Chile - population 5000000')
unittest.main()
11-3 雇员
employee.py
class Employee():
def __init__(self, first_name, last_name, salary):
self.first = first_name.title()
self.last = last_name.title()
self.salary = salary
def give_raise(self, amount=5000):
self.salary += amount
test_employee.py
import unittest
from employee import Employee
class TestEmployee(unittest.TestCase):
def setUp(self):
self.eric = Employee('eric', 'matthes', 1000)
def test_give_default_raise(self):
self.eric.give_raise()
self.assertEqual(self.eric.salary, 6000)
def test_give_custom_raise(self):
self.eric.give_raise(3000)
self.assertEqual(self.eric.salary, 4000)
unittest.main()