mercurial/templates/map-cmdline.status
author David R. MacIver <david@drmaciver.com>
Fri, 26 Feb 2016 17:15:49 +0000
changeset 28279 c1fbc92d6238
parent 25628 9c647f427aef
child 29000 2d3837a4bded
permissions -rw-r--r--
testing: allow Hypothesis tests to disable extensions Doing this required the introduction of a mechanism for keeping track of more general config in the test. At present this is only used for extensions but it could be used more widely (e.g. to control specific extension behaviour) This greatly simplifies the extension management logic by introducing a general notion of config, which we maintain ourselves and pass to HG on every invocation. This results in significantly less error prone test generation, and also allows us to turn extensions off as well as on. The logic that used an environment variable to rerun the tests with an extension disabled now just edits the test file (in a fresh copy) to remove these --config command line flags.

%include map-cmdline.default

# Override base templates
changeset = '{cset}{branches}{bookmarks}{tags}{parents}{user}{ldate}{summary}{lfiles}\n'
changeset_verbose = '{cset}{branches}{bookmarks}{tags}{parents}{user}{ldate}{description}{lfiles}\n'
changeset_debug = '{fullcset}{branches}{bookmarks}{tags}{lphase}{parents}{manifest}{user}{ldate}{extras}{description}{lfiles}\n'

# Override the file templates
lfiles = '{if(files,
              label('ui.note log.files',
                    'files:\n'))}{lfile_mods}{lfile_adds}{lfile_copies_switch}{lfile_dels}'

# Exclude copied files, will display those in lfile_copies_switch
lfile_adds  = '{file_adds % "{ifcontains(file, file_copies_switch,
                                         '',
                                         '{lfile_add}')}"}'
lfile_add = '{label("status.added", "A {file}\n")}'

lfile_copies_switch = '{file_copies_switch % "{lfile_copy_orig}{lfile_copy_dest}"}'
lfile_copy_orig = '{label("status.added", "A {name}\n")}'
lfile_copy_dest = '{label("status.copied", "  {source}\n")}'

lfile_mods = '{file_mods % "{label('status.modified', 'M {file}\n')}"}'

lfile_dels = '{file_dels % "{label('status.removed', 'R {file}\n')}"}'