-
-
Notifications
You must be signed in to change notification settings - Fork 754
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Test workers #1995
Closed
Closed
Test workers #1995
Changes from 18 commits
Commits
Show all changes
20 commits
Select commit
Hold shift + click to select a range
1fa3846
Add requirements for Gunicorn worker testing
br3ndonland 4b8923d
Ensure TOML extra is installed for coverage
br3ndonland 0844cf3
Update coverage configuration for subprocesses
br3ndonland 65a16c7
Test Uvicorn worker requests and signal handling
br3ndonland 1be545c
Test Uvicorn worker boot errors
br3ndonland ab4a73c
Handle flaky signals in Gunicorn worker tests
br3ndonland 210f382
Disable flaking file reloader tests
br3ndonland 1ab8202
Omit workers from Windows coverage measurement
br3ndonland dda05fc
Adjust coverage `fail_under`
br3ndonland 1d472e2
Disable GitHub Actions `fail-fast`
br3ndonland fa7814c
Add GitHub Actions timeout for tests
br3ndonland 0624d57
Update contributing docs
br3ndonland 68dc870
Add `SIGWINCH` to list of flaky signals
br3ndonland cf737cc
Add `SIGHUP` to list of flaky signals
br3ndonland b1ab28c
Revert "Disable GitHub Actions `fail-fast`"
br3ndonland 9d4365a
Remove note about re-running failed workflow jobs
br3ndonland 3add98c
Use context management for client and output
br3ndonland 1bc61dd
Add ASGI app directly to `tests.test_workers`
br3ndonland 23adbdf
Merge branch 'master' into test-workers
br3ndonland 4923963
Use `coverage combine -a` to avoid many files
br3ndonland File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,5 @@ | ||
.cache | ||
.coverage | ||
.coverage* | ||
.mypy_cache/ | ||
__pycache__/ | ||
uvicorn.egg-info/ | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -8,4 +8,5 @@ export SOURCE_FILES="uvicorn tests" | |
|
||
set -x | ||
|
||
${PREFIX}coverage combine -q | ||
${PREFIX}coverage report |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Help wantedSome of the reloader tests in The errors typically look like this (expand).
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is it possible to not test by default, and do the opposite:
scripts/test -m "subprocess"
?There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We can. The way to disable subprocess tests by default is to add the
-m "not subprocess"
toaddopts
inpyproject.toml
.The downsides to this approach are:
unmarked
and add it to all the other tests (Apply a default marker to all unmarked tests pytest-dev/pytest#8573), then do-m "subprocess or unmarked"
to run all the tests. I tried it but pytest is still skipping a lot of tests and I'm having trouble with it."not subprocess"
approach for skipping tests with custom markers).I prefer the
"not subprocess"
approach overall.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm inclined about removing the
workers.py
module from uvicorn.