From e7a1388e609e6b765904672fdf799817df5f3cad Mon Sep 17 00:00:00 2001 From: randhid Date: Mon, 19 Aug 2024 18:59:36 -0400 Subject: [PATCH 1/4] remove analog_names and digital interrupt _names --- src/viam/components/board/board.py | 37 ------------------------------ 1 file changed, 37 deletions(-) diff --git a/src/viam/components/board/board.py b/src/viam/components/board/board.py index 0f8ab1971..31d87252c 100644 --- a/src/viam/components/board/board.py +++ b/src/viam/components/board/board.py @@ -364,43 +364,6 @@ async def gpio_pin_by_name(self, name: str) -> GPIOPin: """ ... - @abc.abstractmethod - async def analog_names(self) -> List[str]: - """ - Get the names of all known analog readers and/or writers. - - :: - - my_board = Board.from_robot(robot=robot, name="my_board") - - # Get the name of every Analog configured on the board. - names = await my_board.analog_names() - - Returns: - List[str]: The list of names of all known analog readers/writers. - - For more information, see `Board component `_. - """ - ... - - @abc.abstractmethod - async def digital_interrupt_names(self) -> List[str]: - """ - Get the names of all known digital interrupts. - - :: - - my_board = Board.from_robot(robot=robot, name="my_board") - - # Get the name of every DigitalInterrupt configured on the board. - names = await my_board.digital_interrupt_names() - - Returns: - List[str]: The names of the digital interrupts. - - For more information, see `Board component `_. - """ - ... @abc.abstractmethod async def set_power_mode( From 92f6e7f8c979ea3cf8c5702a06aae67951ab0fe6 Mon Sep 17 00:00:00 2001 From: randhid Date: Mon, 19 Aug 2024 19:04:44 -0400 Subject: [PATCH 2/4] remove status analog names caller --- src/viam/components/board/__init__.py | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/src/viam/components/board/__init__.py b/src/viam/components/board/__init__.py index bb54156b1..348434e7f 100644 --- a/src/viam/components/board/__init__.py +++ b/src/viam/components/board/__init__.py @@ -13,18 +13,7 @@ async def create_status(component: Board) -> Status: - (analog_names, digital_interrupt_names) = await asyncio.gather(component.analog_names(), component.digital_interrupt_names()) analogs, digital_interrupts = {}, {} - for x in analog_names: - analog = await component.analog_by_name(x) - read = await analog.read() - analogs[x] = read.value - - for y in digital_interrupt_names: - digital_interrupt = await component.digital_interrupt_by_name(y) - val = await digital_interrupt.value() - digital_interrupts[y] = val - s = BoardStatus(analogs=analogs, digital_interrupts=digital_interrupts) return Status(name=Board.get_resource_name(component.name), status=message_to_struct(s)) From b6645f245a737c62628cd3e44663ac0cc601c653 Mon Sep 17 00:00:00 2001 From: randhid Date: Mon, 19 Aug 2024 19:23:20 -0400 Subject: [PATCH 3/4] lint --- src/viam/components/board/board.py | 1 - 1 file changed, 1 deletion(-) diff --git a/src/viam/components/board/board.py b/src/viam/components/board/board.py index 31d87252c..90cb16f60 100644 --- a/src/viam/components/board/board.py +++ b/src/viam/components/board/board.py @@ -364,7 +364,6 @@ async def gpio_pin_by_name(self, name: str) -> GPIOPin: """ ... - @abc.abstractmethod async def set_power_mode( self, mode: PowerMode.ValueType, duration: Optional[timedelta] = None, *, timeout: Optional[float] = None, **kwargs From 11366cf2208ef93598dbe6f53adf22db2723ec0e Mon Sep 17 00:00:00 2001 From: randhid Date: Mon, 19 Aug 2024 19:28:10 -0400 Subject: [PATCH 4/4] hopefully fix tests --- tests/test_board.py | 32 -------------------------------- 1 file changed, 32 deletions(-) diff --git a/tests/test_board.py b/tests/test_board.py index 267a8f7bd..023e9ccd9 100644 --- a/tests/test_board.py +++ b/tests/test_board.py @@ -92,38 +92,12 @@ async def test_gpio_pin_by_name(self, board: MockBoard): pin = await board.gpio_pin_by_name("pin1") assert pin.name == "pin1" - @pytest.mark.asyncio - async def test_analog_names(self, board: MockBoard): - names = await board.analog_names() - assert names == ["reader1", "writer1"] - - @pytest.mark.asyncio - async def test_digital_interrupt_names(self, board: MockBoard): - names = await board.digital_interrupt_names() - assert names == ["interrupt1"] - @pytest.mark.asyncio async def test_do(self, board: MockBoard): command = {"command": "args"} resp = await board.do_command(command) assert resp == {"command": command} - @pytest.mark.asyncio - async def test_status(self, board: MockBoard): - status = await create_status(board) - read1 = await board.analogs["reader1"].read() - # Analog writers typically don't have read statuses, but the mock board - # doesn't make that distinction. - read2 = await board.analogs["writer1"].read() - val = await board.digital_interrupts["interrupt1"].value() - assert status.name == MockBoard.get_resource_name(board.name) - assert status.status == message_to_struct( - BoardStatus( - analogs={"reader1": int(read1.value), "writer1": int(read2.value)}, - digital_interrupts={"interrupt1": val}, - ) - ) - @pytest.mark.asyncio async def test_set_power_mode(self, board: MockBoard): pm_mode = PowerMode.POWER_MODE_OFFLINE_DEEP @@ -391,9 +365,6 @@ async def test_analog_names(self, board: MockBoard, service: BoardRPCService): reader = await client.analog_by_name("reader1") assert reader.name == "reader1" - names = await client.analog_names() - assert names == ["reader1"] - @pytest.mark.asyncio async def test_digital_interrupt_names(self, board: MockBoard, service: BoardRPCService): async with ChannelFor([service]) as channel: @@ -402,9 +373,6 @@ async def test_digital_interrupt_names(self, board: MockBoard, service: BoardRPC interrupt = await client.digital_interrupt_by_name("interrupt1") assert interrupt.name == "interrupt1" - names = await client.digital_interrupt_names() - assert names == ["interrupt1"] - @pytest.mark.asyncio async def test_do(self, board: MockBoard, service: BoardRPCService): async with ChannelFor([service]) as channel: