view contrib/benchmarks/perf.py @ 41404:43f9b8c0574b

notify: be more defensive aboute None values encoding.strtolocal is the identity function on Python 2 but an actual string manipulation routine on Python 3. In some cases, we were passing None, which caused Python 3 to barf. Let's change the code to react properly when the value is None. Differential Revision: https://phab.mercurial-scm.org/D5713
author Gregory Szorc <gregory.szorc@gmail.com>
date Sat, 26 Jan 2019 10:22:09 -0800
parents cff0f5926797
children 2372284d9457
line wrap: on
line source

# perf.py - asv benchmarks using contrib/perf.py extension
#
# Copyright 2016 Logilab SA <contact@logilab.fr>
#
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2 or any later version.

from __future__ import absolute_import

from . import perfbench

@perfbench()
def track_tags(perf):
    return perf("perftags")

@perfbench()
def track_status(perf):
    return perf("perfstatus", unknown=False)

@perfbench(params=[('rev', ['1000', '10000', 'tip'])])
def track_manifest(perf, rev):
    return perf("perfmanifest", rev)

@perfbench()
def track_heads(perf):
    return perf("perfheads")