feat: consolidate legacy workflows into gyxx-flow

This commit is contained in:
2026-07-28 14:51:15 +08:00
commit c23b62a8c8
374 changed files with 132990 additions and 0 deletions
+58
View File
@@ -0,0 +1,58 @@
from __future__ import annotations
import os
import shutil
import subprocess
import sys
from pathlib import Path
PROJECT_ROOT = Path(__file__).resolve().parents[1]
SOURCE_ROOT = PROJECT_ROOT / "src"
def _environment_with_source() -> dict[str, str]:
environment = os.environ.copy()
existing_pythonpath = environment.get("PYTHONPATH")
paths = [str(SOURCE_ROOT)]
if existing_pythonpath:
paths.append(existing_pythonpath)
environment["PYTHONPATH"] = os.pathsep.join(paths)
return environment
def _assert_successful_help(result: subprocess.CompletedProcess[str]) -> None:
assert result.returncode == 0, result.stderr
assert "usage:" in result.stdout.lower()
assert "GYXX Flow" in result.stdout
def test_python_module_help_has_no_filesystem_side_effects(tmp_path: Path) -> None:
result = subprocess.run(
[sys.executable, "-m", "gyxx_flow", "--help"],
cwd=tmp_path,
env=_environment_with_source(),
capture_output=True,
text=True,
check=False,
)
_assert_successful_help(result)
assert list(tmp_path.iterdir()) == []
def test_installed_console_script_help_has_no_filesystem_side_effects(
tmp_path: Path,
) -> None:
executable = shutil.which("gyxx", path=str(Path(sys.executable).parent))
assert executable is not None, "The installed gyxx console script was not found"
result = subprocess.run(
[executable, "--help"],
cwd=tmp_path,
capture_output=True,
text=True,
check=False,
)
_assert_successful_help(result)
assert list(tmp_path.iterdir()) == []