def test_multi_platform(self): config = Mock(name='trunk', min_rev_time=lambda env: 0, max_rev_time=lambda env: 1000) build = Build(self.env, config='trunk', platform=1, rev=123, rev_time=42) build.insert() report = Report(self.env, build=build.id, step='foo', category='coverage') report.items += [{'lines': '12', 'percentage': '25'}] report.insert() build = Build(self.env, config='trunk', platform=2, rev=123, rev_time=42) build.insert() report = Report(self.env, build=build.id, step='foo', category='coverage') report.items += [{'lines': '12', 'percentage': '50'}] report.insert() req = Mock() generator = TestCoverageChartGenerator(self.env) template, data = generator.generate_chart_data(req, config, 'coverage') self.assertEqual('json.txt', template) data = data['json'] self.assertEqual('Test Coverage', data['title']) actual_data = data['data'] self.assertEqual('123', actual_data[0]['data'][0][0]) self.assertEqual('Lines of code', actual_data[0]['label']) self.assertEqual(12, actual_data[0]['data'][0][1]) self.assertEqual('Coverage', actual_data[1]['label']) self.assertEqual(6, actual_data[1]['data'][0][1])
def test_single_platform(self): config = Mock(name='trunk', min_rev_time=lambda env: 0, max_rev_time=lambda env: 1000) build = Build(self.env, config='trunk', platform=1, rev=123, rev_time=42) build.insert() report = Report(self.env, build=build.id, step='foo', category='coverage') report.items += [{'lines': '12', 'percentage': '25'}] report.insert() req = Mock() generator = TestCoverageChartGenerator(self.env) template, data = generator.generate_chart_data(req, config, 'coverage') self.assertEqual('json.txt', template) data = data['json'] self.assertEqual('Test Coverage', data['title']) actual_data = data['data'] self.assertEqual('123', actual_data[0]['data'][0][0]) self.assertEqual('Lines of code', actual_data[0]['label']) self.assertEqual(12, actual_data[0]['data'][0][1]) self.assertEqual('Coverage', actual_data[1]['label']) self.assertEqual(3, actual_data[1]['data'][0][1])
def test_single_platform(self): config = Mock(name='trunk') build = Build(self.env, config='trunk', platform=1, rev=123, rev_time=42) build.insert() report = Report(self.env, build=build.id, step='foo', category='coverage') report.items += [{'lines': '12', 'percentage': '25'}] report.insert() req = Mock() generator = TestCoverageChartGenerator(self.env) template, data = generator.generate_chart_data(req, config, 'coverage') self.assertEqual('bitten_chart_coverage.html', template) self.assertEqual('Test Coverage', data['title']) self.assertEqual('', data['data'][0][0]) self.assertEqual('[123]', data['data'][0][1]) self.assertEqual('Lines of code', data['data'][1][0]) self.assertEqual(12, data['data'][1][1]) self.assertEqual('Coverage', data['data'][2][0]) self.assertEqual(3, data['data'][2][1])
def test_multi_platform(self): config = Mock(name='trunk') build = Build(self.env, config='trunk', platform=1, rev=123, rev_time=42) build.insert() report = Report(self.env, build=build.id, step='foo', category='coverage') report.items += [{'lines': '12', 'percentage': '25'}] report.insert() build = Build(self.env, config='trunk', platform=2, rev=123, rev_time=42) build.insert() report = Report(self.env, build=build.id, step='foo', category='coverage') report.items += [{'lines': '12', 'percentage': '50'}] report.insert() req = Mock() generator = TestCoverageChartGenerator(self.env) template, data = generator.generate_chart_data(req, config, 'coverage') self.assertEqual('bitten_chart_coverage.html', template) self.assertEqual('Test Coverage', data['title']) self.assertEqual('', data['data'][0][0]) self.assertEqual('[123]', data['data'][0][1]) self.assertEqual('Lines of code', data['data'][1][0]) self.assertEqual(12, data['data'][1][1]) self.assertEqual('Coverage', data['data'][2][0]) self.assertEqual(6, data['data'][2][1])
def test_no_reports(self): req = Mock() config = Mock(name='trunk') generator = TestCoverageChartGenerator(self.env) template, data = generator.generate_chart_data(req, config, 'coverage') self.assertEqual('bitten_chart_coverage.html', template) self.assertEqual('Test Coverage', data['title']) self.assertEqual('', data['data'][0][0]) self.assertEqual('Lines of code', data['data'][1][0]) self.assertEqual('Coverage', data['data'][2][0])
def test_no_reports(self): req = Mock() config = Mock(name='trunk', min_rev_time=lambda env: 0, max_rev_time=lambda env: 1000) generator = TestCoverageChartGenerator(self.env) template, data = generator.generate_chart_data(req, config, 'coverage') self.assertEqual('json.txt', template) data = data['json'] self.assertEqual('Test Coverage', data['title']) actual_data = data['data'] self.assertEqual('Lines of code', actual_data[0]['label']) self.assertEqual('Coverage', actual_data[1]['label'])