Skip to content

Commit 0b55f57

Browse files
committed
Attempt to run test on this workflow with the Murfey and ISPyB databases
1 parent 4038cda commit 0b55f57

File tree

1 file changed

+44
-1
lines changed

1 file changed

+44
-1
lines changed

tests/workflows/clem/test_register_preprocessing_results.py

Lines changed: 44 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -147,4 +147,47 @@ def test_run(
147147
assert mock_align_and_merge_call.call_count == len(preprocessing_messages) * len(
148148
colors
149149
)
150-
assert run
150+
151+
152+
def test_run_with_db(
153+
mocker: MockerFixture,
154+
preprocessing_messages: list[dict[str, Any]],
155+
murfey_db_session,
156+
seed_murfey_db,
157+
ispyb_db_session_factory,
158+
ispyb_db_session,
159+
seed_ispyb_db,
160+
):
161+
# Mock out module-level functions
162+
mock_get_security_config = mocker.patch("murfey.server.ispyb.get_security_config")
163+
mock_get_security_config.return_value = MagicMock()
164+
mock_url = mocker.patch("murfey.server.ispyb.url")
165+
mock_url.return_value = MagicMock()
166+
mock_create_engine = mocker.patch("murfey.server.ispyb.create_engine")
167+
mock_create_engine.return_value = MagicMock()
168+
169+
# Mock the ISPyB connection
170+
mock_ispyb_sessionmaker = mocker.patch("murfey.server.ispyb.sessionmaker")
171+
mock_ispyb_sessionmaker.return_value = ispyb_db_session_factory
172+
mock_ispyb_sessionmaker.return_value.return_value = ispyb_db_session
173+
174+
# Mock the align and merge workflow call
175+
mock_align_and_merge_call = mocker.patch(
176+
"murfey.workflows.clem.register_preprocessing_results.submit_cluster_request"
177+
)
178+
179+
# Import and set up the TransportManager only after mocking
180+
import murfey.server
181+
from murfey.server.ispyb import TransportManager
182+
183+
murfey.server._transport_object = TransportManager("PikaTransport")
184+
185+
for message in preprocessing_messages:
186+
result = run(
187+
message=message,
188+
murfey_db=murfey_db_session,
189+
)
190+
assert result == {"success": True}
191+
assert mock_align_and_merge_call.call_count == len(preprocessing_messages) * len(
192+
colors
193+
)

0 commit comments

Comments
 (0)