old_contents: import interval_index_file
  from interval_index_file import Indexes
  from tempfile import mktemp
  import random
  
  def test_offsets():
      assert interval_index_file.offsets_for_max_size( 512*1024*1024  - 1 ) == [ 512 + 64 + 8 + 1, 64 + 8 + 1, 8 + 1, 1, 0 ]
  
  def test():
      ix = Indexes()
      chrs = []
      for i in range( 5 ):
          intervals = []
          name = "seq%d" % i
          max = random.randint( 0, interval_index_file.MAX )
          # print name, "size", max
          for i in range( 500 ):
              start = random.randint( 0, max )
              end = random.randint( 0, max )
              if end < start:
                  end, start = start, end
              ix.add( name, start, end, i )
              intervals.append( ( start, end, i ) )
          chrs.append( intervals )
      fname = mktemp()
      f = open( fname, "w" )
      ix.write( f )
      f.close()
      del ix
      
      ix = Indexes( fname )
      for i in range( 5 ):
          intervals = chrs[i]
          name = "seq%d" % i
          for i in range( 100 ):
              start = random.randint( 0, max )
              end = random.randint( 0, max )
              if end < start:
                  end, start = start, end
              query_intervals = set()
              for ( s, e, i ) in intervals:
                  if e > start and s < end:
                      query_intervals.add( ( s, e, i ) )
              result = ix.find( name, start, end )
              for inter in result:
                  assert inter in query_intervals
                  
              
      
      
  
  
  
  
  
  
  
new_contents: import interval_index_file
  from interval_index_file import Indexes
  from tempfile import mktemp
  import random
  
  def test_offsets():
      assert interval_index_file.offsets_for_max_size( 512*1024*1024  - 1 ) == [ 512 + 64 + 8 + 1, 64 + 8 + 1, 8 + 1, 1, 0 ]
  
  def test_interval_index_file():
      ix = Indexes()
      chrs = []
      for i in range( 5 ):
          intervals = []
          name = "seq%d" % i
          max = random.randint( 0, interval_index_file.MAX )
          # print name, "size", max
          for i in range( 500 ):
              start = random.randint( 0, max )
              end = random.randint( 0, max )
              if end < start:
                  end, start = start, end
              ix.add( name, start, end, i, max=interval_index_file.MAX )
              intervals.append( ( start, end, i ) )
          chrs.append( intervals )
      fname = mktemp()
      f = open( fname, "w" )
      ix.write( f )
      f.close()
      del ix
      
      ix = Indexes( fname )
      for i in range( 5 ):
          intervals = chrs[i]
          name = "seq%d" % i
          for i in range( 100 ):
              start = random.randint( 0, max )
              end = random.randint( 0, max )
              if end < start:
                  end, start = start, end
              query_intervals = set()
              for ( s, e, i ) in intervals:
                  if e > start and s < end:
                      query_intervals.add( ( s, e, i ) )
              result = ix.find( name, start, end )
              for inter in result:
                  assert inter in query_intervals
                  
              
      
      
  
  
  
  
  
  
  
subject: Fix interval_index_file test to use max parameter