From 6f64d9d6dca0c0203dbc44f908e0b09998d86ebb Mon Sep 17 00:00:00 2001 From: gooker_young Date: Fri, 26 Jun 2026 07:43:56 +0800 Subject: [PATCH] bump version to 0.2.3 --- pyproject.toml | 2 +- src/pyflowx/__init__.py | 2 +- tests/cli/test_packtool.py | 19 ++++++++++--------- tests/conftest.py | 16 ++++++++++++++++ 4 files changed, 28 insertions(+), 11 deletions(-) create mode 100644 tests/conftest.py diff --git a/pyproject.toml b/pyproject.toml index 8ebf936..16863cf 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -17,7 +17,7 @@ license = { text = "MIT" } name = "pyflowx" readme = "README.md" requires-python = ">=3.8" -version = "0.2.2" +version = "0.2.3" [project.scripts] autofmt = "pyflowx.cli.autofmt:main" diff --git a/src/pyflowx/__init__.py b/src/pyflowx/__init__.py index 7463118..18691d2 100644 --- a/src/pyflowx/__init__.py +++ b/src/pyflowx/__init__.py @@ -84,7 +84,7 @@ from .runner import CliExitCode, CliRunner from .storage import JSONBackend, MemoryBackend, StateBackend from .task import TaskCmd, TaskEvent, TaskResult, TaskSpec, TaskStatus -__version__ = "0.2.2" +__version__ = "0.2.3" __all__ = [ "IS_LINUX", diff --git a/tests/cli/test_packtool.py b/tests/cli/test_packtool.py index f1079d3..3d07db5 100644 --- a/tests/cli/test_packtool.py +++ b/tests/cli/test_packtool.py @@ -11,9 +11,6 @@ import pyflowx as px from pyflowx.cli import packtool -# ---------------------------------------------------------------------- # -# Fixtures: 确保所有测试都在临时目录执行,不污染项目根目录 -# ---------------------------------------------------------------------- # @pytest.fixture(autouse=True) def packtool_tmp_workdir(tmp_path: Path, monkeypatch: pytest.MonkeyPatch) -> None: """自动切换到临时工作目录,防止测试污染项目根目录. @@ -22,8 +19,6 @@ def packtool_tmp_workdir(tmp_path: Path, monkeypatch: pytest.MonkeyPatch) -> Non tmp_path: pytest 提供的临时目录 monkeypatch: pytest 的 monkeypatch 工具 """ - # 切换工作目录到 tmp_path - monkeypatch.chdir(tmp_path) # Mock DEFAULT_CACHE_DIR 到临时目录 monkeypatch.setattr(packtool, "DEFAULT_CACHE_DIR", str(tmp_path / ".cache" / "pypack")) @@ -109,7 +104,9 @@ class TestInstallEmbedPython: output_dir = tmp_path / "python" # Create a mock cache file that doesn't exist (force download) - with patch("urllib.request.urlretrieve") as mock_urlretrieve, patch("zipfile.ZipFile") as mock_zipfile: + with patch("platform.machine", return_value="x86_64"), patch( + "urllib.request.urlretrieve" + ) as mock_urlretrieve, patch("zipfile.ZipFile") as mock_zipfile: # Mock successful download mock_urlretrieve.return_value = None mock_zip_instance = MagicMock() @@ -134,7 +131,7 @@ class TestInstallEmbedPython: cache_file = cache_dir / "python-3.10.11-embed-amd64.zip" cache_file.write_bytes(b"PK\x03\x04" + b"\x00" * 100) # Minimal ZIP header - with patch("zipfile.ZipFile") as mock_zipfile: + with patch("platform.machine", return_value="x86_64"), patch("zipfile.ZipFile") as mock_zipfile: mock_zip_instance = MagicMock() mock_zipfile.return_value.__enter__.return_value = mock_zip_instance @@ -194,7 +191,9 @@ class TestInstallEmbedPython: """Should handle different Python versions.""" output_dir = tmp_path / "python" - with patch("urllib.request.urlretrieve") as mock_urlretrieve, patch("zipfile.ZipFile") as mock_zipfile: + with patch("platform.machine", return_value="x86_64"), patch( + "urllib.request.urlretrieve" + ) as mock_urlretrieve, patch("zipfile.ZipFile") as mock_zipfile: mock_zip_instance = MagicMock() mock_zipfile.return_value.__enter__.return_value = mock_zip_instance @@ -207,7 +206,9 @@ class TestInstallEmbedPython: """Should create cache directory and file.""" output_dir = tmp_path / "python" - with patch("urllib.request.urlretrieve") as mock_urlretrieve, patch("zipfile.ZipFile") as mock_zipfile: + with patch("platform.machine", return_value="x86_64"), patch( + "urllib.request.urlretrieve" + ) as mock_urlretrieve, patch("zipfile.ZipFile") as mock_zipfile: mock_urlretrieve.return_value = None mock_zip_instance = MagicMock() mock_zipfile.return_value.__enter__.return_value = mock_zip_instance diff --git a/tests/conftest.py b/tests/conftest.py new file mode 100644 index 0000000..f91878c --- /dev/null +++ b/tests/conftest.py @@ -0,0 +1,16 @@ +from __future__ import annotations + +from pathlib import Path + +import pytest + + +@pytest.fixture(autouse=True) +def packtool_tmp_workdir(tmp_path: Path, monkeypatch: pytest.MonkeyPatch) -> None: + """自动切换到临时工作目录,防止测试污染项目根目录. + + Args: + tmp_path: pytest 提供的临时目录 + monkeypatch: pytest 的 monkeypatch 工具 + """ + monkeypatch.chdir(tmp_path)