code: def _generate_gis_type_sanitization_test_cases() -> (
      list[tuple[str, int, Any, dict[str, Any]]]
  ):
      if not ocient_is_installed():
          return []
  
      from pyocient import (
          _STLinestring,
          _STPoint,
          _STPolygon,
          TypeCodes,
      )
  
      return [
          (
              "empty_point",
              TypeCodes.ST_POINT,
              _STPoint(long=float("inf"), lat=float("inf")),
              {
                  "geometry": None,
                  "properties": {},
                  "type": "Feature",
              },
          ),
          (
              "valid_point",
              TypeCodes.ST_POINT,
              _STPoint(long=float(33), lat=float(45)),
              {
                  "geometry": {
                      "coordinates": [33.0, 45.0],
                      "type": "Point",
                  },
                  "properties": {},
                  "type": "Feature",
              },
          ),
          (
              "empty_line",
              TypeCodes.ST_LINESTRING,
              _STLinestring([]),
              {
                  "geometry": None,
                  "properties": {},
                  "type": "Feature",
              },
          ),
          (
              "valid_line",
              TypeCodes.ST_LINESTRING,
              _STLinestring(
                  [
                      _STPoint(long=t[0], lat=t[1])
                      for t in [(1, 0), (1, 1), (1, 2)]
                  ]
              ),
              {
                  "geometry": {
                      "coordinates": [[1, 0], [1, 1], [1, 2]],
                      "type": "LineString",
                  },
                  "properties": {},
                  "type": "Feature",
              },
          ),
          (
              "downcast_line_to_point",
              TypeCodes.ST_LINESTRING,
              _STLinestring(
                  [_STPoint(long=t[0], lat=t[1]) for t in [(1, 0)]]
              ),
              {
                  "geometry": {
                      "coordinates": [1, 0],
                      "type": "Point",
                  },
                  "properties": {},
                  "type": "Feature",
              },
          ),
          (
              "empty_polygon",
              TypeCodes.ST_POLYGON,
              _STPolygon(exterior=[], holes=[]),
              {
                  "geometry": None,
                  "properties": {},
                  "type": "Feature",
              },
          ),
          (
              "valid_polygon_no_holes",
              TypeCodes.ST_POLYGON,
              _STPolygon(
                  exterior=[
                      _STPoint(long=t[0], lat=t[1])
                      for t in [(1, 0), (1, 1), (1, 0)]
                  ],
                  holes=[],
              ),
              {
                  "geometry": {
                      "coordinates": [[[1, 0], [1, 1], [1, 0]]],
                      "type": "Polygon",
                  },
                  "properties": {},
                  "type": "Feature",
              },
          ),
          (
              "valid_polygon_with_holes",
              TypeCodes.ST_POLYGON,
              _STPolygon(
                  exterior=[
                      _STPoint(long=t[0], lat=t[1])
                      for t in [(1, 0), (1, 1), (1, 0)]
                  ],
                  holes=[
                      [
                          _STPoint(long=t[0], lat=t[1])
                          for t in [(2, 0), (2, 1), (2, 0)]
                      ],
                      [
                          _STPoint(long=t[0], lat=t[1])
                          for t in [(3, 0), (3, 1), (3, 0)]
                      ],
                  ],
              ),
              {
                  "geometry": {
                      "coordinates": [
                          [[1, 0], [1, 1], [1, 0]],
                          [[2, 0], [2, 1], [2, 0]],
                          [[3, 0], [3, 1], [3, 0]],
                      ],
                      "type": "Polygon",
                  },
                  "properties": {},
                  "type": "Feature",
              },
          ),
          (
              "downcast_poly_to_point",
              TypeCodes.ST_POLYGON,
              _STPolygon(
                  exterior=[
                      _STPoint(long=t[0], lat=t[1]) for t in [(1, 0)]
                  ],
                  holes=[],
              ),
              {
                  "geometry": {
                      "coordinates": [1, 0],
                      "type": "Point",
                  },
                  "properties": {},
                  "type": "Feature",
              },
          ),
          (
              "downcast_poly_to_line",
              TypeCodes.ST_POLYGON,
              _STPolygon(
                  exterior=[
                      _STPoint(long=t[0], lat=t[1])
                      for t in [(1, 0), (0, 1)]
                  ],
                  holes=[],
              ),
              {
                  "geometry": {
                      "coordinates": [[1, 0], [0, 1]],
                      "type": "LineString",
                  },
                  "properties": {},
                  "type": "Feature",
              },
          ),
      ]
  
file_path: superset/tests/unit_tests/db_engine_specs/test_ocient.py
imports: from typing import Any, Callable
  import pytest
  from superset.db_engine_specs.ocient import _point_list_to_wkt, _sanitized_ocient_type_codes
  from superset.errors import ErrorLevel, SupersetError, SupersetErrorType
label_desc: Use image node_id 3 for calling a global function with example usage: _generate_gis_type_sanitization_test_cases() and returns: list, list