refactor(schedule): extract application/ layer (stage 5)
- Move service.py -> application/service.py (SchedulerService class name unchanged; build_object_store / build_storage_http_client move along) - main.py imports schedule.application.service - Rewrite worker.py's lazy `from schedule.service import build_object_store` and test_worker.py's mock patch string targets — same class of bug as the test_janitor patch strings (silent no-op until the old file is deleted) - Delete flat service.py (orphaned; only docstring refs remain in orchestrator, cleaned up in stage 6) - Zero behavior change; schedule/pyproject.toml untouched Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -87,7 +87,7 @@ class NodeExecutor:
|
|||||||
store = self._bucket_stores.get(bucket_name)
|
store = self._bucket_stores.get(bucket_name)
|
||||||
if store is not None:
|
if store is not None:
|
||||||
return store
|
return store
|
||||||
from schedule.service import build_object_store
|
from schedule.application.service import build_object_store
|
||||||
|
|
||||||
store = build_object_store(bucket_name=bucket_name)
|
store = build_object_store(bucket_name=bucket_name)
|
||||||
self._bucket_stores[bucket_name] = store
|
self._bucket_stores[bucket_name] = store
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ from common.db import create_database_engine, create_session_factory
|
|||||||
from common.service_app import create_service_app
|
from common.service_app import create_service_app
|
||||||
from loguru import logger
|
from loguru import logger
|
||||||
|
|
||||||
from schedule.service import (
|
from schedule.application.service import (
|
||||||
SchedulerService,
|
SchedulerService,
|
||||||
build_object_store,
|
build_object_store,
|
||||||
build_storage_http_client,
|
build_storage_http_client,
|
||||||
|
|||||||
@@ -87,7 +87,7 @@ class NodeExecutor:
|
|||||||
store = self._bucket_stores.get(bucket_name)
|
store = self._bucket_stores.get(bucket_name)
|
||||||
if store is not None:
|
if store is not None:
|
||||||
return store
|
return store
|
||||||
from schedule.service import build_object_store
|
from schedule.application.service import build_object_store
|
||||||
|
|
||||||
store = build_object_store(bucket_name=bucket_name)
|
store = build_object_store(bucket_name=bucket_name)
|
||||||
self._bucket_stores[bucket_name] = store
|
self._bucket_stores[bucket_name] = store
|
||||||
|
|||||||
@@ -61,7 +61,7 @@ def test_store_for_custom_bucket_uses_build_factory(monkeypatch: pytest.MonkeyPa
|
|||||||
"""A custom bucket_name must produce a store via ``build_object_store``."""
|
"""A custom bucket_name must produce a store via ``build_object_store``."""
|
||||||
custom_store = MagicMock(name="custom_store")
|
custom_store = MagicMock(name="custom_store")
|
||||||
with patch(
|
with patch(
|
||||||
"schedule.service.build_object_store",
|
"schedule.application.service.build_object_store",
|
||||||
return_value=custom_store,
|
return_value=custom_store,
|
||||||
) as mock_build:
|
) as mock_build:
|
||||||
executor, _, _ = _make_executor()
|
executor, _, _ = _make_executor()
|
||||||
@@ -75,7 +75,7 @@ def test_store_for_custom_bucket_is_cached(monkeypatch: pytest.MonkeyPatch) -> N
|
|||||||
"""Repeated lookups for the same custom bucket must hit the cache."""
|
"""Repeated lookups for the same custom bucket must hit the cache."""
|
||||||
custom_store = MagicMock(name="custom_store")
|
custom_store = MagicMock(name="custom_store")
|
||||||
with patch(
|
with patch(
|
||||||
"schedule.service.build_object_store",
|
"schedule.application.service.build_object_store",
|
||||||
return_value=custom_store,
|
return_value=custom_store,
|
||||||
) as mock_build:
|
) as mock_build:
|
||||||
executor, _, _ = _make_executor()
|
executor, _, _ = _make_executor()
|
||||||
|
|||||||
Reference in New Issue
Block a user