From fd9f501749e1762d87c06022a02c338ad364a357 Mon Sep 17 00:00:00 2001
From: Marcel Telka <marcel@telka.sk>
Date: Tue, 09 Apr 2024 06:27:43 +0200
Subject: [PATCH] python/flask: update to 3.0.3

---
 components/python/flask/test/results-all.master |  677 ++++++++++++++++++++++++++++----------------------------
 1 files changed, 339 insertions(+), 338 deletions(-)

diff --git a/components/python/flask/test/results-all.master b/components/python/flask/test/results-all.master
index ad929df..ca575f4 100644
--- a/components/python/flask/test/results-all.master
+++ b/components/python/flask/test/results-all.master
@@ -1,301 +1,321 @@
 py$(PYV): remove tox env folder $(@D)/.tox/py$(PYV)
-py$(PYV): commands[0]> python -m pytest -v --tb=short --basetemp=$(@D)/.tox/tmp/py$(PYV) tests
+py$(PYV): commands[0]> python -m pytest -v --tb=short --basetemp=$(@D)/.tox/tmp/py$(PYV)
 ============================= test session starts ==============================
 platform sunos5 -- Python $(PYTHON_VERSION).X -- $(@D)/.tox/py$(PYV)/bin/python
 cachedir: .tox/py$(PYV)/.pytest_cache
 rootdir: $(@D)
 configfile: pyproject.toml
+testpaths: tests
 collecting ... collected 484 items
 
-in 3.11)
-tests/test_appctx.py::test_app_context_provides_current_app PASSED
-tests/test_appctx.py::test_app_ctx_globals_methods PASSED
-tests/test_appctx.py::test_app_tearing_down PASSED
-tests/test_appctx.py::test_app_tearing_down_with_handled_exception_by_app_handler PASSED
-tests/test_appctx.py::test_app_tearing_down_with_handled_exception_by_except_block PASSED
-tests/test_appctx.py::test_app_tearing_down_with_previous_exception PASSED
-tests/test_appctx.py::test_app_tearing_down_with_unhandled_exception PASSED
 tests/test_appctx.py::test_basic_url_generation PASSED
-tests/test_appctx.py::test_clean_pop PASSED
-tests/test_appctx.py::test_context_refcounts PASSED
-tests/test_appctx.py::test_custom_app_ctx_globals_class PASSED
-tests/test_appctx.py::test_request_context_means_app_context PASSED
 tests/test_appctx.py::test_url_generation_requires_server_name PASSED
 tests/test_appctx.py::test_url_generation_without_context_fails PASSED
-tests/test_async.py::test_async_before_after_request PASSED
-tests/test_async.py::test_async_error_handler[/bp/error] PASSED
-tests/test_async.py::test_async_error_handler[/error] PASSED
+tests/test_appctx.py::test_request_context_means_app_context PASSED
+tests/test_appctx.py::test_app_context_provides_current_app PASSED
+tests/test_appctx.py::test_app_tearing_down PASSED
+tests/test_appctx.py::test_app_tearing_down_with_previous_exception PASSED
+tests/test_appctx.py::test_app_tearing_down_with_handled_exception_by_except_block PASSED
+tests/test_appctx.py::test_app_tearing_down_with_handled_exception_by_app_handler PASSED
+tests/test_appctx.py::test_app_tearing_down_with_unhandled_exception PASSED
+tests/test_appctx.py::test_app_ctx_globals_methods PASSED
+tests/test_appctx.py::test_custom_app_ctx_globals_class PASSED
+tests/test_appctx.py::test_context_refcounts PASSED
+tests/test_appctx.py::test_clean_pop PASSED
 tests/test_async.py::test_async_route[/] PASSED
-tests/test_async.py::test_async_route[/bp/] PASSED
 tests/test_async.py::test_async_route[/home] PASSED
-tests/test_async.py::test_async_route[/methodview] PASSED
+tests/test_async.py::test_async_route[/bp/] PASSED
 tests/test_async.py::test_async_route[/view] PASSED
-tests/test_basic.py::test_after_request_processing PASSED
-tests/test_basic.py::test_app_freed_on_zero_refcount PASSED
-tests/test_basic.py::test_baseexception_error_handling PASSED
-tests/test_basic.py::test_before_after_request_order PASSED
-tests/test_basic.py::test_before_request_and_routing_errors PASSED
-tests/test_basic.py::test_build_error_handler PASSED
-tests/test_basic.py::test_build_error_handler_reraise PASSED
-tests/test_basic.py::test_disallow_string_for_allowed_methods PASSED
-tests/test_basic.py::test_enctype_debug_helper PASSED
-tests/test_basic.py::test_endpoint_decorator PASSED
-tests/test_basic.py::test_error_handler_after_processor_error PASSED
-tests/test_basic.py::test_error_handling PASSED
-tests/test_basic.py::test_error_handling_processing PASSED
-tests/test_basic.py::test_errorhandler_precedence PASSED
-tests/test_basic.py::test_exception_propagation[DEBUG] PASSED
-tests/test_basic.py::test_exception_propagation[None] PASSED
-tests/test_basic.py::test_exception_propagation[PROPAGATE_EXCEPTIONS] PASSED
-tests/test_basic.py::test_exception_propagation[TESTING] PASSED
-tests/test_basic.py::test_extended_flashing PASSED
-tests/test_basic.py::test_flashes PASSED
-tests/test_basic.py::test_g_iteration_protocol PASSED
-tests/test_basic.py::test_get_method_on_g PASSED
-tests/test_basic.py::test_http_error_subclass_handling PASSED
-tests/test_basic.py::test_inject_blueprint_url_defaults PASSED
-tests/test_basic.py::test_json_dump_dataclass PASSED
-tests/test_basic.py::test_jsonify_args_and_kwargs_check PASSED
-tests/test_basic.py::test_jsonify_mimetype PASSED
-tests/test_basic.py::test_jsonify_no_prettyprint[False] PASSED
-tests/test_basic.py::test_jsonify_no_prettyprint[True] PASSED
-tests/test_basic.py::test_make_response PASSED
-tests/test_basic.py::test_make_response_with_response_instance PASSED
-tests/test_basic.py::test_max_content_length PASSED
-tests/test_basic.py::test_max_cookie_size PASSED
-tests/test_basic.py::test_method_route[delete] PASSED
+tests/test_async.py::test_async_route[/methodview] PASSED
+tests/test_async.py::test_async_error_handler[/error] PASSED
+tests/test_async.py::test_async_error_handler[/bp/error] PASSED
+tests/test_async.py::test_async_before_after_request PASSED
+tests/test_basic.py::test_options_work PASSED
+tests/test_basic.py::test_options_on_multiple_rules PASSED
 tests/test_basic.py::test_method_route[get] PASSED
-tests/test_basic.py::test_method_route[patch] PASSED
 tests/test_basic.py::test_method_route[post] PASSED
 tests/test_basic.py::test_method_route[put] PASSED
+tests/test_basic.py::test_method_route[delete] PASSED
+tests/test_basic.py::test_method_route[patch] PASSED
 tests/test_basic.py::test_method_route_no_methods PASSED
-tests/test_basic.py::test_missing_session PASSED
-tests/test_basic.py::test_multi_route_class_views PASSED
-tests/test_basic.py::test_multi_route_rules PASSED
-tests/test_basic.py::test_no_setup_after_first_request PASSED
-tests/test_basic.py::test_nonascii_pathinfo PASSED
-tests/test_basic.py::test_options_on_multiple_rules PASSED
-tests/test_basic.py::test_options_work PASSED
 tests/test_basic.py::test_provide_automatic_options_attr PASSED
 tests/test_basic.py::test_provide_automatic_options_kwarg PASSED
 tests/test_basic.py::test_request_dispatching PASSED
-tests/test_basic.py::test_request_locals PASSED
-tests/test_basic.py::test_request_preprocessing_early_return PASSED
-tests/test_basic.py::test_request_processing PASSED
-tests/test_basic.py::test_response_type_errors PASSED
-tests/test_basic.py::test_response_types PASSED
-tests/test_basic.py::test_route_decorator_custom_endpoint PASSED
-tests/test_basic.py::test_routing_redirect_debugging PASSED
-tests/test_basic.py::test_run_defaults PASSED
-tests/test_basic.py::test_run_from_config[None-80-pocoo.org:8080-pocoo.org-80] PASSED
-tests/test_basic.py::test_run_from_config[None-None-localhost:0-localhost-0] PASSED
-tests/test_basic.py::test_run_from_config[None-None-localhost:8080-localhost-8080] PASSED
-tests/test_basic.py::test_run_from_config[None-None-pocoo.org:8080-pocoo.org-8080] PASSED
-tests/test_basic.py::test_run_from_config[localhost-0-localhost:8080-localhost-0] PASSED
-tests/test_basic.py::test_run_from_config[localhost-80-pocoo.org:8080-localhost-80] PASSED
-tests/test_basic.py::test_run_from_config[localhost-None-pocoo.org:8080-localhost-8080] PASSED
-tests/test_basic.py::test_run_server_port PASSED
-tests/test_basic.py::test_server_name_subdomain PASSED
+tests/test_basic.py::test_disallow_string_for_allowed_methods PASSED
+tests/test_basic.py::test_url_mapping PASSED
+tests/test_basic.py::test_werkzeug_routing PASSED
+tests/test_basic.py::test_endpoint_decorator PASSED
 tests/test_basic.py::test_session PASSED
-tests/test_basic.py::test_session_cookie_setting PASSED
-tests/test_basic.py::test_session_expiration PASSED
 tests/test_basic.py::test_session_path PASSED
-tests/test_basic.py::test_session_refresh_vary PASSED
-tests/test_basic.py::test_session_special_types PASSED
-tests/test_basic.py::test_session_stored_last PASSED
 tests/test_basic.py::test_session_using_application_root PASSED
-tests/test_basic.py::test_session_using_samesite_attribute PASSED
 tests/test_basic.py::test_session_using_session_settings PASSED
+tests/test_basic.py::test_session_using_samesite_attribute PASSED
+tests/test_basic.py::test_missing_session PASSED
+tests/test_basic.py::test_session_expiration PASSED
+tests/test_basic.py::test_session_stored_last PASSED
+tests/test_basic.py::test_session_special_types PASSED
+tests/test_basic.py::test_session_cookie_setting PASSED
 tests/test_basic.py::test_session_vary_cookie PASSED
-tests/test_basic.py::test_static_files PASSED
-tests/test_basic.py::test_static_folder_with_ending_slash PASSED
-tests/test_basic.py::test_static_folder_with_pathlib_path PASSED
-tests/test_basic.py::test_static_route_with_host_matching PASSED
-tests/test_basic.py::test_static_url_empty_path PASSED
-tests/test_basic.py::test_static_url_empty_path_default PASSED
-tests/test_basic.py::test_static_url_path PASSED
-tests/test_basic.py::test_static_url_path_with_ending_slash PASSED
-tests/test_basic.py::test_subdomain_basic_support PASSED
-tests/test_basic.py::test_subdomain_matching PASSED
-tests/test_basic.py::test_subdomain_matching_other_name[False] PASSED
-tests/test_basic.py::test_subdomain_matching_other_name[True] PASSED
-tests/test_basic.py::test_subdomain_matching_with_ports PASSED
+tests/test_basic.py::test_session_refresh_vary PASSED
+tests/test_basic.py::test_flashes PASSED
+tests/test_basic.py::test_extended_flashing PASSED
+tests/test_basic.py::test_request_processing PASSED
+tests/test_basic.py::test_request_preprocessing_early_return PASSED
+tests/test_basic.py::test_after_request_processing PASSED
 tests/test_basic.py::test_teardown_request_handler PASSED
 tests/test_basic.py::test_teardown_request_handler_debug_mode PASSED
 tests/test_basic.py::test_teardown_request_handler_error PASSED
-tests/test_basic.py::test_trap_bad_request_key_error[False-None-True-True] PASSED
-tests/test_basic.py::test_trap_bad_request_key_error[False-True-False-False] PASSED
-tests/test_basic.py::test_trap_bad_request_key_error[True-None-False-True] PASSED
-tests/test_basic.py::test_trapping_of_all_http_exceptions PASSED
-tests/test_basic.py::test_url_for_passes_special_values_to_build_error_handler PASSED
-tests/test_basic.py::test_url_generation PASSED
-tests/test_basic.py::test_url_mapping PASSED
-tests/test_basic.py::test_url_processors PASSED
+tests/test_basic.py::test_before_after_request_order PASSED
+tests/test_basic.py::test_error_handling PASSED
+tests/test_basic.py::test_error_handling_processing PASSED
+tests/test_basic.py::test_baseexception_error_handling PASSED
+tests/test_basic.py::test_before_request_and_routing_errors PASSED
 tests/test_basic.py::test_user_error_handling PASSED
-tests/test_basic.py::test_werkzeug_passthrough_errors[False-False-False-False] PASSED
-tests/test_basic.py::test_werkzeug_passthrough_errors[False-False-False-True] PASSED
-tests/test_basic.py::test_werkzeug_passthrough_errors[False-False-True-False] PASSED
-tests/test_basic.py::test_werkzeug_passthrough_errors[False-False-True-True] PASSED
-tests/test_basic.py::test_werkzeug_passthrough_errors[False-True-False-False] PASSED
-tests/test_basic.py::test_werkzeug_passthrough_errors[False-True-False-True] PASSED
-tests/test_basic.py::test_werkzeug_passthrough_errors[False-True-True-False] PASSED
-tests/test_basic.py::test_werkzeug_passthrough_errors[False-True-True-True] PASSED
-tests/test_basic.py::test_werkzeug_passthrough_errors[None-False-False-False] PASSED
-tests/test_basic.py::test_werkzeug_passthrough_errors[None-False-False-True] PASSED
-tests/test_basic.py::test_werkzeug_passthrough_errors[None-False-True-False] PASSED
-tests/test_basic.py::test_werkzeug_passthrough_errors[None-False-True-True] PASSED
-tests/test_basic.py::test_werkzeug_passthrough_errors[None-True-False-False] PASSED
-tests/test_basic.py::test_werkzeug_passthrough_errors[None-True-False-True] PASSED
-tests/test_basic.py::test_werkzeug_passthrough_errors[None-True-True-False] PASSED
+tests/test_basic.py::test_http_error_subclass_handling PASSED
+tests/test_basic.py::test_errorhandler_precedence PASSED
+tests/test_basic.py::test_trap_bad_request_key_error[False-None-True-True] PASSED
+tests/test_basic.py::test_trap_bad_request_key_error[True-None-False-True] PASSED
+tests/test_basic.py::test_trap_bad_request_key_error[False-True-False-False] PASSED
+tests/test_basic.py::test_trapping_of_all_http_exceptions PASSED
+tests/test_basic.py::test_error_handler_after_processor_error PASSED
+tests/test_basic.py::test_enctype_debug_helper PASSED
+tests/test_basic.py::test_response_types PASSED
+tests/test_basic.py::test_response_type_errors PASSED
+tests/test_basic.py::test_make_response PASSED
+tests/test_basic.py::test_make_response_with_response_instance PASSED
+tests/test_basic.py::test_jsonify_no_prettyprint[True] PASSED
+tests/test_basic.py::test_jsonify_no_prettyprint[False] PASSED
+tests/test_basic.py::test_jsonify_mimetype PASSED
+tests/test_basic.py::test_json_dump_dataclass PASSED
+tests/test_basic.py::test_jsonify_args_and_kwargs_check PASSED
+tests/test_basic.py::test_url_generation PASSED
+tests/test_basic.py::test_build_error_handler PASSED
+tests/test_basic.py::test_build_error_handler_reraise PASSED
+tests/test_basic.py::test_url_for_passes_special_values_to_build_error_handler PASSED
+tests/test_basic.py::test_static_files PASSED
+tests/test_basic.py::test_static_url_path PASSED
+tests/test_basic.py::test_static_url_path_with_ending_slash PASSED
+tests/test_basic.py::test_static_url_empty_path PASSED
+tests/test_basic.py::test_static_url_empty_path_default PASSED
+tests/test_basic.py::test_static_folder_with_pathlib_path PASSED
+tests/test_basic.py::test_static_folder_with_ending_slash PASSED
+tests/test_basic.py::test_static_route_with_host_matching PASSED
+tests/test_basic.py::test_request_locals PASSED
+tests/test_basic.py::test_server_name_subdomain PASSED
+tests/test_basic.py::test_exception_propagation[TESTING] PASSED
+tests/test_basic.py::test_exception_propagation[PROPAGATE_EXCEPTIONS] PASSED
+tests/test_basic.py::test_exception_propagation[DEBUG] PASSED
+tests/test_basic.py::test_exception_propagation[None] PASSED
 tests/test_basic.py::test_werkzeug_passthrough_errors[None-True-True-True] PASSED
-tests/test_basic.py::test_werkzeug_passthrough_errors[True-False-False-False] PASSED
-tests/test_basic.py::test_werkzeug_passthrough_errors[True-False-False-True] PASSED
-tests/test_basic.py::test_werkzeug_passthrough_errors[True-False-True-False] PASSED
-tests/test_basic.py::test_werkzeug_passthrough_errors[True-False-True-True] PASSED
-tests/test_basic.py::test_werkzeug_passthrough_errors[True-True-False-False] PASSED
-tests/test_basic.py::test_werkzeug_passthrough_errors[True-True-False-True] PASSED
-tests/test_basic.py::test_werkzeug_passthrough_errors[True-True-True-False] PASSED
+tests/test_basic.py::test_werkzeug_passthrough_errors[None-True-True-False] PASSED
+tests/test_basic.py::test_werkzeug_passthrough_errors[None-True-False-True] PASSED
+tests/test_basic.py::test_werkzeug_passthrough_errors[None-True-False-False] PASSED
+tests/test_basic.py::test_werkzeug_passthrough_errors[None-False-True-True] PASSED
+tests/test_basic.py::test_werkzeug_passthrough_errors[None-False-True-False] PASSED
+tests/test_basic.py::test_werkzeug_passthrough_errors[None-False-False-True] PASSED
+tests/test_basic.py::test_werkzeug_passthrough_errors[None-False-False-False] PASSED
 tests/test_basic.py::test_werkzeug_passthrough_errors[True-True-True-True] PASSED
-tests/test_basic.py::test_werkzeug_routing PASSED
-tests/test_blueprints.py::test_add_template_filter PASSED
-tests/test_blueprints.py::test_add_template_filter_with_name PASSED
-tests/test_blueprints.py::test_add_template_filter_with_name_and_template PASSED
-tests/test_blueprints.py::test_add_template_filter_with_template PASSED
-tests/test_blueprints.py::test_add_template_test PASSED
-tests/test_blueprints.py::test_add_template_test_with_name PASSED
-tests/test_blueprints.py::test_add_template_test_with_name_and_template PASSED
-tests/test_blueprints.py::test_add_template_test_with_template PASSED
-tests/test_blueprints.py::test_app_request_processing PASSED
-tests/test_blueprints.py::test_app_url_processors PASSED
+tests/test_basic.py::test_werkzeug_passthrough_errors[True-True-True-False] PASSED
+tests/test_basic.py::test_werkzeug_passthrough_errors[True-True-False-True] PASSED
+tests/test_basic.py::test_werkzeug_passthrough_errors[True-True-False-False] PASSED
+tests/test_basic.py::test_werkzeug_passthrough_errors[True-False-True-True] PASSED
+tests/test_basic.py::test_werkzeug_passthrough_errors[True-False-True-False] PASSED
+tests/test_basic.py::test_werkzeug_passthrough_errors[True-False-False-True] PASSED
+tests/test_basic.py::test_werkzeug_passthrough_errors[True-False-False-False] PASSED
+tests/test_basic.py::test_werkzeug_passthrough_errors[False-True-True-True] PASSED
+tests/test_basic.py::test_werkzeug_passthrough_errors[False-True-True-False] PASSED
+tests/test_basic.py::test_werkzeug_passthrough_errors[False-True-False-True] PASSED
+tests/test_basic.py::test_werkzeug_passthrough_errors[False-True-False-False] PASSED
+tests/test_basic.py::test_werkzeug_passthrough_errors[False-False-True-True] PASSED
+tests/test_basic.py::test_werkzeug_passthrough_errors[False-False-True-False] PASSED
+tests/test_basic.py::test_werkzeug_passthrough_errors[False-False-False-True] PASSED
+tests/test_basic.py::test_werkzeug_passthrough_errors[False-False-False-False] PASSED
+tests/test_basic.py::test_max_content_length PASSED
+tests/test_basic.py::test_url_processors PASSED
+tests/test_basic.py::test_inject_blueprint_url_defaults PASSED
+tests/test_basic.py::test_nonascii_pathinfo PASSED
+tests/test_basic.py::test_no_setup_after_first_request PASSED
+tests/test_basic.py::test_routing_redirect_debugging PASSED
+tests/test_basic.py::test_route_decorator_custom_endpoint PASSED
+tests/test_basic.py::test_get_method_on_g PASSED
+tests/test_basic.py::test_g_iteration_protocol PASSED
+tests/test_basic.py::test_subdomain_basic_support PASSED
+tests/test_basic.py::test_subdomain_matching PASSED
+tests/test_basic.py::test_subdomain_matching_with_ports PASSED
+tests/test_basic.py::test_subdomain_matching_other_name[False] PASSED
+tests/test_basic.py::test_subdomain_matching_other_name[True] PASSED
+tests/test_basic.py::test_multi_route_rules PASSED
+tests/test_basic.py::test_multi_route_class_views PASSED
+tests/test_basic.py::test_run_defaults PASSED
+tests/test_basic.py::test_run_server_port PASSED
+tests/test_basic.py::test_run_from_config[None-None-pocoo.org:8080-pocoo.org-8080] PASSED
+tests/test_basic.py::test_run_from_config[localhost-None-pocoo.org:8080-localhost-8080] PASSED
+tests/test_basic.py::test_run_from_config[None-80-pocoo.org:8080-pocoo.org-80] PASSED
+tests/test_basic.py::test_run_from_config[localhost-80-pocoo.org:8080-localhost-80] PASSED
+tests/test_basic.py::test_run_from_config[localhost-0-localhost:8080-localhost-0] PASSED
+tests/test_basic.py::test_run_from_config[None-None-localhost:8080-localhost-8080] PASSED
+tests/test_basic.py::test_run_from_config[None-None-localhost:0-localhost-0] PASSED
+tests/test_basic.py::test_max_cookie_size PASSED
+tests/test_basic.py::test_app_freed_on_zero_refcount PASSED
+tests/test_blueprints.py::test_blueprint_specific_error_handling PASSED
+tests/test_blueprints.py::test_blueprint_specific_user_error_handling PASSED
 tests/test_blueprints.py::test_blueprint_app_error_handling PASSED
 tests/test_blueprints.py::test_blueprint_prefix_slash[-/-/] PASSED
-tests/test_blueprints.py::test_blueprint_prefix_slash[-/bar-/bar] PASSED
 tests/test_blueprints.py::test_blueprint_prefix_slash[/--/] PASSED
 tests/test_blueprints.py::test_blueprint_prefix_slash[/-/-/] PASSED
 tests/test_blueprints.py::test_blueprint_prefix_slash[/foo--/foo] PASSED
-tests/test_blueprints.py::test_blueprint_prefix_slash[/foo-/bar-/foo/bar] PASSED
 tests/test_blueprints.py::test_blueprint_prefix_slash[/foo/--/foo/] PASSED
-tests/test_blueprints.py::test_blueprint_prefix_slash[/foo/-//bar-/foo/bar] PASSED
+tests/test_blueprints.py::test_blueprint_prefix_slash[-/bar-/bar] PASSED
 tests/test_blueprints.py::test_blueprint_prefix_slash[/foo/-/bar-/foo/bar] PASSED
 tests/test_blueprints.py::test_blueprint_prefix_slash[/foo/-bar-/foo/bar] PASSED
+tests/test_blueprints.py::test_blueprint_prefix_slash[/foo-/bar-/foo/bar] PASSED
+tests/test_blueprints.py::test_blueprint_prefix_slash[/foo/-//bar-/foo/bar] PASSED
 tests/test_blueprints.py::test_blueprint_prefix_slash[/foo//-/bar-/foo/bar] PASSED
-tests/test_blueprints.py::test_blueprint_renaming PASSED
-tests/test_blueprints.py::test_blueprint_specific_error_handling PASSED
-tests/test_blueprints.py::test_blueprint_specific_user_error_handling PASSED
 tests/test_blueprints.py::test_blueprint_url_defaults PASSED
 tests/test_blueprints.py::test_blueprint_url_processors PASSED
-tests/test_blueprints.py::test_child_and_parent_subdomain PASSED
-tests/test_blueprints.py::test_context_processing PASSED
+tests/test_blueprints.py::test_templates_and_static PASSED
 tests/test_blueprints.py::test_default_static_max_age PASSED
+tests/test_blueprints.py::test_templates_list PASSED
 tests/test_blueprints.py::test_dotted_name_not_allowed PASSED
-tests/test_blueprints.py::test_dotted_names_from_app PASSED
 tests/test_blueprints.py::test_empty_name_not_allowed PASSED
+tests/test_blueprints.py::test_dotted_names_from_app PASSED
 tests/test_blueprints.py::test_empty_url_defaults PASSED
+tests/test_blueprints.py::test_route_decorator_custom_endpoint PASSED
+tests/test_blueprints.py::test_route_decorator_custom_endpoint_with_dots PASSED
 tests/test_blueprints.py::test_endpoint_decorator PASSED
+tests/test_blueprints.py::test_template_filter PASSED
+tests/test_blueprints.py::test_add_template_filter PASSED
+tests/test_blueprints.py::test_template_filter_with_name PASSED
+tests/test_blueprints.py::test_add_template_filter_with_name PASSED
+tests/test_blueprints.py::test_template_filter_with_template PASSED
+tests/test_blueprints.py::test_template_filter_after_route_with_template PASSED
+tests/test_blueprints.py::test_add_template_filter_with_template PASSED
+tests/test_blueprints.py::test_template_filter_with_name_and_template PASSED
+tests/test_blueprints.py::test_add_template_filter_with_name_and_template PASSED
+tests/test_blueprints.py::test_template_test PASSED
+tests/test_blueprints.py::test_add_template_test PASSED
+tests/test_blueprints.py::test_template_test_with_name PASSED
+tests/test_blueprints.py::test_add_template_test_with_name PASSED
+tests/test_blueprints.py::test_template_test_with_template PASSED
+tests/test_blueprints.py::test_template_test_after_route_with_template PASSED
+tests/test_blueprints.py::test_add_template_test_with_template PASSED
+tests/test_blueprints.py::test_template_test_with_name_and_template PASSED
+tests/test_blueprints.py::test_add_template_test_with_name_and_template PASSED
+tests/test_blueprints.py::test_context_processing PASSED
+tests/test_blueprints.py::test_template_global PASSED
+tests/test_blueprints.py::test_request_processing PASSED
+tests/test_blueprints.py::test_app_request_processing PASSED
+tests/test_blueprints.py::test_app_url_processors PASSED
 tests/test_blueprints.py::test_nested_blueprint PASSED
 tests/test_blueprints.py::test_nested_callback_order PASSED
-tests/test_blueprints.py::test_nesting_subdomains PASSED
-tests/test_blueprints.py::test_nesting_url_prefixes[/other-/something-/parent-/child] PASSED
 tests/test_blueprints.py::test_nesting_url_prefixes[/parent-/child-None-None] PASSED
 tests/test_blueprints.py::test_nesting_url_prefixes[/parent-None-None-/child] PASSED
 tests/test_blueprints.py::test_nesting_url_prefixes[None-None-/parent-/child] PASSED
-tests/test_blueprints.py::test_request_processing PASSED
-tests/test_blueprints.py::test_route_decorator_custom_endpoint PASSED
-tests/test_blueprints.py::test_route_decorator_custom_endpoint_with_dots PASSED
-tests/test_blueprints.py::test_self_registration PASSED
-tests/test_blueprints.py::test_template_filter PASSED
-tests/test_blueprints.py::test_template_filter_after_route_with_template PASSED
-tests/test_blueprints.py::test_template_filter_with_name PASSED
-tests/test_blueprints.py::test_template_filter_with_name_and_template PASSED
-tests/test_blueprints.py::test_template_filter_with_template PASSED
-tests/test_blueprints.py::test_template_global PASSED
-tests/test_blueprints.py::test_template_test PASSED
-tests/test_blueprints.py::test_template_test_after_route_with_template PASSED
-tests/test_blueprints.py::test_template_test_with_name PASSED
-tests/test_blueprints.py::test_template_test_with_name_and_template PASSED
-tests/test_blueprints.py::test_template_test_with_template PASSED
-tests/test_blueprints.py::test_templates_and_static PASSED
-tests/test_blueprints.py::test_templates_list PASSED
+tests/test_blueprints.py::test_nesting_url_prefixes[/other-/something-/parent-/child] PASSED
+tests/test_blueprints.py::test_nesting_subdomains PASSED
+tests/test_blueprints.py::test_child_and_parent_subdomain PASSED
 tests/test_blueprints.py::test_unique_blueprint_names PASSED
-tests/test_cli.py::TestRoutes::test_all_methods PASSED
-tests/test_cli.py::TestRoutes::test_host PASSED
-tests/test_cli.py::TestRoutes::test_no_routes PASSED
-tests/test_cli.py::TestRoutes::test_simple PASSED
-tests/test_cli.py::TestRoutes::test_sort PASSED
-tests/test_cli.py::TestRoutes::test_subdomain PASSED
-tests/test_cli.py::test_app_cli_has_app_context PASSED
-tests/test_cli.py::test_appgroup_app_context PASSED
-tests/test_cli.py::test_cli_blueprints PASSED
-tests/test_cli.py::test_cli_empty PASSED
+tests/test_blueprints.py::test_self_registration PASSED
+tests/test_blueprints.py::test_blueprint_renaming PASSED
 tests/test_cli.py::test_cli_name PASSED
-tests/test_cli.py::test_disable_dotenv_from_env PASSED
-tests/test_cli.py::test_dotenv_optional PASSED
-tests/test_cli.py::test_dotenv_path PASSED
 tests/test_cli.py::test_find_best_app PASSED
-tests/test_cli.py::test_flaskgroup_app_context PASSED
-tests/test_cli.py::test_flaskgroup_debug[False] PASSED
-tests/test_cli.py::test_flaskgroup_debug[True] PASSED
-tests/test_cli.py::test_flaskgroup_nested PASSED
-tests/test_cli.py::test_get_version PASSED
-tests/test_cli.py::test_help_echo_exception PASSED
-tests/test_cli.py::test_help_echo_loading_error PASSED
-tests/test_cli.py::test_load_dotenv PASSED
+tests/test_cli.py::test_prepare_import[test-path0-test] PASSED
+tests/test_cli.py::test_prepare_import[test.py-path1-test] PASSED
+tests/test_cli.py::test_prepare_import[a/test-path2-test] PASSED
+tests/test_cli.py::test_prepare_import[test/__init__.py-path3-test] PASSED
+tests/test_cli.py::test_prepare_import[test/__init__-path4-test] PASSED
+tests/test_cli.py::test_prepare_import[value5-path5-cliapp.inner1] PASSED
+tests/test_cli.py::test_prepare_import[value6-path6-cliapp.inner1.inner2] PASSED
+tests/test_cli.py::test_prepare_import[test.a.b-path7-test.a.b] PASSED
+tests/test_cli.py::test_prepare_import[value8-path8-cliapp.app] PASSED
+tests/test_cli.py::test_prepare_import[value9-path9-cliapp.message.txt] PASSED
 tests/test_cli.py::test_locate_app[cliapp.app-None-testapp] PASSED
 tests/test_cli.py::test_locate_app[cliapp.app-testapp-testapp] PASSED
-tests/test_cli.py::test_locate_app[cliapp.factory- create_app () -app] PASSED
 tests/test_cli.py::test_locate_app[cliapp.factory-None-app] PASSED
-tests/test_cli.py::test_locate_app[cliapp.factory-create_app()-app] PASSED
 tests/test_cli.py::test_locate_app[cliapp.factory-create_app-app] PASSED
+tests/test_cli.py::test_locate_app[cliapp.factory-create_app()-app] PASSED
 tests/test_cli.py::test_locate_app[cliapp.factory-create_app2("foo", "bar")-app2_foo_bar] PASSED
 tests/test_cli.py::test_locate_app[cliapp.factory-create_app2("foo", "bar", )-app2_foo_bar] PASSED
+tests/test_cli.py::test_locate_app[cliapp.factory- create_app () -app] PASSED
+tests/test_cli.py::test_locate_app_raises[notanapp.py-None] PASSED
+tests/test_cli.py::test_locate_app_raises[cliapp/app-None] PASSED
 tests/test_cli.py::test_locate_app_raises[cliapp.app-notanapp] PASSED
-tests/test_cli.py::test_locate_app_raises[cliapp.factory-create_app(] PASSED
 tests/test_cli.py::test_locate_app_raises[cliapp.factory-create_app2("foo")] PASSED
+tests/test_cli.py::test_locate_app_raises[cliapp.factory-create_app(] PASSED
 tests/test_cli.py::test_locate_app_raises[cliapp.factory-no_app] PASSED
 tests/test_cli.py::test_locate_app_raises[cliapp.importerrorapp-None] PASSED
 tests/test_cli.py::test_locate_app_raises[cliapp.message.txt-None] PASSED
-tests/test_cli.py::test_locate_app_raises[cliapp/app-None] PASSED
-tests/test_cli.py::test_locate_app_raises[notanapp.py-None] PASSED
 tests/test_cli.py::test_locate_app_suppress_raise PASSED
+tests/test_cli.py::test_get_version PASSED
+tests/test_cli.py::test_scriptinfo PASSED
+tests/test_cli.py::test_app_cli_has_app_context PASSED
+tests/test_cli.py::test_with_appcontext PASSED
+tests/test_cli.py::test_appgroup_app_context PASSED
+tests/test_cli.py::test_flaskgroup_app_context PASSED
+tests/test_cli.py::test_flaskgroup_debug[True] PASSED
+tests/test_cli.py::test_flaskgroup_debug[False] PASSED
+tests/test_cli.py::test_flaskgroup_nested PASSED
 tests/test_cli.py::test_no_command_echo_loading_error PASSED
-tests/test_cli.py::test_prepare_import[a/test-path2-test] PASSED
-tests/test_cli.py::test_prepare_import[test-path0-test] PASSED
-tests/test_cli.py::test_prepare_import[test.a.b-path7-test.a.b] PASSED
-tests/test_cli.py::test_prepare_import[test.py-path1-test] PASSED
-tests/test_cli.py::test_prepare_import[test/__init__-path4-test] PASSED
-tests/test_cli.py::test_prepare_import[test/__init__.py-path3-test] PASSED
-tests/test_cli.py::test_prepare_import[value5-path5-cliapp.inner1] PASSED
-tests/test_cli.py::test_prepare_import[value6-path6-cliapp.inner1.inner2] PASSED
-tests/test_cli.py::test_prepare_import[value8-path8-cliapp.app] PASSED
-tests/test_cli.py::test_prepare_import[value9-path9-cliapp.message.txt] PASSED
+tests/test_cli.py::test_help_echo_loading_error PASSED
+tests/test_cli.py::test_help_echo_exception PASSED
+tests/test_cli.py::TestRoutes::test_simple PASSED
+tests/test_cli.py::TestRoutes::test_sort PASSED
+tests/test_cli.py::TestRoutes::test_all_methods PASSED
+tests/test_cli.py::TestRoutes::test_no_routes PASSED
+tests/test_cli.py::TestRoutes::test_subdomain PASSED
+tests/test_cli.py::TestRoutes::test_host PASSED
+tests/test_cli.py::test_load_dotenv PASSED
+tests/test_cli.py::test_dotenv_path PASSED
+tests/test_cli.py::test_dotenv_optional PASSED
+tests/test_cli.py::test_disable_dotenv_from_env PASSED
+tests/test_cli.py::test_run_cert_path PASSED
 tests/test_cli.py::test_run_cert_adhoc PASSED
 tests/test_cli.py::test_run_cert_import PASSED
 tests/test_cli.py::test_run_cert_no_ssl PASSED
-tests/test_cli.py::test_run_cert_path PASSED
+tests/test_cli.py::test_cli_blueprints PASSED
+tests/test_cli.py::test_cli_empty PASSED
 tests/test_cli.py::test_run_exclude_patterns PASSED
-tests/test_cli.py::test_scriptinfo PASSED
-tests/test_cli.py::test_with_appcontext PASSED
-tests/test_config.py::test_config_from_class PASSED
-tests/test_config.py::test_config_from_envvar PASSED
-tests/test_config.py::test_config_from_envvar_missing PASSED
+tests/test_config.py::test_config_from_pyfile PASSED
+tests/test_config.py::test_config_from_object PASSED
 tests/test_config.py::test_config_from_file_json PASSED
 tests/test_config.py::test_config_from_file_toml SKIPPED (tomllib added
-tests/test_config.py::test_config_from_mapping PASSED
-tests/test_config.py::test_config_from_object PASSED
-tests/test_config.py::test_config_from_pyfile PASSED
-tests/test_config.py::test_config_missing PASSED
-tests/test_config.py::test_config_missing_file PASSED
-tests/test_config.py::test_custom_config_class PASSED
+in 3.11)
 tests/test_config.py::test_from_prefixed_env PASSED
 tests/test_config.py::test_from_prefixed_env_custom_prefix PASSED
 tests/test_config.py::test_from_prefixed_env_nested PASSED
+tests/test_config.py::test_config_from_mapping PASSED
+tests/test_config.py::test_config_from_class PASSED
+tests/test_config.py::test_config_from_envvar PASSED
+tests/test_config.py::test_config_from_envvar_missing PASSED
+tests/test_config.py::test_config_missing PASSED
+tests/test_config.py::test_config_missing_file PASSED
+tests/test_config.py::test_custom_config_class PASSED
+tests/test_config.py::test_session_lifetime PASSED
+tests/test_config.py::test_get_namespace PASSED
+tests/test_config.py::test_from_pyfile_weird_encoding[utf-8] PASSED
 tests/test_config.py::test_from_pyfile_weird_encoding[iso-8859-15] PASSED
 tests/test_config.py::test_from_pyfile_weird_encoding[latin-1] PASSED
-tests/test_config.py::test_from_pyfile_weird_encoding[utf-8] PASSED
-tests/test_config.py::test_get_namespace PASSED
-tests/test_config.py::test_session_lifetime PASSED
-tests/test_converters.py::test_context_available PASSED
 tests/test_converters.py::test_custom_converters PASSED
+tests/test_converters.py::test_context_available PASSED
+tests/test_helpers.py::TestSendfile::test_send_file PASSED
+tests/test_helpers.py::TestSendfile::test_static_file PASSED
+tests/test_helpers.py::TestSendfile::test_send_from_directory PASSED
+tests/test_helpers.py::TestUrlFor::test_url_for_with_anchor PASSED
+tests/test_helpers.py::TestUrlFor::test_url_for_with_scheme PASSED
+tests/test_helpers.py::TestUrlFor::test_url_for_with_scheme_not_external PASSED
+tests/test_helpers.py::TestUrlFor::test_url_for_with_alternating_schemes PASSED
+tests/test_helpers.py::TestUrlFor::test_url_with_method PASSED
+tests/test_helpers.py::TestUrlFor::test_url_for_with_self PASSED
+tests/test_helpers.py::test_redirect_no_app PASSED
+tests/test_helpers.py::test_redirect_with_app PASSED
+tests/test_helpers.py::test_abort_no_app PASSED
+tests/test_helpers.py::test_app_aborter_class PASSED
+tests/test_helpers.py::test_abort_with_app PASSED
+tests/test_helpers.py::TestNoImports::test_name_with_import_error PASSED
+tests/test_helpers.py::TestStreaming::test_streaming_with_context PASSED
+tests/test_helpers.py::TestStreaming::test_streaming_with_context_as_decorator PASSED
+tests/test_helpers.py::TestStreaming::test_streaming_with_context_and_custom_close PASSED
+tests/test_helpers.py::TestStreaming::test_stream_keeps_session PASSED
 tests/test_helpers.py::TestHelpers::test_get_debug_flag[-False] PASSED
 tests/test_helpers.py::TestHelpers::test_get_debug_flag[0-False] PASSED
 tests/test_helpers.py::TestHelpers::test_get_debug_flag[False-False] PASSED
@@ -305,193 +325,174 @@
 tests/test_helpers.py::TestHelpers::test_open_resource[r] PASSED
 tests/test_helpers.py::TestHelpers::test_open_resource[rb] PASSED
 tests/test_helpers.py::TestHelpers::test_open_resource[rt] PASSED
-tests/test_helpers.py::TestHelpers::test_open_resource_exceptions[a] PASSED
-tests/test_helpers.py::TestHelpers::test_open_resource_exceptions[r+] PASSED
 tests/test_helpers.py::TestHelpers::test_open_resource_exceptions[w] PASSED
 tests/test_helpers.py::TestHelpers::test_open_resource_exceptions[x] PASSED
-tests/test_helpers.py::TestNoImports::test_name_with_import_error PASSED
-tests/test_helpers.py::TestSendfile::test_send_file PASSED
-tests/test_helpers.py::TestSendfile::test_send_from_directory PASSED
-tests/test_helpers.py::TestSendfile::test_static_file PASSED
-tests/test_helpers.py::TestStreaming::test_stream_keeps_session PASSED
-tests/test_helpers.py::TestStreaming::test_streaming_with_context PASSED
-tests/test_helpers.py::TestStreaming::test_streaming_with_context_and_custom_close PASSED
-tests/test_helpers.py::TestStreaming::test_streaming_with_context_as_decorator PASSED
-tests/test_helpers.py::TestUrlFor::test_url_for_with_alternating_schemes PASSED
-tests/test_helpers.py::TestUrlFor::test_url_for_with_anchor PASSED
-tests/test_helpers.py::TestUrlFor::test_url_for_with_scheme PASSED
-tests/test_helpers.py::TestUrlFor::test_url_for_with_scheme_not_external PASSED
-tests/test_helpers.py::TestUrlFor::test_url_for_with_self PASSED
-tests/test_helpers.py::TestUrlFor::test_url_with_method PASSED
-tests/test_helpers.py::test_abort_no_app PASSED
-tests/test_helpers.py::test_abort_with_app PASSED
-tests/test_helpers.py::test_app_aborter_class PASSED
-tests/test_helpers.py::test_redirect_no_app PASSED
-tests/test_helpers.py::test_redirect_with_app PASSED
+tests/test_helpers.py::TestHelpers::test_open_resource_exceptions[a] PASSED
+tests/test_helpers.py::TestHelpers::test_open_resource_exceptions[r+] PASSED
 tests/test_instance_config.py::test_explicit_instance_paths PASSED
-tests/test_instance_config.py::test_installed_module_paths[False] PASSED
-tests/test_instance_config.py::test_installed_module_paths[True] PASSED
-tests/test_instance_config.py::test_installed_package_paths[False] PASSED
-tests/test_instance_config.py::test_installed_package_paths[True] PASSED
-tests/test_instance_config.py::test_prefix_package_paths[False] PASSED
-tests/test_instance_config.py::test_prefix_package_paths[True] PASSED
 tests/test_instance_config.py::test_uninstalled_module_paths PASSED
-tests/test_instance_config.py::test_uninstalled_namespace_paths PASSED
 tests/test_instance_config.py::test_uninstalled_package_paths PASSED
-tests/test_json.py::test_bad_request_debug_message[False] PASSED
+tests/test_instance_config.py::test_uninstalled_namespace_paths PASSED
+tests/test_instance_config.py::test_installed_module_paths[True] PASSED
+tests/test_instance_config.py::test_installed_module_paths[False] PASSED
+tests/test_instance_config.py::test_installed_package_paths[True] PASSED
+tests/test_instance_config.py::test_installed_package_paths[False] PASSED
+tests/test_instance_config.py::test_prefix_package_paths[True] PASSED
+tests/test_instance_config.py::test_prefix_package_paths[False] PASSED
 tests/test_json.py::test_bad_request_debug_message[True] PASSED
-tests/test_json.py::test_html_method PASSED
-tests/test_json.py::test_json_as_unicode[False-"\u2603"] PASSED
-tests/test_json.py::test_json_as_unicode[True-"\\u2603"] PASSED
-tests/test_json.py::test_json_attr PASSED
+tests/test_json.py::test_bad_request_debug_message[False] PASSED
 tests/test_json.py::test_json_bad_requests PASSED
 tests/test_json.py::test_json_custom_mimetypes PASSED
-tests/test_json.py::test_json_customization PASSED
-tests/test_json.py::test_json_decimal PASSED
+tests/test_json.py::test_json_as_unicode[True-"\\u2603"] PASSED
+tests/test_json.py::test_json_as_unicode[False-"\u2603"] PASSED
 tests/test_json.py::test_json_dump_to_file PASSED
-tests/test_json.py::test_json_key_sorting PASSED
-tests/test_json.py::test_jsonify_arrays PASSED
-tests/test_json.py::test_jsonify_aware_datetimes[tz0] PASSED
-tests/test_json.py::test_jsonify_aware_datetimes[tz1] PASSED
-tests/test_json.py::test_jsonify_aware_datetimes[tz2] PASSED
-tests/test_json.py::test_jsonify_basic_types[-1] PASSED
 tests/test_json.py::test_jsonify_basic_types[0] PASSED
+tests/test_json.py::test_jsonify_basic_types[-1] PASSED
 tests/test_json.py::test_jsonify_basic_types[1] PASSED
 tests/test_json.py::test_jsonify_basic_types[23] PASSED
 tests/test_json.py::test_jsonify_basic_types[3.14] PASSED
+tests/test_json.py::test_jsonify_basic_types[s] PASSED
+tests/test_json.py::test_jsonify_basic_types[longer string] PASSED
+tests/test_json.py::test_jsonify_basic_types[True] PASSED
 tests/test_json.py::test_jsonify_basic_types[False] PASSED
 tests/test_json.py::test_jsonify_basic_types[None] PASSED
-tests/test_json.py::test_jsonify_basic_types[True] PASSED
-tests/test_json.py::test_jsonify_basic_types[longer string] PASSED
-tests/test_json.py::test_jsonify_basic_types[s] PASSED
+tests/test_json.py::test_jsonify_dicts PASSED
+tests/test_json.py::test_jsonify_arrays PASSED
 tests/test_json.py::test_jsonify_datetime[value0] PASSED
 tests/test_json.py::test_jsonify_datetime[value1] PASSED
-tests/test_json.py::test_jsonify_dicts PASSED
+tests/test_json.py::test_jsonify_aware_datetimes[tz0] PASSED
+tests/test_json.py::test_jsonify_aware_datetimes[tz1] PASSED
+tests/test_json.py::test_jsonify_aware_datetimes[tz2] PASSED
 tests/test_json.py::test_jsonify_uuid_types PASSED
+tests/test_json.py::test_json_decimal PASSED
+tests/test_json.py::test_json_attr PASSED
 tests/test_json.py::test_tojson_filter PASSED
-tests/test_json_tag.py::test_custom_tag PASSED
-tests/test_json_tag.py::test_dump_load_unchanged[<html>] PASSED
-tests/test_json_tag.py::test_dump_load_unchanged[\xff] PASSED
+tests/test_json.py::test_json_customization PASSED
+tests/test_json.py::test_json_key_sorting PASSED
+tests/test_json.py::test_html_method PASSED
 tests/test_json_tag.py::test_dump_load_unchanged[data0] PASSED
 tests/test_json_tag.py::test_dump_load_unchanged[data1] PASSED
 tests/test_json_tag.py::test_dump_load_unchanged[data2] PASSED
 tests/test_json_tag.py::test_dump_load_unchanged[data3] PASSED
 tests/test_json_tag.py::test_dump_load_unchanged[data4] PASSED
 tests/test_json_tag.py::test_dump_load_unchanged[data5] PASSED
+tests/test_json_tag.py::test_dump_load_unchanged[\xff] PASSED
+tests/test_json_tag.py::test_dump_load_unchanged[<html>] PASSED
 tests/test_json_tag.py::test_dump_load_unchanged[data8] PASSED
 tests/test_json_tag.py::test_dump_load_unchanged[data9] PASSED
 tests/test_json_tag.py::test_duplicate_tag PASSED
+tests/test_json_tag.py::test_custom_tag PASSED
 tests/test_json_tag.py::test_tag_interface PASSED
 tests/test_json_tag.py::test_tag_order PASSED
-tests/test_logging.py::test_existing_handler PASSED
-tests/test_logging.py::test_has_level_handler PASSED
-tests/test_logging.py::test_log_view_exception PASSED
 tests/test_logging.py::test_logger PASSED
 tests/test_logging.py::test_logger_debug PASSED
+tests/test_logging.py::test_existing_handler PASSED
 tests/test_logging.py::test_wsgi_errors_stream PASSED
+tests/test_logging.py::test_has_level_handler PASSED
+tests/test_logging.py::test_log_view_exception PASSED
 tests/test_regression.py::test_aborting PASSED
-tests/test_reqctx.py::TestGreenletContextCopying::test_greenlet_context_copying PASSED
-tests/test_reqctx.py::TestGreenletContextCopying::test_greenlet_context_copying_api PASSED
-tests/test_reqctx.py::test_bad_environ_raises_bad_request PASSED
+tests/test_reqctx.py::test_teardown_on_pop PASSED
+tests/test_reqctx.py::test_teardown_with_previous_exception PASSED
+tests/test_reqctx.py::test_teardown_with_handled_exception PASSED
+tests/test_reqctx.py::test_proper_test_request_context PASSED
 tests/test_reqctx.py::test_context_binding PASSED
 tests/test_reqctx.py::test_context_test PASSED
-tests/test_reqctx.py::test_environ_for_valid_idna_completes PASSED
 tests/test_reqctx.py::test_manual_context_binding PASSED
-tests/test_reqctx.py::test_normal_environ_completes PASSED
-tests/test_reqctx.py::test_proper_test_request_context PASSED
-tests/test_reqctx.py::test_session_dynamic_cookie_name PASSED
+tests/test_reqctx.py::TestGreenletContextCopying::test_greenlet_context_copying PASSED
+tests/test_reqctx.py::TestGreenletContextCopying::test_greenlet_context_copying_api PASSED
 tests/test_reqctx.py::test_session_error_pops_context PASSED
-tests/test_reqctx.py::test_teardown_on_pop PASSED
-tests/test_reqctx.py::test_teardown_with_handled_exception PASSED
-tests/test_reqctx.py::test_teardown_with_previous_exception PASSED
+tests/test_reqctx.py::test_session_dynamic_cookie_name PASSED
+tests/test_reqctx.py::test_bad_environ_raises_bad_request PASSED
+tests/test_reqctx.py::test_environ_for_valid_idna_completes PASSED
+tests/test_reqctx.py::test_normal_environ_completes PASSED
 tests/test_session_interface.py::test_open_session_with_endpoint PASSED
-tests/test_signals.py::test_appcontext_signals PASSED
-tests/test_signals.py::test_appcontext_tearing_down_signal PASSED
-tests/test_signals.py::test_before_render_template PASSED
-tests/test_signals.py::test_flash_signal PASSED
-tests/test_signals.py::test_request_exception_signal PASSED
-tests/test_signals.py::test_request_signals PASSED
 tests/test_signals.py::test_template_rendered PASSED
+tests/test_signals.py::test_before_render_template PASSED
+tests/test_signals.py::test_request_signals PASSED
+tests/test_signals.py::test_request_exception_signal PASSED
+tests/test_signals.py::test_appcontext_signals PASSED
+tests/test_signals.py::test_flash_signal PASSED
+tests/test_signals.py::test_appcontext_tearing_down_signal PASSED
 tests/test_subclassing.py::test_suppressed_exception_logging PASSED
-tests/test_templating.py::test_add_template_filter PASSED
-tests/test_templating.py::test_add_template_filter_with_name PASSED
-tests/test_templating.py::test_add_template_filter_with_name_and_template PASSED
-tests/test_templating.py::test_add_template_filter_with_template PASSED
-tests/test_templating.py::test_add_template_global PASSED
-tests/test_templating.py::test_add_template_test PASSED
-tests/test_templating.py::test_add_template_test_with_name PASSED
-tests/test_templating.py::test_add_template_test_with_name_and_template PASSED
-tests/test_templating.py::test_add_template_test_with_template PASSED
 tests/test_templating.py::test_context_processing PASSED
-tests/test_templating.py::test_custom_jinja_env PASSED
-tests/test_templating.py::test_custom_template_loader PASSED
-tests/test_templating.py::test_escaping PASSED
-tests/test_templating.py::test_escaping_without_template_filename PASSED
-tests/test_templating.py::test_iterable_loader PASSED
-tests/test_templating.py::test_macros PASSED
-tests/test_templating.py::test_no_escaping PASSED
 tests/test_templating.py::test_original_win PASSED
-tests/test_templating.py::test_request_less_rendering PASSED
 tests/test_templating.py::test_simple_stream PASSED
+tests/test_templating.py::test_request_less_rendering PASSED
 tests/test_templating.py::test_standard_context PASSED
+tests/test_templating.py::test_escaping PASSED
+tests/test_templating.py::test_no_escaping PASSED
+tests/test_templating.py::test_escaping_without_template_filename PASSED
+tests/test_templating.py::test_macros PASSED
 tests/test_templating.py::test_template_filter PASSED
+tests/test_templating.py::test_add_template_filter PASSED
 tests/test_templating.py::test_template_filter_with_name PASSED
-tests/test_templating.py::test_template_filter_with_name_and_template PASSED
+tests/test_templating.py::test_add_template_filter_with_name PASSED
 tests/test_templating.py::test_template_filter_with_template PASSED
-tests/test_templating.py::test_template_loader_debugging PASSED
+tests/test_templating.py::test_add_template_filter_with_template PASSED
+tests/test_templating.py::test_template_filter_with_name_and_template PASSED
+tests/test_templating.py::test_add_template_filter_with_name_and_template PASSED
 tests/test_templating.py::test_template_test PASSED
+tests/test_templating.py::test_add_template_test PASSED
 tests/test_templating.py::test_template_test_with_name PASSED
-tests/test_templating.py::test_template_test_with_name_and_template PASSED
+tests/test_templating.py::test_add_template_test_with_name PASSED
 tests/test_templating.py::test_template_test_with_template PASSED
+tests/test_templating.py::test_add_template_test_with_template PASSED
+tests/test_templating.py::test_template_test_with_name_and_template PASSED
+tests/test_templating.py::test_add_template_test_with_name_and_template PASSED
+tests/test_templating.py::test_add_template_global PASSED
+tests/test_templating.py::test_custom_template_loader PASSED
+tests/test_templating.py::test_iterable_loader PASSED
 tests/test_templating.py::test_templates_auto_reload PASSED
 tests/test_templating.py::test_templates_auto_reload_debug_run PASSED
-tests/test_testing.py::test_blueprint_with_subdomain PASSED
-tests/test_testing.py::test_cli_custom_obj PASSED
-tests/test_testing.py::test_cli_invoke PASSED
-tests/test_testing.py::test_cli_runner_class PASSED
-tests/test_testing.py::test_client_json_no_app_context PASSED
-tests/test_testing.py::test_client_open_environ PASSED
-tests/test_testing.py::test_client_pop_all_preserved PASSED
+tests/test_templating.py::test_template_loader_debugging PASSED
+tests/test_templating.py::test_custom_jinja_env PASSED
+tests/test_testing.py::test_environ_defaults_from_config PASSED
+tests/test_testing.py::test_environ_defaults PASSED
 tests/test_testing.py::test_environ_base_default PASSED
 tests/test_testing.py::test_environ_base_modified PASSED
-tests/test_testing.py::test_environ_defaults PASSED
-tests/test_testing.py::test_environ_defaults_from_config PASSED
+tests/test_testing.py::test_client_open_environ PASSED
+tests/test_testing.py::test_specify_url_scheme PASSED
+tests/test_testing.py::test_path_is_url PASSED
 tests/test_testing.py::test_environbuilder_json_dumps PASSED
+tests/test_testing.py::test_blueprint_with_subdomain PASSED
+tests/test_testing.py::test_redirect_keep_session PASSED
+tests/test_testing.py::test_session_transactions PASSED
+tests/test_testing.py::test_session_transactions_no_null_sessions PASSED
+tests/test_testing.py::test_session_transactions_keep_context PASSED
+tests/test_testing.py::test_session_transaction_needs_cookies PASSED
+tests/test_testing.py::test_test_client_context_binding PASSED
+tests/test_testing.py::test_reuse_client PASSED
 tests/test_testing.py::test_full_url_request PASSED
 tests/test_testing.py::test_json_request_and_response PASSED
-tests/test_testing.py::test_nosubdomain PASSED
-tests/test_testing.py::test_path_is_url PASSED
-tests/test_testing.py::test_redirect_keep_session PASSED
-tests/test_testing.py::test_reuse_client PASSED
-tests/test_testing.py::test_session_transaction_needs_cookies PASSED
-tests/test_testing.py::test_session_transactions PASSED
-tests/test_testing.py::test_session_transactions_keep_context PASSED
-tests/test_testing.py::test_session_transactions_no_null_sessions PASSED
-tests/test_testing.py::test_specify_url_scheme PASSED
+tests/test_testing.py::test_client_json_no_app_context PASSED
 tests/test_testing.py::test_subdomain PASSED
-tests/test_testing.py::test_test_client_context_binding PASSED
-tests/test_user_error_handler.py::TestGenericHandlers::test_handle_class_or_code[500] PASSED
-tests/test_user_error_handler.py::TestGenericHandlers::test_handle_class_or_code[InternalServerError] PASSED
-tests/test_user_error_handler.py::TestGenericHandlers::test_handle_generic PASSED
-tests/test_user_error_handler.py::TestGenericHandlers::test_handle_generic_http PASSED
-tests/test_user_error_handler.py::test_default_error_handler PASSED
-tests/test_user_error_handler.py::test_error_handler_blueprint PASSED
-tests/test_user_error_handler.py::test_error_handler_http_subclass PASSED
+tests/test_testing.py::test_nosubdomain PASSED
+tests/test_testing.py::test_cli_runner_class PASSED
+tests/test_testing.py::test_cli_invoke PASSED
+tests/test_testing.py::test_cli_custom_obj PASSED
+tests/test_testing.py::test_client_pop_all_preserved PASSED
 tests/test_user_error_handler.py::test_error_handler_no_match PASSED
 tests/test_user_error_handler.py::test_error_handler_subclass PASSED
+tests/test_user_error_handler.py::test_error_handler_http_subclass PASSED
+tests/test_user_error_handler.py::test_error_handler_blueprint PASSED
+tests/test_user_error_handler.py::test_default_error_handler PASSED
+tests/test_user_error_handler.py::TestGenericHandlers::test_handle_class_or_code[InternalServerError] PASSED
+tests/test_user_error_handler.py::TestGenericHandlers::test_handle_class_or_code[500] PASSED
+tests/test_user_error_handler.py::TestGenericHandlers::test_handle_generic_http PASSED
+tests/test_user_error_handler.py::TestGenericHandlers::test_handle_generic PASSED
 tests/test_views.py::test_basic_view PASSED
-tests/test_views.py::test_endpoint_override PASSED
-tests/test_views.py::test_explicit_head PASSED
-tests/test_views.py::test_implicit_head PASSED
-tests/test_views.py::test_init_once PASSED
 tests/test_views.py::test_method_based_view PASSED
+tests/test_views.py::test_view_patching PASSED
+tests/test_views.py::test_view_inheritance PASSED
+tests/test_views.py::test_view_decorators PASSED
+tests/test_views.py::test_view_provide_automatic_options_attr PASSED
+tests/test_views.py::test_implicit_head PASSED
+tests/test_views.py::test_explicit_head PASSED
+tests/test_views.py::test_endpoint_override PASSED
 tests/test_views.py::test_methods_var_inheritance PASSED
 tests/test_views.py::test_multiple_inheritance PASSED
 tests/test_views.py::test_remove_method_from_parent PASSED
-tests/test_views.py::test_view_decorators PASSED
-tests/test_views.py::test_view_inheritance PASSED
-tests/test_views.py::test_view_patching PASSED
-tests/test_views.py::test_view_provide_automatic_options_attr PASSED
+tests/test_views.py::test_init_once PASSED
 
 ======== 483 passed, 1 skipped ========
   py$(PYV): OK

--
Gitblit v1.9.3