code: def test_ellipsoidal_3d_cs(
      axis, name_0, direction_0, name_1, direction_1
  ):
      vcs = Ellipsoidal3DCS(axis=axis)
      assert len(vcs.axis_list) == 3
      assert vcs.axis_list[0].direction == direction_0
      assert vcs.axis_list[0].name == name_0
      assert vcs.axis_list[0].unit_name == "degree"
      assert vcs.axis_list[1].direction == direction_1
      assert vcs.axis_list[1].name == name_1
      assert vcs.axis_list[1].unit_name == "degree"
      assert vcs.axis_list[2].direction == "up"
      assert vcs.axis_list[2].name == "Ellipsoidal height"
      assert vcs.axis_list[2].unit_name == "metre"
  
file_path: pyproj/test/crs/test_crs_coordinate_system.py
imports: import pytest
  from pyproj.crs.coordinate_system import Cartesian2DCS, Ellipsoidal2DCS, Ellipsoidal3DCS, VerticalCS
  from pyproj.crs.enums import Cartesian2DCSAxis, Ellipsoidal2DCSAxis, Ellipsoidal3DCSAxis, VerticalCSAxis
label_desc: Use image node_id 4 for calling a global function with example usage: test_ellipsoidal_3d_cs(axis, name_0, direction_0, name_1, direction_1) without return types