test: seed review workflow load and pass expected_head_sha in legacy test fixtures
This commit is contained in:
+4
-1
@@ -291,12 +291,15 @@ class TestGatedToolAudit(_AuditWiringBase):
|
|||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
super().setUp()
|
super().setUp()
|
||||||
from mcp_server import init_review_decision_lock
|
from mcp_server import init_review_decision_lock, gitea_load_review_workflow
|
||||||
from tests.test_mcp_server import _install_owned_reviewer_lease
|
from tests.test_mcp_server import _install_owned_reviewer_lease
|
||||||
import reviewer_pr_lease
|
import reviewer_pr_lease
|
||||||
|
import review_workflow_load
|
||||||
|
|
||||||
# init_review_decision_lock clears any prior session lease (#407).
|
# init_review_decision_lock clears any prior session lease (#407).
|
||||||
init_review_decision_lock("prgs", "review_pr")
|
init_review_decision_lock("prgs", "review_pr")
|
||||||
|
gitea_load_review_workflow()
|
||||||
|
self.addCleanup(review_workflow_load.clear_review_workflow_load)
|
||||||
self._lease_patch = _install_owned_reviewer_lease(8)
|
self._lease_patch = _install_owned_reviewer_lease(8)
|
||||||
self._lease_patch.start()
|
self._lease_patch.start()
|
||||||
self._auth_identity_patch = patch(
|
self._auth_identity_patch = patch(
|
||||||
|
|||||||
@@ -1057,7 +1057,8 @@ class TestMergePR(unittest.TestCase):
|
|||||||
"GITEA_ALLOWED_OPERATIONS": "read,merge"}
|
"GITEA_ALLOWED_OPERATIONS": "read,merge"}
|
||||||
with patch.dict(os.environ, env, clear=True):
|
with patch.dict(os.environ, env, clear=True):
|
||||||
r = gitea_merge_pr(
|
r = gitea_merge_pr(
|
||||||
pr_number=8, confirmation=self._confirm(8), remote="prgs")
|
pr_number=8, confirmation=self._confirm(8), remote="prgs",
|
||||||
|
expected_head_sha=new_sha)
|
||||||
self.assertFalse(r["performed"])
|
self.assertFalse(r["performed"])
|
||||||
self.assertTrue(r.get("approval_visible"))
|
self.assertTrue(r.get("approval_visible"))
|
||||||
self.assertFalse(r.get("approval_at_current_head"))
|
self.assertFalse(r.get("approval_at_current_head"))
|
||||||
|
|||||||
@@ -95,8 +95,12 @@ class PermissionReportBase(unittest.TestCase):
|
|||||||
self._dir = tempfile.TemporaryDirectory()
|
self._dir = tempfile.TemporaryDirectory()
|
||||||
self.config_path = os.path.join(self._dir.name, "profiles.json")
|
self.config_path = os.path.join(self._dir.name, "profiles.json")
|
||||||
self._write_config(CONFIG)
|
self._write_config(CONFIG)
|
||||||
|
import review_workflow_load
|
||||||
|
review_workflow_load.record_review_workflow_load(mcp_server.PROJECT_ROOT)
|
||||||
|
|
||||||
def tearDown(self):
|
def tearDown(self):
|
||||||
|
import review_workflow_load
|
||||||
|
review_workflow_load.clear_review_workflow_load()
|
||||||
self._remotes.stop()
|
self._remotes.stop()
|
||||||
mcp_server._IDENTITY_CACHE.clear()
|
mcp_server._IDENTITY_CACHE.clear()
|
||||||
gitea_config._active_profile_override = None
|
gitea_config._active_profile_override = None
|
||||||
|
|||||||
@@ -36,9 +36,12 @@ def _lock(mutations=None, correction=False):
|
|||||||
|
|
||||||
|
|
||||||
def _seed(mutations=None, correction=False):
|
def _seed(mutations=None, correction=False):
|
||||||
|
import review_workflow_load
|
||||||
|
review_workflow_load.record_review_workflow_load(mcp_server.PROJECT_ROOT)
|
||||||
mcp_server._save_review_decision_lock(_lock(mutations, correction))
|
mcp_server._save_review_decision_lock(_lock(mutations, correction))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
APPROVED_A = {"pr_number": 5, "action": "approve", "review_id": 1,
|
APPROVED_A = {"pr_number": 5, "action": "approve", "review_id": 1,
|
||||||
"review_state": "approve"}
|
"review_state": "approve"}
|
||||||
RC_A = {"pr_number": 5, "action": "request_changes", "review_id": 2,
|
RC_A = {"pr_number": 5, "action": "request_changes", "review_id": 2,
|
||||||
@@ -92,6 +95,8 @@ class TestTerminalHardStopReasons(unittest.TestCase):
|
|||||||
|
|
||||||
class TestMergeHardStopWiring(unittest.TestCase):
|
class TestMergeHardStopWiring(unittest.TestCase):
|
||||||
def tearDown(self):
|
def tearDown(self):
|
||||||
|
import review_workflow_load
|
||||||
|
review_workflow_load.clear_review_workflow_load()
|
||||||
mcp_server._save_review_decision_lock(None)
|
mcp_server._save_review_decision_lock(None)
|
||||||
|
|
||||||
def test_merge_blocked_after_request_changes(self):
|
def test_merge_blocked_after_request_changes(self):
|
||||||
@@ -113,6 +118,8 @@ class TestMergeHardStopWiring(unittest.TestCase):
|
|||||||
|
|
||||||
class TestMarkFinalHardStopWiring(unittest.TestCase):
|
class TestMarkFinalHardStopWiring(unittest.TestCase):
|
||||||
def tearDown(self):
|
def tearDown(self):
|
||||||
|
import review_workflow_load
|
||||||
|
review_workflow_load.clear_review_workflow_load()
|
||||||
mcp_server._save_review_decision_lock(None)
|
mcp_server._save_review_decision_lock(None)
|
||||||
|
|
||||||
def test_mark_ready_blocked_after_terminal_mutation(self):
|
def test_mark_ready_blocked_after_terminal_mutation(self):
|
||||||
@@ -145,6 +152,8 @@ def _mark(action, pr_number=6, **kwargs):
|
|||||||
|
|
||||||
class TestDuplicateRequestChangesSuppression(unittest.TestCase):
|
class TestDuplicateRequestChangesSuppression(unittest.TestCase):
|
||||||
def tearDown(self):
|
def tearDown(self):
|
||||||
|
import review_workflow_load
|
||||||
|
review_workflow_load.clear_review_workflow_load()
|
||||||
mcp_server._save_review_decision_lock(None)
|
mcp_server._save_review_decision_lock(None)
|
||||||
|
|
||||||
def test_duplicate_request_changes_blocked_at_same_head(self):
|
def test_duplicate_request_changes_blocked_at_same_head(self):
|
||||||
|
|||||||
Reference in New Issue
Block a user