PyndexterTests: pydtest.py

File pydtest.py, 1.3 kB (added by pacopablo, 22 months ago)

test harness

Line 
1import os
2from pyndexter import *
3from pyndexter.sources.file import *
4from urlparse import urlsplit, urlunsplit                                                                                                           
5from urllib import quote, unquote
6from time import time
7from trac.util.text import pretty_size
8
9start = None
10orig_start = None
11def filter(ctx, stream):
12    global start
13    map = {ADDED: 'ADDED', MODIFIED: 'MODIFIED', REMOVED: 'REMOVED'}
14    for transition, uri in stream:
15        if not start:
16            orig_start = start = time()
17            print "initializing start: %s" % str(start)
18        else:
19            print "  elapsed time: %s" % str(time() - start)
20            start = time()
21        scheme, location, path, query, fragment = urlsplit(uri, 'file')
22        path = os.path.normpath(unquote(path))
23        print map[transition], path, "(%s)" % pretty_size(os.stat(path).st_size)
24        yield transition, uri
25
26if __name__ == '__main__':
27    start = None
28    framework = Framework('builtin://%s/pyndexter.idx' % os.getcwd())
29    framework.add_source('file://' + quote('/home/pacopablo/irc/trac/logs/ChannelLogger/freenode/#trac') + '?include=*.log')
30    framework.update(filter=filter)
31    print "  elapsed time: %s" % str(time() - start)
32    print
33    print "Total time to index files: %s" % str(time() - orig_start)