{% for test in suite.classes[classname].cases %}
| Test case: | {{test.name}} |
| Outcome: | {{test.outcome().title()}} |
| Duration: | {{test.duration|round(3)}} sec |
{% if test.failed() %}
| Failed | {{test.failure_msg}} |
{% endif %}
{% if test.skipped %}
| Skipped | {{test.skipped_msg}} |
{% endif %}
{% if test.failed() %}
{{test.failure}}
{% endif %}
{% if test.skipped %}
{{test.skipped}}
{% endif %}
{% if test.properties %}
{# Collect media properties for preview #}
{% set media_items = [] %}
{% for prop in test.properties %}
{% if prop.name.startswith("image_path-") or prop.name.startswith("video_path-") %}
{% set _ = media_items.append(prop) %}
{% endif %}
{% endfor %}
{# Display media preview if we have any media #}
{% if media_items %}
{% endif %}
{% for prop in test.properties %}
| {{prop.name}} | {{prop.value}} |
{#
the naming convention here is matching that of `record_generated_files` fixture in
sculptor/tests/integration/frontend/conftest.py
the special properties are recorded relative to the test root directory that is available
through the `file_access_url` injected here from `scripts/gitlab_ci/run_test.py`:
#}
{% if prop.name.startswith("test_results_path") %}
Browse All Artifacts |
{% elif prop.name.startswith("image_path-") %}
View Image |
{% elif prop.name.startswith("video_path-") %}
View Video |
{% elif prop.name.startswith("playwright_trace_path-") %}
Download Playwright Trace |
{% elif prop.name.startswith("directory_path-") %}
Browse Subdirectory |
{% else %}
|
{% endif %}
{% endfor %}
{% endif %}
{% if test.repro_command %}
Reproduction Command
{{test.repro_command}}
{% endif %}
{% if test.stdout or test.stdout_link %}
{% endif %}
{% if test.stderr or test.stderr_link %}
{% endif %}