gradio/test
Abubakar Abid de0c41c1c4
Enforcing typing in blocks.py and context.py (#2887)
* started pathlib

* blocks.py

* more changes

* fixes

* typing

* formatting

* typing

* renaming files

* changelog

* script

* changelog

* lint

* routes

* renamed

* state

* formatting

* state

* type check script

* remove strictness

* switched to pyright

* switched to pyright

* fixed flaky tests

* fixed test xray

* fixed load test

* fixed blocks tests

* formatting

* fixed components test

* uncomment tests

* fixed interpretation tests

* formatting

* last tests hopefully

* argh lint

* component

* fixed based on review

* refactor
2022-12-27 16:54:47 -05:00
..
golden updated test images 2022-03-17 10:45:48 -07:00
test_files Label component now accepts file paths to .json files (#2083) 2022-08-25 15:26:27 -07:00
tmp End-to-end UI tests with Selenium (#72) 2020-10-23 18:28:30 +04:00
__init__.py blocks-components-tests 2022-03-30 13:08:34 +03:00
conftest.py Reset components to original state by setting value to None (#2044) 2022-08-22 16:04:59 -04:00
README.md test-guideline (#990) 2022-04-14 00:06:14 +03:00
requirements.in Add support for altair plots (#2741) 2022-12-02 14:53:42 -03:00
requirements.txt Add support for altair plots (#2741) 2022-12-02 14:53:42 -03:00
test_blocks.py Enforcing typing in blocks.py and context.py (#2887) 2022-12-27 16:54:47 -05:00
test_components.py Enforcing typing in blocks.py and context.py (#2887) 2022-12-27 16:54:47 -05:00
test_documentation.py UI update: API documentation page (#2652) 2022-11-20 16:21:01 -06:00
test_encryptor.py Refactoring to replace unittests with pytests (#2610) 2022-11-08 01:37:55 +01:00
test_events.py Better error messages (#2543) 2022-10-26 16:10:26 -07:00
test_examples.py Re-enable Example pagination on the front-end (#2861) 2022-12-20 17:10:23 -05:00
test_external.py Fixed loading Spaces that have components with default values (#2855) 2022-12-20 15:38:02 -06:00
test_flagging.py Fixes flagging when allow_flagging is set to "auto" (#2695) 2022-12-20 15:27:14 -06:00
test_interfaces.py Re-enable Example pagination on the front-end (#2861) 2022-12-20 17:10:23 -05:00
test_interpretation.py Modify CI to check for unused imports (#2555) 2022-10-28 10:56:18 -04:00
test_mix.py Refactoring to replace unittests with pytests (#2610) 2022-11-08 01:37:55 +01:00
test_networking.py Switch from SSH tunneling to FRP (#2509) 2022-12-14 08:10:45 -06:00
test_pipelines.py Refactoring external.py (#2579) 2022-11-01 09:14:15 -07:00
test_processing_utils.py Create fewer temp files and make them consistently-named (#2758) 2022-12-15 14:37:09 -06:00
test_queueing.py Enforcing typing in blocks.py and context.py (#2887) 2022-12-27 16:54:47 -05:00
test_routes.py Add support for numpy array and other types to gr.Dataframe() initial value (#2804) 2022-12-13 17:01:27 -06:00
test_tunneling.py Switch from SSH tunneling to FRP (#2509) 2022-12-14 08:10:45 -06:00
test_utils.py Patching test_get_ip attempt 2 (#2810) 2022-12-13 20:30:47 -06: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 test_data 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.