fvm.toolchains.questa_pkg.parsers.parse_formal_signoff module

Warning

Callables that are not documented in the Public API are not intented to be directly used and thus may change between minor versions.

Parser for formal signoff reports.

This module provides functions to parse the coverage tables and convert them into a unified coverage table format.

It is specifically for Questa PropCheck results.

fvm.toolchains.questa_pkg.parsers.parse_formal_signoff.add_total_field(table)[source]

Add a total row to the coverage table

Parameters:

table (dict) – A coverage table with parsed row data.

Returns:

The input table with an additional total row.

Return type:

dict

fvm.toolchains.questa_pkg.parsers.parse_formal_signoff.filter_coverage_tables(tables)[source]

Filter coverage tables to select only the design summary, not the individual module summaries.

Parameters:

tables (list[dict]) – List of coverage tables with titles and data.

Returns:

Filtered list of coverage tables.

Return type:

list[dict]

fvm.toolchains.questa_pkg.parsers.parse_formal_signoff.parse_coverage_table(html)[source]

Parse formal signoff tables from HTML content.

Parameters:

html (str) – HTML string containing coverage tables.

Returns:

A list of parsed tables with titles and row data.

Return type:

list[dict[str, list[dict[str, str]]]]

fvm.toolchains.questa_pkg.parsers.parse_formal_signoff.unified_format_table(table, goal=90.0)[source]

Convert the formal signoff table into the unified coverage table format.

This function reformats the columns of a coverage summary into a standard schema including fields like status, totals, covered values, and percentages. The goal parameter defines the pass/fail threshold.

Parameters:
  • table (dict) – Parsed coverage table.

  • goal (float, optional) – Coverage percentage required to mark a row as “pass”.

Returns:

Reformatted coverage data with unified schema.

Return type:

list[dict]