Skip to content

Commit bbc29e6

Browse files
authored
[release test] use AnyscaleJobRunner in testing (#59858)
AnyscaleJobRunner is the only implementation/child class of CommandRunner right now. There is no need to use inheritance. Signed-off-by: Lonnie Liu <lonnie@anyscale.com>
1 parent 6b1ac3d commit bbc29e6

File tree

1 file changed

+24
-3
lines changed

1 file changed

+24
-3
lines changed

release/ray_release/tests/test_glue.py

Lines changed: 24 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
from ray_release.alerts.handle import result_to_handle_map
1212
from ray_release.cluster_manager.cluster_manager import ClusterManager
1313
from ray_release.cluster_manager.minimal import MinimalClusterManager
14-
from ray_release.command_runner.command_runner import CommandRunner
14+
from ray_release.command_runner.anyscale_job_runner import AnyscaleJobRunner
1515
from ray_release.exception import (
1616
CommandError,
1717
CommandTimeout,
@@ -25,6 +25,7 @@
2525
TestCommandError,
2626
TestCommandTimeout,
2727
)
28+
from ray_release.file_manager.job_file_manager import JobFileManager
2829
from ray_release.glue import (
2930
command_runner_to_cluster_manager,
3031
run_release_test,
@@ -123,17 +124,37 @@ def __init__(
123124
self.return_dict = this_cluster_manager_return
124125
this_instances["cluster_manager"] = self
125126

126-
class MockCommandRunner(MockReturn, CommandRunner):
127+
class FakeFileManager(JobFileManager):
128+
def __init__(self, cluster_manager: ClusterManager):
129+
super(FakeFileManager, self).__init__(cluster_manager)
130+
131+
def download_from_cloud(
132+
self, key: str, target: str, delete_after_download: bool = False
133+
):
134+
with open(target, "wt") as f:
135+
f.write("fake download content")
136+
137+
def delete(self, key: str, recursive: bool = False):
138+
pass
139+
140+
class MockCommandRunner(MockReturn, AnyscaleJobRunner):
127141
return_dict = self.cluster_manager_return
128142

129143
def __init__(
130144
self,
131145
cluster_manager: ClusterManager,
146+
file_manager: JobFileManager,
132147
working_dir,
133148
sdk=None,
134149
artifact_path: Optional[str] = None,
135150
):
136-
super(MockCommandRunner, self).__init__(cluster_manager, this_tempdir)
151+
super(MockCommandRunner, self).__init__(
152+
cluster_manager,
153+
FakeFileManager(cluster_manager),
154+
this_tempdir,
155+
sdk=this_sdk,
156+
artifact_path=artifact_path,
157+
)
137158
self.return_dict = this_command_runner_return
138159

139160
self.mock_alert_return = None

0 commit comments

Comments
 (0)