code: def test_candidates_to_windows_min_window_distance(self, distance):
      candidates = [
          # We one candidate at position 100 with a 5 count.
          100,
          # We have another candidate at outside of our distance with a 5 count,
          # so it should produce a candidate but not be joined with our our
          # candidate at 100.
          100 - 2 * distance - 1,
          # Finally, we have another variant that is exactly distance away from
          # 100. It should be joined with the candidate at 100 to produce a single
          # larger window.
          100 + distance,
      ]
      expected = [
          # Our first window is for the 100 - 2 * distance one.
          ranges.make_range(
              "ref", 100 - 3 * distance - 1, 100 - distance - 1
          ),
          # Our second window starts at 100 (- distance for the window size) and
          # ends at 100 + distance + distance (again for window size).
          ranges.make_range("ref", 100 - distance, 100 + 2 * distance),
      ]
      self.config.min_windows_distance = distance
      self.assertEqual(
          window_selector._candidates_to_windows(
              self.config, candidates, "ref"
          ),
          expected,
      )
  
imports: from absl.testing import absltest
  from absl.testing import parameterized
  from third_party.nucleus.io import fasta
  from third_party.nucleus.testing import test_utils
  from third_party.nucleus.util import ranges
  from deepvariant.protos import realigner_pb2
  from deepvariant.realigner import window_selector
label_desc: Use image node_id 12 for calling the WindowSelectorTest obj's underlying member method code with example usage: obj.test_candidates_to_windows_min_window_distance(distance) without return types