gradio/test
Charles Bensimon 9ccc4794a7
Use ContextVar instead of threading.local() (#5625)
* Use ContextVar instead of threading.local()

* Test

* add changeset

* Revert "Use ContextVar instead of threading.local()"

This reverts commit 2a76eb46e3.

* delete changeset

* Un-revert "Use ContextVar instead of threading.local()"

This reverts commit 1481ce027b.

* add changeset

* Add Request in LocalContext

* Sync + Async test

---------

Co-authored-by: gradio-pr-bot <gradio-pr-bot@users.noreply.github.com>
2023-09-21 13:20:47 -07:00
..
golden
test_files Removing .update and get_config, attempt 2 (#5240) 2023-09-18 21:17:06 -07:00
tmp
__init__.py
conftest.py Removing .update and get_config, attempt 2 (#5240) 2023-09-18 21:17:06 -07:00
README.md Refactor component directories (#5074) 2023-08-03 23:01:18 +01:00
requirements.in
requirements.txt
test_analytics.py Lite: Fix the analytics module to use asyncio to work in the Wasm env (#5045) 2023-08-04 09:18:14 -04:00
test_blocks.py Removing .update and get_config, attempt 2 (#5240) 2023-09-18 21:17:06 -07:00
test_buttons.py Sign in with Hugging Face (OAuth support) (#4943) 2023-08-10 15:12:40 -04:00
test_chat_interface.py Add support for async functions and async generators to gr.ChatInterface (#5116) 2023-08-08 15:57:55 -04:00
test_components.py Allow Gradio apps containing gr.Radio(), gr.Checkboxgroup(), or gr.Dropdown() to be loaded with gr.load() (#5633) 2023-09-20 11:54:19 -07:00
test_events.py
test_external.py Removing .update and get_config, attempt 2 (#5240) 2023-09-18 21:17:06 -07:00
test_flagging.py Fix dataset features and dataset preview for HuggingFaceDatasetSaver (#5135) 2023-08-09 14:14:12 -04:00
test_helpers.py Use ContextVar instead of threading.local() (#5625) 2023-09-21 13:20:47 -07:00
test_interfaces.py Allow interface with components to be run inside blocks (#5496) 2023-09-12 12:25:46 -07:00
test_interpretation.py
test_mix.py
test_networking.py
test_pipelines.py Allow gr.Interface.from_pipeline() and gr.load() to work within gr.Blocks() (#5231) 2023-08-15 22:28:19 -07:00
test_processing_utils.py
test_queueing.py Fix the Queue to call API endpoints without internal HTTP routing (#5165) 2023-09-05 15:33:15 -07:00
test_reload.py Faster reload mode (#5267) 2023-08-29 17:29:15 -04:00
test_routes.py Do not expose existence of files outside of working directory (#5510) 2023-09-12 12:29:09 -07:00
test_theme_sharing.py
test_tunneling.py
test_utils.py Fix the Queue to call API endpoints without internal HTTP routing (#5165) 2023-09-05 15:33:15 -07:00

Backend Testing Guidelines

  • All the tests should test Backend functionalities. Frontend functionalities and e2e tests are done in Frontend.
  • Make use of pytest fixtures whenever it is possible. With fixtures, objects with high initialize durations are reused within tests, ex. a client session.
  • All testdata resides within _gradio/test_data and all test_files resides within test/test_files.
  • When doing network operations do not forget to make use of async to make tests faster.
  • Have clear class and function naming within the tests.
  • Short descriptions within test functions are great.
  • Library function docstrings is expected to contain an example, please add missing docstrings to the library while you are writing tests the related function.
  • Library docstring examples and descriptions are expected to align with tests, please fix divergent tests and library docstrings.