def test_position(self): lf = LogFile(self.fname) expected_pos = 0 for data in lf: expected_pos += len(self.make_line(data)) real_pos = lf.position() print expected_pos, real_pos assert real_pos == expected_pos
def __init__(self, request, filename=None, buffer_size=65536, **kw): if filename is None: rootpagename = kw.get('rootpagename', None) if rootpagename: from MoinMoin.Page import Page filename = Page(request, rootpagename).getPagePath('event-log', isfile=1) else: filename = request.rootpage.getPagePath('event-log', isfile=1) LogFile.__init__(self, filename, buffer_size)
def test_add(self): fname_log = tempfile.mktemp() lf = LogFile(fname_log) for linedata in self.LOG: lf.add(*linedata) expected_contents = open(self.fname, 'rb').read() real_contents = open(fname_log, 'rb').read() print repr(expected_contents) print repr(real_contents) assert real_contents == expected_contents
def __init__(self, request, filename=None, buffer_size=4096, **kw): if filename is None: rootpagename = kw.get('rootpagename', None) if rootpagename: filename = Page(request, rootpagename).getPagePath('edit-log', isfile=1) else: filename = request.rootpage.getPagePath('edit-log', isfile=1) LogFile.__init__(self, filename, buffer_size) self._NUM_FIELDS = 9 self._usercache = {} # Used by antispam in order to show an internal name instead # of a confusing userid self.uid_override = kw.get('uid_override', None)
def __init__(self, request, filename=None, buffer_size=4096, **kw): if filename is None: rootpagename = kw.get("rootpagename", None) if rootpagename: filename = Page(request, rootpagename).getPagePath("edit-log", isfile=1) else: filename = request.rootpage.getPagePath("edit-log", isfile=1) LogFile.__init__(self, filename, buffer_size) self._NUM_FIELDS = 9 self._usercache = {} # Used by antispam in order to show an internal name instead # of a confusing userid self.uid_override = kw.get("uid_override", None) # force inclusion of ip address, even if config forbids it. # this is needed so PageLock can work correctly for locks of anon editors. self.force_ip = kw.get("force_ip", False)
def test_seek(self): lf = LogFile(self.fname) for data in lf: print repr(data) # now we are at the current end, remember position pos = lf.position() # add new data newdata = [u'1303333333000000', u'00000003', u'SAVE', u'foo', u'0.0.0.0', u'example.org', u'666.666.666', u'', u'comment'] lf.add(*newdata) # go to position before new data lf.seek(pos) assert lf.position() == pos for data in lf: # reads the one new line we added print 'new:', repr(data) assert data == newdata lf.seek(0) assert lf.position() == 0 assert list(lf) == self.LOG + [newdata]
def __init__(self, request, filename=None, buffer_size=4096, **kw): if filename is None: rootpagename = kw.get('rootpagename', None) if rootpagename: filename = Page(request, rootpagename).getPagePath('edit-log', isfile=1) else: filename = request.rootpage.getPagePath('edit-log', isfile=1) LogFile.__init__(self, filename, buffer_size) self._NUM_FIELDS = 9 self._usercache = {} # Used by antispam in order to show an internal name instead # of a confusing userid self.uid_override = kw.get('uid_override', None) # force inclusion of ip address, even if config forbids it. # this is needed so PageLock can work correctly for locks of anon editors. self.force_ip = kw.get('force_ip', False)
def test_iter_reverse(self): lf = LogFile(self.fname) for result, expected in zip(lf.reverse(), self.LOG[::-1]): print expected print result assert result == expected
def test_seek(self): lf = LogFile(self.fname) for data in lf: print repr(data) # now we are at the current end, remember position pos = lf.position() # add new data newdata = [ u'1303333333000000', u'00000003', u'SAVE', u'foo', u'0.0.0.0', u'example.org', u'666.666.666', u'', u'comment' ] lf.add(*newdata) # go to position before new data lf.seek(pos) assert lf.position() == pos for data in lf: # reads the one new line we added print 'new:', repr(data) assert data == newdata lf.seek(0) assert lf.position() == 0 assert list(lf) == self.LOG + [newdata]
def test_iter_forward(self): lf = LogFile(self.fname) for result, expected in zip(lf, self.LOG): print expected print result assert result == expected