code: def fixture_fake_dataset():
      """Create fake dataset."""
      count_ir = da.linspace(0, 255, 4, dtype=np.uint8).reshape(2, 2)
      count_wv = da.linspace(0, 255, 4, dtype=np.uint8).reshape(2, 2)
      count_vis = da.linspace(0, 255, 16, dtype=np.uint8).reshape(4, 4)
      sza = da.from_array(
          np.array([[45, 90], [0, 45]], dtype=np.float32)
      )
      mask = da.from_array(
          np.array(
              [
                  [0, 0, 0, 0],
                  [0, 0, 0, 0],
                  [0, 0, 1, 0],  # 1 = "invalid"
                  [0, 0, 0, 0],
              ],
              dtype=np.uint8,
          )
      )
      time = np.arange(4) * 60 * 60 * 1e9
      time = time.astype("datetime64[ns]").reshape(2, 2)
      ds = xr.Dataset(
          data_vars={
              "count_vis": (("y", "x"), count_vis),
              "count_wv": (("y_ir_wv", "x_ir_wv"), count_wv),
              "count_ir": (("y_ir_wv", "x_ir_wv"), count_ir),
              "toa_bidirectional_reflectance_vis": vis_refl_exp / 100,
              "u_independent_toa_bidirectional_reflectance": u_vis_refl_exp
              / 100,
              "quality_pixel_bitmask": (("y", "x"), mask),
              "solar_zenith_angle": (("y_tie", "x_tie"), sza),
              "time_ir_wv": (("y_ir_wv", "x_ir_wv"), time),
              "a_ir": -5.0,
              "b_ir": 1.0,
              "bt_a_ir": 10.0,
              "bt_b_ir": -1000.0,
              "a_wv": -0.5,
              "b_wv": 0.05,
              "bt_a_wv": 10.0,
              "bt_b_wv": -2000.0,
              "years_since_launch": 20.0,
              "a0_vis": 1.0,
              "a1_vis": 0.01,
              "a2_vis": -0.0001,
              "mean_count_space_vis": 1.0,
              "distance_sun_earth": 1.0,
              "solar_irradiance_vis": 650.0,
              "sub_satellite_longitude_start": 57.1,
              "sub_satellite_longitude_end": np.nan,
              "sub_satellite_latitude_start": np.nan,
              "sub_satellite_latitude_end": 0.1,
          },
          coords={
              "y": [1, 2, 3, 4],
              "x": [1, 2, 3, 4],
              "y_ir_wv": [1, 2],
              "x_ir_wv": [1, 2],
              "y_tie": [1, 2],
              "x_tie": [1, 2],
          },
          attrs={"foo": "bar"},
      )
      ds["count_ir"].attrs["ancillary_variables"] = "a_ir b_ir"
      ds["count_wv"].attrs["ancillary_variables"] = "a_wv b_wv"
      return ds
  
imports: from __future__ import annotations
  import os
  from unittest import mock
  import dask.array
  import numpy
  import pytest
  import xarray
  from pyproj import CRS
  from pyresample.geometry import AreaDefinition
  from satpy.readers.mviri_l1b_fiduceo_nc import ALTITUDE, EQUATOR_RADIUS, POLE_RADIUS, DatasetWrapper, FiduceoMviriEasyFcdrFileHandler, FiduceoMviriFullFcdrFileHandler
  from satpy.tests.utils import make_dataid
label_desc: Use image node_id 1 for calling a global function with example usage: fixture_fake_dataset() and returns: ds