開発環境
- macOS Sierra - Apple (OS)
- Emacs (Text Editor)
- Python 3.6 (プログラミング言語)
たのしいプログラミング Pythonではじめよう!(Jason R. Briggs (著)、磯蘭水・藤永奈保子・鈴木悠 (翻訳)、オーム社)の第1部(プログラムの作り方)、第10章(便利に使えるモジュールたち)、10.8(自分でやってみよう)を取り組んでみる。
コード(Emacs)
#!/usr/bin/env python3 # -*- coding: utf-8 -*- class Car: pass import unittest import copy # 1. コピーされた車 class TestCopy(unittest.TestCase): def setUp(self): self.car1 = Car() self.car1.wheels = 4 self.car2 = self.car1 self.car2.wheels = 3 self.car3 = copy.copy(self.car1) self.car3.wheels = 6 def tearDown(self): pass def test_1(self): self.assertEqual(self.car1.wheels, 3) def test_2(self): self.assertEqual(self.car1.wheels, 3) # 2. お気に入りリストを保存する import pickle class TestPickle(unittest.TestCase): def setUp(self): self.favorites = ['f1', 'f2'] with open('favorites.dat', 'wb') as f: pickle.dump(self.favorites, f) def tearDown(self): pass def test_1(self): with open('favorites.dat', 'rb') as f: favorites = pickle.load(f) self.assertEqual(favorites, self.favorites) if __name__ == '__main__': unittest.main()
入出力結果(Terminal, IPython)
$ ./sample1.py -v test_1 (__main__.TestCopy) ... ok test_2 (__main__.TestCopy) ... ok test_1 (__main__.TestPickle) ... ok ---------------------------------------------------------------------- Ran 3 tests in 0.002s OK $
0 コメント:
コメントを投稿