From f18d90978fd38490decfad26ca865146b7b3d11d Mon Sep 17 00:00:00 2001 From: Tim Camise Date: Mon, 18 Sep 2023 14:33:48 -0700 Subject: [PATCH 1/5] Don't hardcode file directory --- demos/python/sdk_wireless_camera_control/pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/demos/python/sdk_wireless_camera_control/pyproject.toml b/demos/python/sdk_wireless_camera_control/pyproject.toml index dfc1b184..4b4e578e 100644 --- a/demos/python/sdk_wireless_camera_control/pyproject.toml +++ b/demos/python/sdk_wireless_camera_control/pyproject.toml @@ -183,7 +183,7 @@ log_file_level = "DEBUG" log_file_format = "%(threadName)13s: %(name)40s:%(lineno)5d %(asctime)s.%(msecs)03d %(levelname)-8s | %(message)s" log_file_date_format = "%H:%M:%S" filterwarnings = "ignore::DeprecationWarning" -timeout = 10 +# timeout = 10 addopts = [ "-s", "--capture=tee-sys", From cbebfeea1bbcc0879ae97cab867f6fae31ee4390 Mon Sep 17 00:00:00 2001 From: Tim Camise Date: Mon, 18 Sep 2023 14:37:02 -0700 Subject: [PATCH 2/5] Revert debug setting --- demos/python/sdk_wireless_camera_control/pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/demos/python/sdk_wireless_camera_control/pyproject.toml b/demos/python/sdk_wireless_camera_control/pyproject.toml index 4b4e578e..dfc1b184 100644 --- a/demos/python/sdk_wireless_camera_control/pyproject.toml +++ b/demos/python/sdk_wireless_camera_control/pyproject.toml @@ -183,7 +183,7 @@ log_file_level = "DEBUG" log_file_format = "%(threadName)13s: %(name)40s:%(lineno)5d %(asctime)s.%(msecs)03d %(levelname)-8s | %(message)s" log_file_date_format = "%H:%M:%S" filterwarnings = "ignore::DeprecationWarning" -# timeout = 10 +timeout = 10 addopts = [ "-s", "--capture=tee-sys", From d3f4034acc4bc390b29edd64c5fcc01b000ef372 Mon Sep 17 00:00:00 2001 From: Tim Camise Date: Thu, 21 Sep 2023 13:04:43 -0700 Subject: [PATCH 3/5] Fix set setting URL and add unit tes --- .../sdk_wireless_camera_control/open_gopro/api/builders.py | 2 +- .../tests/unit/test_http_commands.py | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/demos/python/sdk_wireless_camera_control/open_gopro/api/builders.py b/demos/python/sdk_wireless_camera_control/open_gopro/api/builders.py index 980b75d6..630d8e10 100644 --- a/demos/python/sdk_wireless_camera_control/open_gopro/api/builders.py +++ b/demos/python/sdk_wireless_camera_control/open_gopro/api/builders.py @@ -991,9 +991,9 @@ async def set(self, value: ValueType) -> GoProResp: Returns: GoProResp: Status of set """ + value = value.value if isinstance(value, enum.Enum) else value url = self._endpoint.format(int(self._identifier), value) logger.info(Logger.build_log_tx_str(pretty_print(self._as_dict(value=value, endpoint=url)))) - value = value.value if isinstance(value, enum.Enum) else value # Send to camera if response := await self._communicator._http_get( url, diff --git a/demos/python/sdk_wireless_camera_control/tests/unit/test_http_commands.py b/demos/python/sdk_wireless_camera_control/tests/unit/test_http_commands.py index 35bc0b3f..a51c12ee 100644 --- a/demos/python/sdk_wireless_camera_control/tests/unit/test_http_commands.py +++ b/demos/python/sdk_wireless_camera_control/tests/unit/test_http_commands.py @@ -8,6 +8,7 @@ import pytest from open_gopro.gopro_base import GoProBase +from open_gopro import Params camera_file = "100GOPRO/XXX.mp4" @@ -17,6 +18,10 @@ async def test_get_with_no_params(mock_wifi_communicator: GoProBase): response = await mock_wifi_communicator.http_command.get_media_list() assert response.url == "gopro/media/list" +@pytest.mark.asyncio +async def test_set_setting(mock_wifi_communicator: GoProBase): + response = await mock_wifi_communicator.http_setting.fps.set(Params.FPS.FPS_100) + assert response.url == "gopro/camera/setting?setting=3&option=2" @pytest.mark.asyncio async def test_get_with_params(mock_wifi_communicator: GoProBase): From bdead00c74c01ea03440436059a0458f210291f6 Mon Sep 17 00:00:00 2001 From: Tim Camise Date: Thu, 21 Sep 2023 13:12:58 -0700 Subject: [PATCH 4/5] Update changelog --- demos/python/sdk_wireless_camera_control/docs/changelog.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/demos/python/sdk_wireless_camera_control/docs/changelog.rst b/demos/python/sdk_wireless_camera_control/docs/changelog.rst index 283e4358..6da5f54d 100644 --- a/demos/python/sdk_wireless_camera_control/docs/changelog.rst +++ b/demos/python/sdk_wireless_camera_control/docs/changelog.rst @@ -13,6 +13,7 @@ Unreleased ---------- * Fix BLE notifications not being routed correctly * Don't hardcode media directory. Also append directory to filenames in media list. +* Fix malformed Set Setting HTTP url 0.14.0 (September-13-2022) -------------------------- From 5e597b566eaa0cee5714324b44d58307bfef5de6 Mon Sep 17 00:00:00 2001 From: Tim Camise Date: Thu, 21 Sep 2023 13:17:52 -0700 Subject: [PATCH 5/5] Fix formatting --- .../tests/unit/test_http_commands.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/demos/python/sdk_wireless_camera_control/tests/unit/test_http_commands.py b/demos/python/sdk_wireless_camera_control/tests/unit/test_http_commands.py index a51c12ee..c1a52169 100644 --- a/demos/python/sdk_wireless_camera_control/tests/unit/test_http_commands.py +++ b/demos/python/sdk_wireless_camera_control/tests/unit/test_http_commands.py @@ -7,8 +7,8 @@ import pytest -from open_gopro.gopro_base import GoProBase from open_gopro import Params +from open_gopro.gopro_base import GoProBase camera_file = "100GOPRO/XXX.mp4" @@ -18,11 +18,13 @@ async def test_get_with_no_params(mock_wifi_communicator: GoProBase): response = await mock_wifi_communicator.http_command.get_media_list() assert response.url == "gopro/media/list" + @pytest.mark.asyncio async def test_set_setting(mock_wifi_communicator: GoProBase): response = await mock_wifi_communicator.http_setting.fps.set(Params.FPS.FPS_100) assert response.url == "gopro/camera/setting?setting=3&option=2" + @pytest.mark.asyncio async def test_get_with_params(mock_wifi_communicator: GoProBase): zoom = 99