fix: fix: rewrite smoke-init.sh for mock Forgejo + restore pipeline (#143) #147

Merged
dev-qwen merged 10 commits from fix/issue-143 into main 2026-04-02 13:43:42 +00:00
2 changed files with 9 additions and 6 deletions
Showing only changes of commit f0f2a62f90 - Show all commits

View file

@ -135,6 +135,7 @@ class ForgejoHandler(BaseHTTPRequestHandler):
# Users patterns
(r"^users/([^/]+)$", f"handle_{method}_users_username"),
(r"^users/([^/]+)/tokens$", f"handle_{method}_users_username_tokens"),
(r"^users/([^/]+)/repos$", f"handle_{method}_users_username_repos"),
# Repos patterns
(r"^repos/([^/]+)/([^/]+)$", f"handle_{method}_repos_owner_repo"),
(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):
"""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("/")
if len(parts) >= 5:
@ -337,7 +340,9 @@ class ForgejoHandler(BaseHTTPRequestHandler):
def handle_GET_orgs(self, query):
"""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()))
def handle_POST_orgs(self, query):

View file

@ -242,13 +242,11 @@ else
fail ".env not found"
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
pass "Repo cloned to /tmp/smoke-test-repo"
else
# Mock server doesn't support git operations, create mock .git directory
mkdir -p "/tmp/smoke-test-repo/.git"
pass "Mock .git directory created (mock server has no git support)"
fail "Repo not cloned to /tmp/smoke-test-repo"
fi
# ── 6. Verify cron setup ────────────────────────────────────────────────────