feat(auth): make OAuth credentials user-specific via UserIntegration records
Setup pages now accept an integration_id query param to save OAuth credentials to the user's personal UserIntegration record instead of global settings. The integrations dashboard shows an "Authorize" button for OAuth types (Dropbox, Google Drive, OneDrive) that need credentials. Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com>
This commit is contained in:
@@ -26,3 +26,19 @@ class TestOnedriveViews:
|
||||
"""Test the OneDrive OAuth callback with auth code."""
|
||||
response = client.get("/onedrive-callback?code=test_code")
|
||||
assert response.status_code == 200
|
||||
|
||||
def test_onedrive_setup_page_with_integration_id(self, client):
|
||||
"""Test the OneDrive setup page accepts integration_id query param."""
|
||||
response = client.get("/onedrive-setup?integration_id=77")
|
||||
assert response.status_code == 200
|
||||
# The template should store the integration_id for per-user OAuth flow
|
||||
assert b"oauth_integration_id" in response.content
|
||||
assert b"77" in response.content
|
||||
|
||||
def test_onedrive_setup_page_without_integration_id(self, client):
|
||||
"""Test the OneDrive setup page works without integration_id (global flow)."""
|
||||
response = client.get("/onedrive-setup")
|
||||
assert response.status_code == 200
|
||||
body = response.text
|
||||
assert "oauth_integration_id" in body
|
||||
assert 'const integrationId = ""' in body
|
||||
|
||||
Reference in New Issue
Block a user