code: def test_envelops(self):
      start_ix = 5
      end_ix = 10
      start_ix2 = end_ix + 1
      end_ix2 = end_ix + 5
      range_set = ranges.RangeSet(
          [
              ranges.make_range("chr1", start_ix, end_ix),
              ranges.make_range("chr1", start_ix2, end_ix2),
          ]
      )
  
      # No start position before the first start range is enveloped.
      for i in range(start_ix):
          self.assertFalse(range_set.envelops("chr1", i, start_ix + 1))
  
      # All regions within a single record are enveloped.
      for six in range(start_ix, end_ix):
          for eix in range(six, end_ix + 1):
              self.assertTrue(
                  range_set.envelops("chr1", six, eix),
                  "chr1 {} {} not enveloped".format(six, eix),
              )
  
      # Bridging across two ranges is not enveloped.
      for six in range(start_ix, end_ix):
          for eix in range(start_ix2, end_ix2 + 1):
              self.assertFalse(range_set.envelops("chr1", six, eix))
  
      # Other chromosome is not spanned.
      self.assertFalse(
          range_set.envelops("chr2", start_ix, start_ix + 1)
      )
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import itertools
  from absl.testing import absltest
  from absl.testing import parameterized
  import mock
  from third_party.nucleus.protos import position_pb2
  from third_party.nucleus.protos import reference_pb2
  from third_party.nucleus.protos import variants_pb2
  from third_party.nucleus.testing import test_utils
  from third_party.nucleus.util import ranges
label_desc: Use image node_id 10 for calling the RangesTests obj's underlying member method code with example usage: obj.test_envelops() without return types