test/test_spec: init, testing find_build

This commit is contained in:
2025-04-22 22:47:55 +08:00
parent 994f48f408
commit cbdddd21d1

35
test/test_spec.py Normal file
View File

@@ -0,0 +1,35 @@
from pathlib import Path
import pytest
from speccpu import find_build
class TestFindBuild:
def test_find_build_success(self, tmpdir):
# Create a mock directory structure with a build directory
build_parent = Path(tmpdir)
build_dir = build_parent / "build_2023"
build_dir.mkdir()
# Test that find_build correctly identifies the build directory
found_dir = find_build(build_parent)
assert found_dir == build_dir
def test_find_build_multiple_dirs(self, tmpdir):
# Create multiple build directories
build_parent = Path(tmpdir)
build_dir1 = build_parent / "build_2022"
build_dir2 = build_parent / "build_2023"
build_dir1.mkdir()
build_dir2.mkdir()
# Should find the alphabetically first one
found_dir = find_build(build_parent)
assert found_dir == build_dir1
def test_find_build_no_dir(self, tmpdir):
# Test the error case when no build directory exists
build_parent = Path(tmpdir)
with pytest.raises(RuntimeError):
find_build(build_parent)