<?xml version="1.0" encoding="utf-8"?><testsuites name="pytest tests"><testsuite name="maas_billing" errors="0" failures="1" skipped="1" tests="10" time="610.633" timestamp="2026-07-07T05:17:13.211374+00:00" hostname="olminstall-od7534f5393a0b9da5edce5279408a1a900697e6f3cc72f5-pod"><testcase classname="tests.model_serving.maas_billing.body_base_routing.pre_auth_model_header.test_bbr_envoy_filter.TestBBREnvoyFilter" name="test_bbr_envoy_filter_has_pre_and_post_auth_stages" time="17.156"><failure message="AssertionError: EnvoyFilter 'payload-processing' missing post-auth stage 'envoy.filters.http.ext_proc.ipp' — found filters: ['envoy.filters.http.ext_proc.ipp-pre', 'envoy.filters.http.ext_proc.bbr']">Traceback (most recent call last):
  File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/_pytest/runner.py", line 361, in from_call
    result: TResult | None = func()
                             ~~~~^^
  File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/_pytest/runner.py", line 250, in &lt;lambda&gt;
    lambda: runtest_hook(item=item, **kwds),
            ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^
  File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_hooks.py", line 512, in __call__
    return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
           ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_manager.py", line 120, in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
           ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 167, in _multicall
    raise exception
  File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 139, in _multicall
    teardown.throw(exception)
    ~~~~~~~~~~~~~~^^^^^^^^^^^
  File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/_pytest/capture.py", line 900, in pytest_runtest_call
    return (yield)
            ^^^^^
  File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 139, in _multicall
    teardown.throw(exception)
    ~~~~~~~~~~~~~~^^^^^^^^^^^
  File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 53, in run_old_style_hookwrapper
    return result.get_result()
           ~~~~~~~~~~~~~~~~~^^
  File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_result.py", line 103, in get_result
    raise exc.with_traceback(tb)
  File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 38, in run_old_style_hookwrapper
    res = yield
          ^^^^^
  File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 139, in _multicall
    teardown.throw(exception)
    ~~~~~~~~~~~~~~^^^^^^^^^^^
  File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/_pytest/skipping.py", line 268, in pytest_runtest_call
    return (yield)
            ^^^^^
  File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 121, in _multicall
    res = hook_impl.function(*args)
  File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call
    item.runtest()
    ~~~~~~~~~~~~^^
  File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/_pytest/python.py", line 1707, in runtest
    self.ihook.pytest_pyfunc_call(pyfuncitem=self)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
  File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_hooks.py", line 512, in __call__
    return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
           ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_manager.py", line 120, in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
           ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 167, in _multicall
    raise exception
  File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 139, in _multicall
    teardown.throw(exception)
    ~~~~~~~~~~~~~~^^^^^^^^^^^
  File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 53, in run_old_style_hookwrapper
    return result.get_result()
           ~~~~~~~~~~~~~~~~~^^
  File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_result.py", line 103, in get_result
    raise exc.with_traceback(tb)
  File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 38, in run_old_style_hookwrapper
    res = yield
          ^^^^^
  File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 121, in _multicall
    res = hook_impl.function(*args)
  File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call
    result = testfunction(**testargs)
  File "/home/odh/opendatahub-tests/tests/model_serving/maas_billing/body_base_routing/pre_auth_model_header/test_bbr_envoy_filter.py", line 28, in test_bbr_envoy_filter_has_pre_and_post_auth_stages
    verify_bbr_envoy_filter_has_pre_and_post_auth_stages(
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
        config_patches=bbr_envoy_filter_config_patches,
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        gateway_namespace=bbr_gateway_namespace,
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/home/odh/opendatahub-tests/tests/model_serving/maas_billing/body_base_routing/pre_auth_model_header/utils.py", line 143, in verify_bbr_envoy_filter_has_pre_and_post_auth_stages
    assert BBR_POST_FILTER_NAME in filter_names, (
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: EnvoyFilter 'payload-processing' missing post-auth stage 'envoy.filters.http.ext_proc.ipp' — found filters: ['envoy.filters.http.ext_proc.ipp-pre', 'envoy.filters.http.ext_proc.bbr']</failure></testcase><testcase classname="tests.model_serving.maas_billing.body_base_routing.pre_auth_model_header.test_bbr_envoy_filter.TestBBREnvoyFilter" name="test_bbr_post_auth_processing_deployment_ready" time="0.056" /><testcase classname="tests.model_serving.maas_billing.body_base_routing.pre_auth_model_header.test_bbr_pre_auth_inference.TestBBRPreAuthInference" name="test_inference_model_in_body_only_returns_200[ocp_token_for_actor0]" time="267.226" /><testcase classname="tests.model_serving.maas_billing.body_base_routing.pre_auth_model_header.test_bbr_pre_auth_inference.TestBBRPreAuthInference" name="test_list_models_returns_200_with_api_key[ocp_token_for_actor0]" time="0.115" /><testcase classname="tests.model_serving.maas_billing.body_base_routing.pre_auth_model_header.test_bbr_pre_auth_inference.TestBBRPreAuthInference" name="test_maas_api_endpoint_not_broken_by_bbr[ocp_token_for_actor0]" time="40.146" /><testcase classname="tests.model_serving.maas_billing.body_base_routing.pre_auth_model_header.test_bbr_setup.TestBBRSetup" name="test_bbr_pre_processing_deployment_ready" time="0.049" /><testcase classname="tests.model_serving.maas_billing.body_base_routing.pre_auth_model_header.test_bbr_setup.TestBBRSetup" name="test_bbr_pre_processing_service_exposes_port_9004" time="0.024" /><testcase classname="tests.model_serving.maas_billing.body_base_routing.pre_auth_model_header.test_bbr_setup.TestBBRSetup" name="test_bbr_pre_processing_destination_rule_exists" time="0.013" /><testcase classname="tests.model_serving.maas_billing.maas_api_key.test_api_key_auth_policy_validation.TestAuthPolicyApiKeyValidation" name="test_auth_policy_callback_url_uses_correct_namespace" time="181.587" /><testcase classname="tests.model_serving.maas_billing.oidc_tests.test_oidc_token_flow.TestOIDCTokenFlow" name="test_oidc_token_creates_api_key" time="103.688"><skipped type="pytest.skip" message="External OIDC tests require a byoidc cluster">/home/odh/opendatahub-tests/tests/model_serving/maas_billing/oidc_tests/test_oidc_token_flow.py:29: External OIDC tests require a byoidc cluster</skipped></testcase></testsuite></testsuites>