from __future__ import annotations import sys import tempfile import unittest from pathlib import Path import laspy sys.path.insert(0, str(Path(__file__).resolve().parents[1])) from apply_pointcloud_semantic_model import load_cloud # noqa: E402 class ApplyPointCloudSemanticModelTests(unittest.TestCase): def test_empty_las_reports_a_clear_input_error(self) -> None: with tempfile.TemporaryDirectory() as directory: source = Path(directory) / "empty.las" laspy.LasData(laspy.LasHeader(point_format=3, version="1.2")).write(source) with self.assertRaisesRegex(ValueError, "没有可读取的点"): load_cloud(source) if __name__ == "__main__": unittest.main()