Publish curated ITWorx_MCP_Hub source from 7fde2770ba344c684b7e7a6b74f763dc19e7c560
This commit is contained in:
1 parent
18cf749bf5
commit
89703431af
11 files changed
+1247
-114
No files matched your search
@@ -699,6 +699,69 @@ class GiteaConnectorTests(unittest.TestCase):
|
||||
finally:
|
||||
connector_instance.client.close()
|
||||
|
||||
def test_validation_logs_do_not_request_unstarted_jobs(self) -> None:
|
||||
connector_instance, fixture = connector()
|
||||
fixture._action_run.update(status="in_progress", conclusion="")
|
||||
jobs = [
|
||||
{"id": 1, "name": "backend", "status": "in_progress", "conclusion": ""},
|
||||
*[
|
||||
{"id": index, "name": status, "status": status, "conclusion": ""}
|
||||
for index, status in enumerate(("requested", "queued", "waiting", "pending"), 2)
|
||||
],
|
||||
]
|
||||
|
||||
def available_logs(_repository: RegisteredRepository, job_id: int) -> tuple[str, bool]:
|
||||
if job_id != 1:
|
||||
raise GiteaError("GITEA_NOT_FOUND", "Gitea resource was not found")
|
||||
return "checks running", False
|
||||
|
||||
try:
|
||||
with (
|
||||
patch.object(connector_instance.client, "action_run_jobs", return_value=jobs),
|
||||
patch.object(
|
||||
connector_instance.client, "action_job_logs", side_effect=available_logs
|
||||
) as log_read,
|
||||
):
|
||||
result = connector_instance.validation_get(
|
||||
context(), "hub-repository", 42, include_logs=True
|
||||
)
|
||||
projected = result["data"]["run"]["jobs"]
|
||||
self.assertEqual(log_read.call_count, 1)
|
||||
self.assertEqual(log_read.call_args.args[1], 1)
|
||||
self.assertEqual(projected[0]["logs"], "checks running")
|
||||
self.assertFalse(projected[0]["logsUnavailable"])
|
||||
self.assertTrue(all(job["logsUnavailable"] for job in projected[1:]))
|
||||
self.assertTrue(
|
||||
all(job["logs"] == "[job not started; logs unavailable]" for job in projected[1:])
|
||||
)
|
||||
self.assertEqual(result["data"]["run"]["validationState"], "running")
|
||||
self.assertNotIn("fixture-token", json.dumps(result))
|
||||
finally:
|
||||
connector_instance.client.close()
|
||||
|
||||
def test_validation_logs_preserve_started_job_errors(self) -> None:
|
||||
connector_instance, _fixture = connector()
|
||||
job = {"id": 1, "name": "backend", "status": "in_progress", "conclusion": ""}
|
||||
try:
|
||||
for code in ("GITEA_ACCESS_DENIED", "GITEA_UNAVAILABLE"):
|
||||
with (
|
||||
self.subTest(code=code),
|
||||
patch.object(connector_instance.client, "action_run_jobs", return_value=[job]),
|
||||
patch.object(
|
||||
connector_instance.client,
|
||||
"action_job_logs",
|
||||
side_effect=GiteaError(code, "bounded upstream error"),
|
||||
) as log_read,
|
||||
self.assertRaises(GiteaError) as raised,
|
||||
):
|
||||
connector_instance.validation_get(
|
||||
context(), "hub-repository", 42, include_logs=True
|
||||
)
|
||||
self.assertEqual(raised.exception.code, code)
|
||||
self.assertEqual(log_read.call_count, 1)
|
||||
finally:
|
||||
connector_instance.client.close()
|
||||
|
||||
def test_repository_context_stays_below_connector_response_budget(self) -> None:
|
||||
connector_instance, fixture = connector()
|
||||
fixture._file = "R" * 100_000
|
||||
@@ -2028,7 +2091,7 @@ class GiteaConnectorTests(unittest.TestCase):
|
||||
try:
|
||||
current = context()
|
||||
capabilities = connector_instance.capabilities_get(current)["data"]
|
||||
self.assertEqual(fixture.recorded_paths, [])
|
||||
self.assertEqual(fixture.recorded_paths, ["/api/v1/version"])
|
||||
self.assertEqual(capabilities["version"], "1.14.0")
|
||||
self.assertEqual(capabilities["changeBranchPrefixes"], [])
|
||||
self.assertEqual(capabilities["workBranchPolicy"], "any-valid-non-default-branch")
|
||||
@@ -2054,7 +2117,13 @@ class GiteaConnectorTests(unittest.TestCase):
|
||||
self.assertEqual(selftest["mutationsAttempted"], 0)
|
||||
self.assertEqual(
|
||||
{item["name"] for item in selftest["checks"]},
|
||||
{"handler-parity", "gitea-connection", "write-runtime", "managed-actions"},
|
||||
{
|
||||
"handler-parity",
|
||||
"gitea-connection",
|
||||
"write-runtime",
|
||||
"managed-actions",
|
||||
"upstream-merge-compatibility",
|
||||
},
|
||||
)
|
||||
|
||||
repository_health = connector_instance.repository_health(current, "hub-repository")[
|
||||
|
||||
Reference in new issue
Block a user