{% extends "_base/class.html.jinja" %}
{% set anta_test = namespace(found=false) %}
{% set anta_test_input_model = namespace(found=false) %}
{% for base in class.bases %}
{% set basestr = base | string %}
{% if "AntaTest" == basestr %}
{% set anta_test.found = True %}
{% endif %}
{% endfor %}
{# TODO make this nicer #}
{% if class.parent.parent.name == "input_models" or class.parent.parent.parent.name == "input_models" %}
{% set anta_test_input_model.found = True %}
{% endif %}
{% block children %}
{% if anta_test.found %}
{% set root = False %}
{% set heading_level = heading_level + 1 %}
{% include "anta_test.html.jinja" with context %}
{# render source after children - TODO make add flag to respect disabling it.. though do we want to disable?#}
Source code in
{%- if class.relative_filepath.is_absolute() -%}
{{ class.relative_package_filepath }}
{%- else -%}
{{ class.relative_filepath }}
{%- endif -%}
{{ class.source|highlight(language="python", linestart=class.lineno, linenums=True) }}
{% elif anta_test_input_model.found %}
{% set root = False %}
{% set heading_level = heading_level + 1 %}
{% include "anta_test_input_model.html.jinja" with context %}
{# render source after children - TODO make add flag to respect disabling it.. though do we want to disable?#}
Source code in
{%- if class.relative_filepath.is_absolute() -%}
{{ class.relative_package_filepath }}
{%- else -%}
{{ class.relative_filepath }}
{%- endif -%}
{{ class.source|highlight(language="python", linestart=class.lineno, linenums=True) }}
{% else %}
{{ super() }}
{% endif %}
{% endblock children %}
{# Do not render source before children for AntaTest #}
{% block source %}
{% if not anta_test.found and not anta_test_input_model%}
{{ super() }}
{% endif %}
{% endblock source %}
{# overwrite block base to render some stuff on deprecation for anta_test #}
{% block bases %}
{{ super() }}
{% for dec in class.decorators %}
{% if dec.value.function.name == "deprecated_test_class" %}
{% for arg in dec.value.arguments | selectattr("name", "equalto", "removal_in_version") | list %}
{% endfor %}
{% for arg in dec.value.arguments | selectattr("name", "equalto", "new_tests") | list %}
Replaced with: {{ arg.value.elements | map("replace", "'", "", 1) | map("replace", "'", "
", 1) | join(", ") | safe }}
{% endfor %}
{% endif %}
{% endfor %}
{% endblock bases %}