class_docstr: Test the Scene logic for finding the finest and coarsest area.
class_docstr_tok: ["Test","the","Scene","logic","for","finding","the","finest","and","coarsest","area","."]
docstr: Test 'coarsest_area' and 'finest_area' methods for upright areas.
docstr_tok: ["Test","'coarsest_area","'","and","'finest_area","'","methods","for","upright","areas","."]
code: def test_coarsest_finest_area_different_shape(
      self, coarse_area, fine_area
  ):
      """Test 'coarsest_area' and 'finest_area' methods for upright areas."""
      ds1 = _create_coarest_finest_data_array(
          coarse_area.shape,
          coarse_area,
          {"wavelength": (0.1, 0.2, 0.3)},
      )
      ds2 = _create_coarest_finest_data_array(
          fine_area.shape, fine_area, {"wavelength": (0.4, 0.5, 0.6)}
      )
      ds3 = _create_coarest_finest_data_array(
          fine_area.shape, fine_area, {"wavelength": (0.7, 0.8, 0.9)}
      )
      scn = Scene()
      scn["1"] = ds1
      scn["2"] = ds2
      scn["3"] = ds3
  
      assert scn.coarsest_area() is coarse_area
      assert scn.finest_area() is fine_area
      assert scn.coarsest_area(["2", "3"]) is fine_area
  
imports: import math
  import numpy
  import pytest
  import xarray
  from dask import array
  from satpy import Scene
  from satpy.dataset.dataid import default_id_keys_config
  from satpy.tests.utils import FAKE_FILEHANDLER_END, FAKE_FILEHANDLER_START, make_cid, make_dataid
label_desc: Use image node_id 1 for calling the TestFinestCoarsestArea obj's underlying member method code with example usage: obj.test_coarsest_finest_area_different_shape(coarse_area, fine_area) without return types