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)