class TestDirectory(unittest.TestCase): def setUp(self): self.report = Directory() def test_load_single(self): self.report.load_single(',', 'Jack,Knife,Male,Pink,2000-Sep-20') session = self.report.get_session() results = session.query(Person).all() self.assertEqual(len(results), 1) p = results[0] self.assertEqual(p.first_name, 'Jack') self.assertEqual(p.last_name, 'Knife') self.assertEqual(p.gender, 'Male') self.assertEqual(p.favorite_color, 'Pink') self.assertEqual(p.date_of_birth, datetime.date(2000, 9, 20)) def test_report_data(self): self.report.load_single(',', 'Jack,Ham,Male,Pink,2000-Sep-20') self.report.load_single(',', 'Jack,Knife,Male,Pink,2000-Sep-20') unordered_results = self.report.report_data() self.assertEqual(len(unordered_results), 2) self.assertEqual(unordered_results[0].last_name, 'Ham') self.assertEqual(unordered_results[1].last_name, 'Knife') ordered_results = self.report.report_data([('last_name', 'DESC')]) self.assertEqual(len(ordered_results), 2) self.assertEqual(ordered_results[0].last_name, 'Knife') self.assertEqual(ordered_results[1].last_name, 'Ham')