|
32 | 32 | GetVersionRequest, |
33 | 33 | GetVersionResponse, |
34 | 34 | Operation, |
| 35 | + RestartModuleRequest, |
| 36 | + RestartModuleResponse, |
35 | 37 | ResourceNamesRequest, |
36 | 38 | ResourceNamesResponse, |
37 | 39 | ResourceStatus, |
|
92 | 94 | machine_part_id="the-machine-part-id", |
93 | 95 | ) |
94 | 96 |
|
| 97 | +MODULE_ID = "id" |
| 98 | +MODULE_NAME = "name" |
| 99 | + |
95 | 100 | GET_VERVSION_RESPONSE = GetVersionResponse( |
96 | 101 | platform="rdk", |
97 | 102 | version="0.2.0", |
@@ -176,6 +181,13 @@ async def Shutdown(stream: Stream[ShutdownRequest, ShutdownResponse]) -> None: |
176 | 181 | response = ShutdownResponse() |
177 | 182 | await stream.send_message(response) |
178 | 183 |
|
| 184 | + async def RestartModule(stream: Stream[RestartModuleRequest, RestartModuleResponse]) -> None: |
| 185 | + request = await stream.recv_message() |
| 186 | + assert request is not None |
| 187 | + assert request.module_name == MODULE_NAME |
| 188 | + assert request.module_id == MODULE_ID |
| 189 | + await stream.send_message(RestartModuleResponse()) |
| 190 | + |
179 | 191 | manager = ResourceManager(resources) |
180 | 192 | service = RobotService(manager) |
181 | 193 | service.FrameSystemConfig = Config |
@@ -549,3 +561,14 @@ async def shutdown_client_mock(self): |
549 | 561 | shutdown_mock.assert_called_once() |
550 | 562 |
|
551 | 563 | await client.close() |
| 564 | + |
| 565 | + async def test_restart_module(self, service: RobotService): |
| 566 | + async with ChannelFor([service]) as channel: |
| 567 | + |
| 568 | + client = await RobotClient.with_channel(channel, RobotClient.Options()) |
| 569 | + |
| 570 | + with mock.patch("viam.robot.client.RobotClient.restart_module") as restart_module_mock: |
| 571 | + await client.restart_module(id=MODULE_ID, name=MODULE_NAME) |
| 572 | + restart_module_mock.assert_called_once() |
| 573 | + |
| 574 | + await client.close() |
0 commit comments