class_docstr: Test cases where multiple sensors are available.
  
  This is what we are working with::
  
      None (No Data)
       +DataID(name='comp19')
       + +DataID(name='ds5', resolution=250, modifiers=('res_change',))
       + + +DataID(name='ds5', resolution=250, modifiers=())
       + + +__EMPTY_LEAF_SENTINEL__ (No Data)
       + +DataID(name='comp13')
       + + +DataID(name='ds5', resolution=250, modifiers=('res_change',))
       + + + +DataID(name='ds5', resolution=250, modifiers=())
       + + + +__EMPTY_LEAF_SENTINEL__ (No Data)
       + +DataID(name='ds2', resolution=250, calibration=<calibration.reflectance>, modifiers=())
docstr: Set up the test tree.
docstr_tok: ["Set","up","the","test","tree","."]
code: def setUp(self):
      """Set up the test tree."""
      from satpy.composites import CompositeBase
      from satpy.dataset.data_dict import DatasetDict
      from satpy.modifiers import ModifierBase
  
      class _FakeCompositor(CompositeBase):
          def __init__(self, ret_val, *args, **kwargs):
              self.ret_val = ret_val
              super().__init__(*args, **kwargs)
  
          def __call__(self, *args, **kwargs):
              return self.ret_val
  
      class _FakeModifier(ModifierBase):
          def __init__(self, ret_val, *args, **kwargs):
              self.ret_val = ret_val
              super().__init__(*args, **kwargs)
  
          def __call__(self, *args, **kwargs):
              return self.ret_val
  
      comp1_sensor1 = _FakeCompositor(1, "comp1")
      comp1_sensor2 = _FakeCompositor(2, "comp1")
      # create the dictionary one element at a time to force "incorrect" order
      # (sensor2 comes before sensor1, but results should be alphabetical order)
      compositors = {}
      compositors["sensor2"] = s2_comps = DatasetDict()
      compositors["sensor1"] = s1_comps = DatasetDict()
      c1_s2_id = make_cid(name="comp1", resolution=1000)
      c1_s1_id = make_cid(name="comp1", resolution=500)
      s2_comps[c1_s2_id] = comp1_sensor2
      s1_comps[c1_s1_id] = comp1_sensor1
  
      modifiers = {}
      modifiers["sensor2"] = s2_mods = {}
      modifiers["sensor1"] = s1_mods = {}
      s2_mods["mod1"] = (_FakeModifier, {"ret_val": 2})
      s1_mods["mod1"] = (_FakeModifier, {"ret_val": 1})
  
      self.dependency_tree = DependencyTree({}, compositors, modifiers)
      # manually add a leaf so we don't have to mock a reader
      ds5 = make_dataid(name="ds5", resolution=250, modifiers=tuple())
      self.dependency_tree.add_leaf(ds5)
  
imports: import os
  import unittest
  from satpy.dependency_tree import DependencyTree
  from satpy.tests.utils import make_cid, make_dataid
label_desc: Use image node_id 1 for calling the TestMultipleSensors obj's underlying member method code with example usage: obj.setUp() and returns: self, self