"""Nox sessions.""" from pathlib import Path import nox ROOT_DIR = Path(__file__).parent.parent.parent PLATFORM_DIR = ROOT_DIR / "openbb_platform" PLATFORM_TESTS = [str(PLATFORM_DIR / p) for p in ["tests", "core", "providers", "extensions"]] CLI_DIR = ROOT_DIR / "cli" CLI_TESTS = CLI_DIR / "tests" @nox.session(python=["3.10", "3.11", "3.12", "3.13", "3.14"]) def unit_test_platform(session): """Run the test suite.""" session.install("poetry") session.run( "python", str(PLATFORM_DIR / "dev_install.py"), "-e", external=True, ) session.install("pytest") session.install("pytest-cov") session.run( "pytest", *PLATFORM_TESTS, f"--cov={PLATFORM_DIR}", "-m", "not integration", ) @nox.session(python=["3.10", "3.11", "3.12", "3.13", "3.14"]) def unit_test_cli(session): """Run the test suite.""" session.install("poetry") session.run( "python", str(PLATFORM_DIR / "dev_install.py"), "-e", "--cli", external=True, ) session.install("pytest") session.install("pytest-cov") session.run("pytest", CLI_TESTS, f"--cov={CLI_DIR}")