{% set block = results.block %} {% set tool = results.tool %} {% set timestamp = results.timestamp %} {% set stages = results.stages %} {% set coverage = results.coverage %} {% set failed_jobs = results.failed_jobs %}
{% if breadcrumbs %} {% endif %}

Simulation Results: {{ block.name }}

 
{{ timestamp.strftime("%d/%m/%Y %H:%M:%S") }} sha: {{ block.commit[:7] }} json Branch: {{ block.branch }} Tool: {{ tool.name }} [{{ tool.version }}]
{% macro coverage_stat(cov, kind, label) %} {% if cov and cov|attr(kind) is not none %} {% set value = cov|attr(kind) %}
  • {{ label }}
  • {{ "%.2f"|format(value) }} %
{% endif %} {% endmacro %} {% if coverage %}
Coverage statistics
{{ coverage_stat(coverage, "average", "Total") }} {% set code = coverage.code %} {{ coverage_stat(code, "average", "code") }} {{ coverage_stat(coverage, "assertion", "assert") }} {{ coverage_stat(coverage, "functional", "func") }} {{ coverage_stat(code, "block", "block") }} {{ coverage_stat(code, "line_statement", "line") }} {{ coverage_stat(code, "branch", "branch") }} {{ coverage_stat(code, "condition_expression", "cond") }} {{ coverage_stat(code, "toggle", "toggle") }} {{ coverage_stat(code, "fsm", "FSM") }}
{% endif %}
Validation stages
{% for s_name, stage in stages.items() %} {% endfor %}
{{ s_name }}
{{ "%.2f" | format(stage.percent) }}%
{% for s_name, stage in stages.items() %}
{% for tp_name, tp in stage.testpoints.items() %} {% for t_name, t in tp.tests.items() %} {% endfor %} {% endfor %}
Testpoint Test Max Runtime Sim Time Pass Total %
{{ tp_name }} {{ tp.passed }} {{ tp.total }} {{ "%.2f" | format(tp.percent) }}
{{ t_name }} {{ "%.3f" | format(t.max_time) }}s {{ "%.3f" | format(t.sim_time) }}us {{ t.passed }} {{ t.total }} {{ "%.2f" | format(t.percent) }}
{% endfor %}

Error Messages

{% for msg, job_list in failed_jobs.buckets.items() %} {% for job in job_list %} {% endfor %} {% endfor %}
   Test seed line log context
{{ msg }}
{{ job.name }} {{ job.seed }} {{ job.line }} {% for line in job.log_context %}
{{ line }}
{% endfor %}