def write_coverage_db(filename, fmt="xml", libucis=None): formats = ["xml", "libucis"] covergroups = CoverageRegistry.inst().covergroup_types() db: UCIS if fmt == "xml" or fmt == "mem": db = MemFactory.create() elif fmt == "libucis": if libucis is not None: LibFactory.load_ucis_library(libucis) db = LibFactory.create(None) else: raise Exception("Unsupported coverage-report format " + format + ". Supported formats: " + str(formats)) save_visitor = CoverageSaveVisitor(db) now = datetime.now save_visitor.save( TestData(UCIS_TESTSTATUS_OK, "UCIS:simulator", ucis.ucis_Time()), covergroups) if fmt == "xml": XmlFactory.write(db, filename) elif fmt != "mem": db.write(filename) return db
def get_coverage_report_model() -> CoverageReport: """Returns a coverage report model of all covergroups""" covergroups = CoverageRegistry.inst().covergroup_types() db = MemFactory.create() save_visitor = CoverageSaveVisitor(db) now = datetime.now save_visitor.save( TestData(UCIS_TESTSTATUS_OK, "UCIS:simulator", ucis.ucis_Time()), covergroups) return CoverageReportBuilder.build(db)