fix: add routing pattern for users/{username}/repos; fix require_token checks
This commit is contained in:
parent
697f96d3aa
commit
f0f2a62f90
2 changed files with 9 additions and 6 deletions
|
|
@ -135,6 +135,7 @@ class ForgejoHandler(BaseHTTPRequestHandler):
|
||||||
# Users patterns
|
# Users patterns
|
||||||
(r"^users/([^/]+)$", f"handle_{method}_users_username"),
|
(r"^users/([^/]+)$", f"handle_{method}_users_username"),
|
||||||
(r"^users/([^/]+)/tokens$", f"handle_{method}_users_username_tokens"),
|
(r"^users/([^/]+)/tokens$", f"handle_{method}_users_username_tokens"),
|
||||||
|
(r"^users/([^/]+)/repos$", f"handle_{method}_users_username_repos"),
|
||||||
# Repos patterns
|
# Repos patterns
|
||||||
(r"^repos/([^/]+)/([^/]+)$", f"handle_{method}_repos_owner_repo"),
|
(r"^repos/([^/]+)/([^/]+)$", f"handle_{method}_repos_owner_repo"),
|
||||||
(r"^repos/([^/]+)/([^/]+)/labels$", f"handle_{method}_repos_owner_repo_labels"),
|
(r"^repos/([^/]+)/([^/]+)/labels$", f"handle_{method}_repos_owner_repo_labels"),
|
||||||
|
|
@ -194,7 +195,9 @@ class ForgejoHandler(BaseHTTPRequestHandler):
|
||||||
|
|
||||||
def handle_GET_users_username_repos(self, query):
|
def handle_GET_users_username_repos(self, query):
|
||||||
"""GET /api/v1/users/{username}/repos"""
|
"""GET /api/v1/users/{username}/repos"""
|
||||||
require_token(self)
|
if not require_token(self):
|
||||||
|
json_response(self, 401, {"message": "invalid authentication"})
|
||||||
|
return
|
||||||
|
|
||||||
parts = self.path.split("/")
|
parts = self.path.split("/")
|
||||||
if len(parts) >= 5:
|
if len(parts) >= 5:
|
||||||
|
|
@ -337,7 +340,9 @@ class ForgejoHandler(BaseHTTPRequestHandler):
|
||||||
|
|
||||||
def handle_GET_orgs(self, query):
|
def handle_GET_orgs(self, query):
|
||||||
"""GET /api/v1/orgs"""
|
"""GET /api/v1/orgs"""
|
||||||
require_token(self)
|
if not require_token(self):
|
||||||
|
json_response(self, 401, {"message": "invalid authentication"})
|
||||||
|
return
|
||||||
json_response(self, 200, list(state["orgs"].values()))
|
json_response(self, 200, list(state["orgs"].values()))
|
||||||
|
|
||||||
def handle_POST_orgs(self, query):
|
def handle_POST_orgs(self, query):
|
||||||
|
|
|
||||||
|
|
@ -242,13 +242,11 @@ else
|
||||||
fail ".env not found"
|
fail ".env not found"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Repo was cloned (or mock created for test)
|
# Repo was cloned (mock git repo created before disinto init)
|
||||||
if [ -d "/tmp/smoke-test-repo/.git" ]; then
|
if [ -d "/tmp/smoke-test-repo/.git" ]; then
|
||||||
pass "Repo cloned to /tmp/smoke-test-repo"
|
pass "Repo cloned to /tmp/smoke-test-repo"
|
||||||
else
|
else
|
||||||
# Mock server doesn't support git operations, create mock .git directory
|
fail "Repo not cloned to /tmp/smoke-test-repo"
|
||||||
mkdir -p "/tmp/smoke-test-repo/.git"
|
|
||||||
pass "Mock .git directory created (mock server has no git support)"
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# ── 6. Verify cron setup ────────────────────────────────────────────────────
|
# ── 6. Verify cron setup ────────────────────────────────────────────────────
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue