Repository navigation
fix: use an async event hook for custom_domain in AsyncManagementClient - #907
Open
RaphaelFakhri wants to merge 1 commit into
Open
RaphaelFakhri wants to merge 1 commit into
RaphaelFakhri wants to merge 1 commit into
Conversation
This branch has not been deployed
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Changes
AsyncManagementClientregisters_enforce_custom_domain_whitelistas a request event hook on anhttpx.AsyncClientwhencustom_domainis set.httpx.AsyncClientawaits its hooks, and that function is synchronous, so every request fails withTypeError: object NoneType can't be used in 'await' expression.This change adds
_enforce_custom_domain_whitelist_async, a coroutine that calls the existing whitelist check, and registers it on the async client.ManagementClientkeeps the sync hook._enforce_custom_domain_whitelist_async(private)AsyncManagementClient.__init__(no signature change)httpx.MockTransportfor both clients and check that the header is kept on/api/v2/users/{id}and removed on/api/v2/clients/{id}.References
Auth0-Custom-Domainheader support for Multiple Custom Domains (MCD) #799httpx.AsyncClienthooks must be async functions.Testing
poetry run pytest tests/management/test_management_client.py -k request_enforces_whitelist: 2 passed. Without the source change,test_async_request_enforces_whitelistfails with theTypeErrorabove.poetry run pytest: 724 passed, 4 skipped.Not tested against a live tenant.
Checklist