code: def test_osgb_1936():
      crs = CRS("OSGB 1936 / British National Grid")
      param_dict = _to_dict(crs.coordinate_operation)
      expected_cf = {
          "semi_major_axis": crs.ellipsoid.semi_major_metre,
          "semi_minor_axis": crs.ellipsoid.semi_minor_metre,
          "inverse_flattening": crs.ellipsoid.inverse_flattening,
          "reference_ellipsoid_name": "Airy 1830",
          "longitude_of_prime_meridian": 0.0,
          "prime_meridian_name": "Greenwich",
          "geographic_crs_name": "OSGB 1936",
          "horizontal_datum_name": "OSGB 1936",
          "projected_crs_name": "OSGB 1936 / British National Grid",
          "grid_mapping_name": "transverse_mercator",
          "latitude_of_projection_origin": 49.0,
          "longitude_of_central_meridian": -2.0,
          "false_easting": 400000.0,
          "false_northing": -100000.0,
          "scale_factor_at_central_meridian": param_dict[
              "Scale factor at natural origin"
          ],
      }
      if PROJ_LOOSE_VERSION >= version.parse("8.0.1"):
          expected_cf.update(
              geographic_crs_name="OSGB36",
              horizontal_datum_name="Ordnance Survey of Great Britain 1936",
              projected_crs_name="OSGB36 / British National Grid",
          )
      cf_dict = crs.to_cf()
      assert cf_dict.pop("crs_wkt").startswith("PROJCRS[")
      assert cf_dict == expected_cf
      # test roundtrip
      _test_roundtrip(expected_cf, "PROJCRS[")
      # test coordinate system
      assert crs.cs_to_cf() == [
          {
              "axis": "X",
              "long_name": "Easting",
              "standard_name": "projection_x_coordinate",
              "units": "metre",
          },
          {
              "axis": "Y",
              "long_name": "Northing",
              "standard_name": "projection_y_coordinate",
              "units": "metre",
          },
      ]
  
imports: import numpy
  import pytest
  from numpy.testing import assert_almost_equal
  from packaging import version
  from pyproj import CRS
  from pyproj.crs import ProjectedCRS
  from pyproj.crs._cf1x8 import _try_list_if_string
  from pyproj.crs.coordinate_operation import LambertAzimuthalEqualAreaConversion, LambertCylindricalEqualAreaConversion, MercatorAConversion, OrthographicConversion, PolarStereographicAConversion, PolarStereographicBConversion, SinusoidalConversion, StereographicConversion, VerticalPerspectiveConversion
  from pyproj.exceptions import CRSError
  from test.conftest import PROJ_GTE_901, PROJ_LOOSE_VERSION
label_desc: Use image node_id 24 for calling a global function with example usage: test_osgb_1936() without return types