sanic/tests
L. Kärkkäinen 2011f3a0b2 PEP 594 has cgi module scheduled for deprecation in Python 3.8 (#1649)
* PEP 594 has cgi module scheduled for deprecation in Python 3.8. Reimplement
cgi.parse_header in Sanic. The new implementation is much faster than either
cgi.parse_header or equivalent werkzeug.parse_options_header, and unlike the
two, handles also quoted values with semicolons or \" in them.

* Fix string escape.

* Useless linter complaints.

* More linter issues

* Add return type hint.

* Do not support quoted-pair escapes.

- Improved documentation and renamed the function more aptly as it only seems
  to apply to content-type and content-disposition headers.

* Unquote filenames also in normal mode.

* Add tests for headers. Adapted from CPython parse_header tests with changes on the final test.

* Linter

* Revert "Unquote filenames also in normal mode."

This reverts commit bf0d502bcd.

* Improved parse_content_header and added tests with Firefox and Chrome.

- Unescaping of quotes moved to parse_content_header because it affects all fields,
  not just filenames.
- It is impossible to handle all cases correctly but the current heuristics should
  suffice well for typical cases and beyond.
- Added comparisons with cgi.parse_header and werkzeug.parse_options_header.

* Updated comments as well.
2019-08-27 08:30:23 -05:00
..
benchmark Create requests-async based TestClient, remove aiohttp dependency, drop Python 3.5 2019-04-30 15:26:06 +03:00
certs initial commit 2017-03-03 11:44:50 -05:00
performance Create requests-async based TestClient, remove aiohttp dependency, drop Python 3.5 2019-04-30 15:26:06 +03:00
static Add content_type flag to Sanic.static (#1267) 2018-07-20 22:31:15 -07:00
conftest.py Create requests-async based TestClient, remove aiohttp dependency, drop Python 3.5 2019-04-30 15:26:06 +03:00
test_app.py Lifespan and code cleanup 2019-06-04 10:58:00 +03:00
test_asgi_client.py Increase testing coverage for ASGI 2019-06-19 00:38:58 +03:00
test_asgi.py Add content-type headers in response in ASGI mode 2019-08-11 11:29:08 +03:00
test_bad_request.py Run linter 2018-12-30 13:18:06 +02:00
test_blueprint_group.py Create requests-async based TestClient, remove aiohttp dependency, drop Python 3.5 2019-04-30 15:26:06 +03:00
test_blueprints.py GIT-1591 Strict Slashes behavior fix (#1594) 2019-06-06 07:21:58 -05:00
test_config.py Add custom request support to ASGI mode; fix a couple tests 2019-06-24 22:59:23 +03:00
test_cookies.py Lifespan and code cleanup 2019-06-04 10:58:00 +03:00
test_create_task.py Create requests-async based TestClient, remove aiohttp dependency, drop Python 3.5 2019-04-30 15:26:06 +03:00
test_custom_protocol.py Create requests-async based TestClient, remove aiohttp dependency, drop Python 3.5 2019-04-30 15:26:06 +03:00
test_custom_request.py Created methods to append and finish body content on Request (#1379) 2018-11-12 09:11:41 -06:00
test_dynamic_routes.py Create requests-async based TestClient, remove aiohttp dependency, drop Python 3.5 2019-04-30 15:26:06 +03:00
test_exceptions_handler.py Create requests-async based TestClient, remove aiohttp dependency, drop Python 3.5 2019-04-30 15:26:06 +03:00
test_exceptions.py Create requests-async based TestClient, remove aiohttp dependency, drop Python 3.5 2019-04-30 15:26:06 +03:00
test_headers.py PEP 594 has cgi module scheduled for deprecation in Python 3.8 (#1649) 2019-08-27 08:30:23 -05:00
test_helpers.py Add custom request support to ASGI mode; fix a couple tests 2019-06-24 22:59:23 +03:00
test_keep_alive_timeout.py GIT-1591 Strict Slashes behavior fix (#1594) 2019-06-06 07:21:58 -05:00
test_logging.py Create requests-async based TestClient, remove aiohttp dependency, drop Python 3.5 2019-04-30 15:26:06 +03:00
test_logo.py Set testing.PORT on all app.create_server() in tests (#1593) 2019-05-30 09:10:00 -05:00
test_middleware.py Create requests-async based TestClient, remove aiohttp dependency, drop Python 3.5 2019-04-30 15:26:06 +03:00
test_multiprocessing.py Create requests-async based TestClient, remove aiohttp dependency, drop Python 3.5 2019-04-30 15:26:06 +03:00
test_named_routes.py Create requests-async based TestClient, remove aiohttp dependency, drop Python 3.5 2019-04-30 15:26:06 +03:00
test_payload_too_large.py Run linter 2018-12-30 13:18:06 +02:00
test_redirect.py GIT-1591 Strict Slashes behavior fix (#1594) 2019-06-06 07:21:58 -05:00
test_request_cancel.py GIT-1591 Strict Slashes behavior fix (#1594) 2019-06-06 07:21:58 -05:00
test_request_data.py Create requests-async based TestClient, remove aiohttp dependency, drop Python 3.5 2019-04-30 15:26:06 +03:00
test_request_stream.py Increase testing coverage for ASGI 2019-06-19 00:38:58 +03:00
test_request_timeout.py GIT-1591 Strict Slashes behavior fix (#1594) 2019-06-06 07:21:58 -05:00
test_requests.py fix: GIT-1623: handle cookie duplication and serialization issue 2019-07-08 13:03:33 +05:30
test_response_timeout.py Create requests-async based TestClient, remove aiohttp dependency, drop Python 3.5 2019-04-30 15:26:06 +03:00
test_response.py GIT-1591 Strict Slashes behavior fix (#1594) 2019-06-06 07:21:58 -05:00
test_routes.py Increase testing coverage for ASGI 2019-06-19 00:38:58 +03:00
test_server_events.py Merge branch 'master' into asgi-refactor-attempt 2019-06-11 11:11:32 +03:00
test_signal_handlers.py Create requests-async based TestClient, remove aiohttp dependency, drop Python 3.5 2019-04-30 15:26:06 +03:00
test_static.py Create requests-async based TestClient, remove aiohttp dependency, drop Python 3.5 2019-04-30 15:26:06 +03:00
test_test_client_port.py Create requests-async based TestClient, remove aiohttp dependency, drop Python 3.5 2019-04-30 15:26:06 +03:00
test_url_building.py Create requests-async based TestClient, remove aiohttp dependency, drop Python 3.5 2019-04-30 15:26:06 +03:00
test_url_for_static.py Run linter 2018-12-30 13:18:06 +02:00
test_utf8.py Create requests-async based TestClient, remove aiohttp dependency, drop Python 3.5 2019-04-30 15:26:06 +03:00
test_vhosts.py Run linter 2018-12-30 13:18:06 +02:00
test_views.py Create requests-async based TestClient, remove aiohttp dependency, drop Python 3.5 2019-04-30 15:26:06 +03:00
test_worker.py Create requests-async based TestClient, remove aiohttp dependency, drop Python 3.5 2019-04-30 15:26:06 +03:00