class RoadExposureReportMixinTest(unittest.TestCase): """Test the ReportMixin. .. versionadded:: 3.2 """ # noinspection PyPep8Naming def setUp(self): """Fixture run before all tests.""" self.road_mixin_blank = RoadExposureReportMixin() self.road_mixin = RoadExposureReportMixin() self.road_mixin.road_lengths = OrderedDict([ ('Main', 133.3), ('Side', 10), ('Bike', 1.2)]) self.road_mixin.affected_road_lengths = OrderedDict([ ('Flooded', { 'Main': 2, 'Side': 5.5, 'Bike': 1.2}) ]) self.road_mixin.affected_road_categories = ['Flooded'] def tearDown(self): """Run after each test.""" del self.road_mixin_blank del self.road_mixin def test_0001_generate_report(self): """Generate a blank report.""" blank_report = self.road_mixin_blank.generate_report().to_text() # self.assertListEqual(blank_report, expected_blank_report, message) self.assertIn('**Road Type**', blank_report) self.assertIn('**Total (m)**', blank_report) def test_0002_road_breakdown(self): """Test the buildings breakdown.""" roads_breakdown = self.road_mixin.roads_breakdown().to_text() self.assertIn('**Breakdown by road type**', roads_breakdown) self.assertIn('Main', roads_breakdown) self.assertIn('133', roads_breakdown) self.assertIn('Side', roads_breakdown) self.assertIn('10', roads_breakdown) self.assertIn('Bike', roads_breakdown) self.assertIn('1', roads_breakdown) def test_0003_total(self): """Test general methods.""" default_length = self.road_mixin_blank.total_road_length length = self.road_mixin.total_road_length message = 'Default length is not as expected.' self.assertEqual(default_length, 0, message) message = 'Real length is not as expected.' self.assertEqual(length, 144.5, message)
class RoadExposureReportMixinTest(unittest.TestCase): """Test the ReportMixin. .. versionadded:: 3.2 """ # noinspection PyPep8Naming def setUp(self): """Fixture run before all tests.""" self.road_mixin_blank = RoadExposureReportMixin() self.road_mixin = RoadExposureReportMixin() self.road_mixin.road_lengths = OrderedDict([ ('Main', 133.3), ('Side', 10), ('Bike', 1.2)]) self.road_mixin.affected_road_lengths = OrderedDict([ ('Flooded', { 'Main': 2, 'Side': 5.5, 'Bike': 1.2}) ]) def tearDown(self): """Run after each test.""" del self.road_mixin_blank del self.road_mixin def test_0001_generate_report(self): """Generate a blank report.""" blank_report = self.road_mixin_blank.generate_report() expected_blank_report = [ {'content': ''}, {'content': ''}, {'content': [u'Road Type', u'Total (m)'], 'header': True}, {'content': [u'All', '0']}, {'content': ''}, {'content': u'Breakdown by road type', 'header': True}, {'content': ''}, {'content': ''}] message = 'Blank report is not as expected.' self.assertListEqual(blank_report, expected_blank_report, message) def test_0002_road_breakdown(self): """Test the buildings breakdown.""" roads_breakdown = self.road_mixin.roads_breakdown() expected_roads_breakdown = [ {'content': u'Breakdown by road type', 'header': True}, {'content': ['Main', '133']}, {'content': ['Side', '10']}, {'content': ['Bike', '1']}] message = 'roads breakdown is not as expected.' self.assertListEqual( roads_breakdown, expected_roads_breakdown, message) def test_0003_total(self): """Test general methods.""" default_length = self.road_mixin_blank.total_road_length length = self.road_mixin.total_road_length message = 'Default length is not as expected.' self.assertEqual(default_length, 0, message) message = 'Real length is not as expected.' self.assertEqual(length, 144.5, message)