view tests/testlib/ext-phase-report.py @ 37785:b4d85bc122bd

wireproto: rename wireproto to wireprotov1server (API) We have wireprotov2server, wireprotov1peer, and wireprotov2peer. wireproto only contains server functionality. So it makes sense to rename it to wireprotov1server so the naming aligns with everything else. Differential Revision: https://phab.mercurial-scm.org/D3400
author Gregory Szorc <gregory.szorc@gmail.com>
date Mon, 16 Apr 2018 22:21:54 -0700
parents 3b4d14beac3d
children 2372284d9457
line wrap: on
line source

# tiny extension to report phase changes during transaction

from __future__ import absolute_import

def reposetup(ui, repo):

    def reportphasemove(tr):
        for rev, move in sorted(tr.changes[b'phases'].items()):
            if move[0] is None:
                ui.write((b'test-debug-phase: new rev %d:  x -> %d\n'
                          % (rev, move[1])))
            else:
                ui.write((b'test-debug-phase: move rev %d: %d -> %d\n'
                          % (rev, move[0], move[1])))

    class reportphaserepo(repo.__class__):
        def transaction(self, *args, **kwargs):
            tr = super(reportphaserepo, self).transaction(*args, **kwargs)
            tr.addpostclose(b'report-phase', reportphasemove)
            return tr

    repo.__class__ = reportphaserepo