def coverage_report(self):
        if not os.path.exists(self.cov.config.data_file):
            logger.debug(f'skipping coverage report {self.cov.config.data_file} file not found.')
            return

        logger.info(f'\n{self.report_str}')

        if 'text' in self.report_types:
            txt_file_path = os.path.join(self.report_dir, 'coverage.txt')
            logger.info(f'exporting txt coverage report to {txt_file_path}')
            with open(txt_file_path, 'w') as txt_file:
                txt_file.write(self.report_str)
        if 'html' in self.report_types:
            export_report(self.cov.html_report, 'html', os.path.join(self.cov.config.html_dir, 'index.html'))
        if 'xml' in self.report_types:
            export_report(self.cov.xml_report, 'xml', self.cov.config.xml_output)
        if 'json' in self.report_types:
            export_report(self.cov.json_report, 'json', self.cov.config.json_output)
        if 'json-min' in self.report_types:
            json_min_dir = os.path.join(self.report_dir, 'coverage-min.json')
            logger.info(f'exporting json-min coverage report to {json_min_dir}')
            CoverageSummary.create(self.cov.config.json_output, json_min_dir)
Пример #2
0
 def test_creation(self, tmpdir):
     min_cov_path = tmpdir.join('coverage-min.json')
     CoverageSummary.create(
         os.path.join(TEST_DATA_DIR, 'coverage.json'), min_cov_path)
     assert read_file(JSON_MIN_DATA_FILE) == read_file(min_cov_path)