class_docstr: Main test class for the LI L2 reader.
class_docstr_tok: ["Main","test","class","for","the","LI","L2","reader","."]
docstr: Compare daskified coords generation results with non-daskified.
docstr_tok: ["Compare","daskified","coords","generation","results","with","non-daskified","."]
code: def test_coords_generation(self, filetype_infos):
      """Compare daskified coords generation results with non-daskified."""
      # Prepare dummy (but somewhat realistic) arrays of azimuth/elevation values.
      products = ["li_l2_af_nc", "li_l2_afr_nc", "li_l2_afa_nc"]
  
      for prod in products:
          handler = LIL2NCFileHandler(
              "filename",
              {},
              extract_filetype_info(filetype_infos, prod),
          )
  
          # Get azimuth/elevation arrays from handler
          azimuth = handler.get_measured_variable(
              handler.swath_coordinates["azimuth"]
          )
          azimuth = handler.apply_use_rescaling(azimuth)
  
          elevation = handler.get_measured_variable(
              handler.swath_coordinates["elevation"]
          )
          elevation = handler.apply_use_rescaling(elevation)
  
          # Initialize proj_dict
          proj_var = handler.swath_coordinates["projection"]
          geos_proj = handler.get_measured_variable(
              proj_var, fill_value=None
          )
          major_axis = float(geos_proj.attrs["semi_major_axis"])
          point_height = 35786400.0  # float(geos_proj.attrs["perspective_point_height"])
          inv_flattening = float(geos_proj.attrs["inverse_flattening"])
          lon_0 = float(
              geos_proj.attrs["longitude_of_projection_origin"]
          )
          sweep = str(geos_proj.attrs["sweep_angle_axis"])
          proj_dict = {
              "a": major_axis,
              "lon_0": lon_0,
              "h": point_height,
              "rf": inv_flattening,
              "proj": "geos",
              "units": "m",
              "sweep": sweep,
          }
  
          # Compute reference values
          projection = Proj(proj_dict)
          azimuth_vals = azimuth.values * point_height
          elevation_vals = elevation.values * point_height
          lon_ref, lat_ref = projection(
              azimuth_vals, elevation_vals, inverse=True
          )
          # Convert to float32:
          lon_ref = lon_ref.astype(np.float32)
          lat_ref = lat_ref.astype(np.float32)
  
          handler.generate_coords_from_scan_angles()
          lon = handler.internal_variables["longitude"].values
          lat = handler.internal_variables["latitude"].values
  
          # Compare the arrays, should be the same:
          np.testing.assert_equal(lon, lon_ref)
          np.testing.assert_equal(lat, lat_ref)
  
imports: import os
  from datetime import datetime
  from unittest import mock
  import numpy
  import pytest
  import xarray
  from pyproj import Proj
  from satpy._config import config_search_paths
  from satpy.readers.li_base_nc import LINCFileHandler
  from satpy.readers.li_l2_nc import LI_GRID_SHAPE, LIL2NCFileHandler
  from satpy.readers.yaml_reader import load_yaml_configs
  from satpy.tests.reader_tests._li_test_utils import FakeLIFileHandlerBase, extract_filetype_info, get_product_schema, products_dict
  from satpy.tests.utils import make_dataid
label_desc: Use image node_id 31 for calling the TestLIL2 obj's underlying member method code with example usage: obj.test_coords_generation(filetype_infos) without return types