1 #!/usr/bin/env python 2 3 import iixr 4 5 numbers = [12345678, 0, 1] 6 7 f = open("test", "wb") 8 w = iixr.FileWriter(f) 9 for number in numbers: 10 w.write_number(number) 11 w.close() 12 13 f = open("test", "r") 14 r = iixr.FileReader(f) 15 for number in numbers: 16 n = r.read_number() 17 print number == n, number, n 18 r.close() 19 20 all_doc_positions = [ 21 [ 22 (123, [1, 3, 5, 15, 25]), 23 (124, [0, 100]) 24 ], 25 [ 26 (78, [9]), 27 (196, [10, 11]) 28 ] 29 ] 30 31 f = open("test", "wb") 32 w = iixr.PositionWriter(f) 33 for doc_positions in all_doc_positions: 34 for docnum, positions in doc_positions: 35 w.write_positions(docnum, positions) 36 w.reset() 37 w.close() 38 39 f = open("test", "r") 40 r = iixr.PositionReader(f) 41 for doc_positions in all_doc_positions: 42 for docnum, positions in doc_positions: 43 d, p = r.read_positions() 44 print docnum == d, docnum, d 45 print positions == p, positions, p 46 r.reset() 47 r.close() 48 49 f = open("test", "wb") 50 w = iixr.PositionWriter(f) 51 offsets = [] 52 for doc_positions in all_doc_positions: 53 offsets.append( 54 w.write_all_positions(doc_positions) 55 ) 56 w.close() 57 58 f = open("test", "r") 59 r = iixr.PositionReader(f) 60 offsets.reverse() 61 all_doc_positions.reverse() 62 for offset, doc_positions in zip(offsets, all_doc_positions): 63 dp = r.read_all_positions(offset) 64 print doc_positions == dp, doc_positions, dp 65 r.close() 66 67 terms = [ 68 ("aardvark", 100000123), 69 ("anteater", 100000456), 70 ("badger", 100000789), 71 ("bull", 1000001234), 72 ("bulldog", 1000002345), 73 ("cat", 1000003456) 74 ] 75 76 f = open("test", "wb") 77 w = iixr.TermWriter(f) 78 for term, offset in terms: 79 w.write_term(term, offset) 80 w.close() 81 82 f = open("test", "r") 83 r = iixr.TermReader(f) 84 for term, offset in terms: 85 t, o = r.read_term() 86 print term == t, term, t 87 print offset == o, offset, o 88 r.close() 89 90 # vim: tabstop=4 expandtab shiftwidth=4