diff --git a/pyproject.toml b/pyproject.toml index a535722..fca4aff 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -18,7 +18,7 @@ dependencies = [ "shellingham>=1.5", "rich>=13.0.0", "pyyaml>=6.0.0", - "kaleido-sdk==0.1.3", + "kaleido-sdk==0.1.5", ] [project.scripts] @@ -48,3 +48,10 @@ exclude = ["install.py"] [tool.ruff.lint] select = ["E", "F", "I", "N", "W", "UP"] ignore = ["E501"] + +[dependency-groups] +dev = [ + "pytest>=9.0.2", + "pytest-asyncio>=1.3.0", + "pytest-mock>=3.15.1", +] diff --git a/tests/conftest.py b/tests/conftest.py index 636caf0..37d53c8 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -116,6 +116,7 @@ def mock_client(mocker): "kaleido_cli.commands.market.get_client", "kaleido_cli.commands.wallet.get_client", "kaleido_cli.commands.swap.get_client", + "kaleido_cli.commands.node_swap.get_client", "kaleido_cli.commands.asset.get_client", "kaleido_cli.commands.channel.get_client", "kaleido_cli.commands.node.get_client", diff --git a/tests/test_cmd_market.py b/tests/test_cmd_market.py index a400b79..ea2aeb0 100644 --- a/tests/test_cmd_market.py +++ b/tests/test_cmd_market.py @@ -11,11 +11,12 @@ # --------------------------------------------------------------------------- -def _asset(ticker="BTC", name="Bitcoin", protocol_ids=None, precision=8): +def _asset(ticker="BTC", name="Bitcoin", protocol_ids=None, precision=8, asset_id=None): m = MagicMock() m.ticker = ticker m.name = name m.protocol_ids = protocol_ids or {"RGB": f"rgb:{ticker.lower()}"} + m.asset_id = asset_id or ("BTC" if ticker.upper() == "BTC" else f"rgb:{ticker.lower()}") m.precision = precision return m diff --git a/tests/test_cmd_swap.py b/tests/test_cmd_swap.py index 8ecc347..f192977 100644 --- a/tests/test_cmd_swap.py +++ b/tests/test_cmd_swap.py @@ -15,11 +15,13 @@ def _pair(base_ticker="BTC", quote_ticker="USDT"): p = MagicMock() p.base = MagicMock( ticker=base_ticker, + asset_id="BTC" if base_ticker.upper() == "BTC" else f"rgb:{base_ticker.lower()}", protocol_ids={"RGB": f"rgb:{base_ticker.lower()}"}, precision=8, ) p.quote = MagicMock( ticker=quote_ticker, + asset_id="BTC" if quote_ticker.upper() == "BTC" else f"rgb:{quote_ticker.lower()}", protocol_ids={"RGB": f"rgb:{quote_ticker.lower()}"}, precision=6, ) @@ -183,7 +185,7 @@ def test_swap_status(runner, mock_client): # --------------------------------------------------------------------------- -# swap node-swaps +# node swap list # --------------------------------------------------------------------------- @@ -198,7 +200,7 @@ def test_swap_node_swaps_table(runner, mock_client): resp.model_dump.return_value = {} mock_client.rln.list_swaps.return_value = resp - result = runner.invoke(app, ["swap", "node", "list"]) + result = runner.invoke(app, ["node", "swap", "list"]) assert result.exit_code == 0 @@ -208,7 +210,7 @@ def test_swap_node_swaps_empty(runner, mock_client): resp.maker = [] mock_client.rln.list_swaps.return_value = resp - result = runner.invoke(app, ["swap", "node", "list"]) + result = runner.invoke(app, ["node", "swap", "list"]) assert result.exit_code == 0 diff --git a/uv.lock b/uv.lock index 6b747f1..f3d4e57 100644 --- a/uv.lock +++ b/uv.lock @@ -180,9 +180,16 @@ dev = [ { name = "pytest-asyncio" }, ] +[package.dev-dependencies] +dev = [ + { name = "pytest" }, + { name = "pytest-asyncio" }, + { name = "pytest-mock" }, +] + [package.metadata] requires-dist = [ - { name = "kaleido-sdk", specifier = "==0.1.3" }, + { name = "kaleido-sdk", specifier = "==0.1.5" }, { name = "pytest", marker = "extra == 'dev'", specifier = ">=8.0.0" }, { name = "pytest-asyncio", marker = "extra == 'dev'", specifier = ">=0.23.0" }, { name = "pyyaml", specifier = ">=6.0.0" }, @@ -192,18 +199,25 @@ requires-dist = [ ] provides-extras = ["dev"] +[package.metadata.requires-dev] +dev = [ + { name = "pytest", specifier = ">=9.0.2" }, + { name = "pytest-asyncio", specifier = ">=1.3.0" }, + { name = "pytest-mock", specifier = ">=3.15.1" }, +] + [[package]] name = "kaleido-sdk" -version = "0.1.3" +version = "0.1.5" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "httpx" }, { name = "pydantic", extra = ["email"] }, { name = "websockets" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/f5/84/3d7bad2141a486f34553fcff5462246ad9e7dd7ff57823a3b9549163245c/kaleido_sdk-0.1.3.tar.gz", hash = "sha256:26e3e816d92144219cbe66bd88a20ef2f0eb43ec302c773017efaf9439134746", size = 119639, upload-time = "2026-04-07T13:13:09.084462Z" } +sdist = { url = "https://files.pythonhosted.org/packages/57/a1/87b8bc7435d8cac7c0228bc463ce303062df2146a0b0405764401318572f/kaleido_sdk-0.1.5.tar.gz", hash = "sha256:6d79d62679ac5975f0042e42ea7a4f3e63589e403848d2adba7faafc79fb68d5", size = 119649, upload-time = "2026-04-08T18:53:34.303Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/6a/a6/b6ee9495f3326ba85fe77740d5f031f6b04f5dda42b90f09d193bc38e312/kaleido_sdk-0.1.3-py3-none-any.whl", hash = "sha256:df79a0edb7bdeb7e720f07b450eab1f46adf4e6802ad6b5792fdb92c381e9904", size = 46893, upload-time = "2026-04-07T13:13:08.034370Z" }, + { url = "https://files.pythonhosted.org/packages/c9/5e/f50b2e0ca429c3b2fbd31b7cd3463d1110bf5b3b806f48e15d5557c38304/kaleido_sdk-0.1.5-py3-none-any.whl", hash = "sha256:efb003e33ca0c196e643ed5d350467d9eb1fced00f4317c8a845d78112f1fc0d", size = 46908, upload-time = "2026-04-08T18:53:33.238Z" }, ] [[package]] @@ -424,6 +438,18 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/e5/35/f8b19922b6a25bc0880171a2f1a003eaeb93657475193ab516fd87cac9da/pytest_asyncio-1.3.0-py3-none-any.whl", hash = "sha256:611e26147c7f77640e6d0a92a38ed17c3e9848063698d5c93d5aa7aa11cebff5", size = 15075, upload-time = "2025-11-10T16:07:45.537Z" }, ] +[[package]] +name = "pytest-mock" +version = "3.15.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pytest" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/68/14/eb014d26be205d38ad5ad20d9a80f7d201472e08167f0bb4361e251084a9/pytest_mock-3.15.1.tar.gz", hash = "sha256:1849a238f6f396da19762269de72cb1814ab44416fa73a8686deac10b0d87a0f", size = 34036, upload-time = "2025-09-16T16:37:27.081Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/5a/cc/06253936f4a7fa2e0f48dfe6d851d9c56df896a9ab09ac019d70b760619c/pytest_mock-3.15.1-py3-none-any.whl", hash = "sha256:0a25e2eb88fe5168d535041d09a4529a188176ae608a6d249ee65abc0949630d", size = 10095, upload-time = "2025-09-16T16:37:25.734Z" }, +] + [[package]] name = "pyyaml" version = "6.0.3"