code: def setup_fake_dataset():
      """Create a fake dataset to avoid opening a file."""
      # flash_extent_density
      fed = (np.arange(10.0).reshape((2, 5)) + 1.0) * 50.0
      fed = (fed + 1.0) / 0.5
      fed = fed.astype(np.int16)
      fed = xr.DataArray(
          fed,
          dims=("y", "x"),
          attrs={
              "scale_factor": 0.5,
              "add_offset": -1.0,
              "_FillValue": 0,
              "units": "Count per nominal    3136 microradian^2 pixel per 1.0 min",
              "grid_mapping": "goes_imager_projection",
              "standard_name": "flash_extent_density",
              "long_name": "Flash extent density",
          },
      )
      dqf = xr.DataArray(
          fed.data.copy().astype(np.uint8),
          dims=("y", "x"),
          attrs={
              "_FillValue": -1,
              "units": "1",
              "grid_mapping": "goes_imager_projection",
              "standard_name": "status_flag",
              "long_name": "GLM data quality flags",
              "flag_meanings": "valid invalid",
          },
      )
      # create a variable that won't be configured to test available_datasets
      not_configured = xr.DataArray(
          fed.data.copy(),
          dims=("y", "x"),
          attrs={
              "scale_factor": 0.5,
              "add_offset": -1.0,
              "_FillValue": 0,
              "units": "1",
              "grid_mapping": "goes_imager_projection",
              "standard_name": "test",
              "long_name": "Test",
          },
      )
      x__ = xr.DataArray(
          range(5),
          attrs={"scale_factor": 2.0, "add_offset": -1.0},
          dims=("x",),
      )
      y__ = xr.DataArray(
          range(2),
          attrs={"scale_factor": -2.0, "add_offset": 1.0},
          dims=("y",),
      )
      proj = xr.DataArray(
          [],
          attrs={
              "semi_major_axis": 1.0,
              "semi_minor_axis": 1.0,
              "perspective_point_height": 1.0,
              "longitude_of_projection_origin": -90.0,
              "latitude_of_projection_origin": 0.0,
              "sweep_angle_axis": "x",
          },
      )
      fake_dataset = xr.Dataset(
          data_vars={
              "flash_extent_density": fed,
              "not_configured": not_configured,
              "DQF": dqf,
              "x": x__,
              "y": y__,
              "goes_imager_projection": proj,
              "nominal_satellite_subpoint_lat": np.array(0.0),
              "nominal_satellite_subpoint_lon": np.array(-89.5),
              "nominal_satellite_height": np.array(35786.02),
          },
          attrs={
              "time_coverage_start": "2017-09-20T17:30:40Z",
              "time_coverage_end": "2017-09-20T17:41:17Z",
              "spatial_resolution": "2km at nadir",
          },
      )
      return fake_dataset
  
file_path: satpy/satpy/tests/reader_tests/test_glm_l2.py
imports: import os
  import unittest
  from unittest import mock
  import numpy
  import xarray
label_desc: Use image node_id 1 for calling a global function with example usage: setup_fake_dataset() and returns: fake_dataset