shuishen
8 days ago 3435f33697f40c956af9be72700fead2980fea45
tests/test_serve_workbench_console.py
@@ -123,6 +123,28 @@
            self.assertEqual(result["name"], "corridor.las")
            self.assertEqual(staged.read_bytes(), b"las-bytes")
    def test_model_inference_rejects_empty_and_incomplete_las_uploads(self) -> None:
        with tempfile.TemporaryDirectory() as temp_dir:
            root = Path(temp_dir)
            empty = root / "empty.ply"
            empty.write_bytes(b"")
            with self.assertRaisesRegex(MODULE.ApiError, "文件为空"):
                MODULE.validate_pointcloud_model_input(empty)
            incomplete = root / "tile_000_000.las"
            incomplete.write_bytes(b"las-bytes")
            with self.assertRaisesRegex(MODULE.ApiError, "文件不完整"):
                MODULE.validate_pointcloud_model_input(incomplete)
            empty_las = root / "empty.las"
            header = bytearray(227)
            header[:4] = b"LASF"
            header[24:26] = bytes((1, 2))
            header[94:96] = (227).to_bytes(2, "little")
            empty_las.write_bytes(header)
            with self.assertRaisesRegex(MODULE.ApiError, "没有点记录"):
                MODULE.validate_pointcloud_model_input(empty_las)
    def test_photo_reconstruction_request_requires_three_to_thirty_photos(self) -> None:
        handler = self.make_handler()
        with self.assertRaisesRegex(MODULE.ApiError, "at least three"):