Coverage for core / src / sensorkit / cli / device.py: 0%
22 statements
« prev ^ index » next coverage.py v7.13.5, created at 2026-09-02 00:03 +0000
« prev ^ index » next coverage.py v7.13.5, created at 2026-09-02 00:03 +0000
1# SPDX-License-Identifier: Apache-2.0
2import asyncclick as click
4from sensorkit.cli.utils import entity_option, with_kit
7@click.group("device")
8async def device_group():
9 """Device management commands."""
11@device_group.command("connect")
12@entity_option(required=True)
13@with_kit
14async def connect_device(kit, entity: str):
15 """Connect to a device."""
16 from sensorkit.std import Connect
18 await kit.device(entity).command(Connect())
20@device_group.command("disconnect")
21@entity_option(required=True)
22@with_kit
23async def disconnect_device(kit, entity: str):
24 """Disconnect from a device."""
25 from sensorkit.std import Disconnect
27 await kit.device(entity).command(Disconnect())
29@device_group.command("abort")
30@entity_option(required=True)
31@with_kit
32async def stop_device(kit, entity: str):
33 """Abort any in-progress motion on a device."""
34 from sensorkit.std import Stop
36 await kit.device(entity).command(Stop())