Mercurial > hg
view tests/test-command-template @ 10301:56b50194617f
templates: rename `Last change' column in hgwebdir repository list.
This patch changes column headers in the templates that previously
said `Last change' to `Last modified'. Neither code nor functionality
are changed other than that.
For some time now, I have been annoyed by the fact the `Last change'
column didn't list the age of the youngest changeset in the
repository, or at least tip. It just occurred to me that this is
because the wording is slightly misleading; what the column in fact
lists is when the repository was last *modified*, that is, when
changesets was last added or removed from it.
The word `change' can be understood as referring to the changeset
itself. Using `changed' would be ever so slightly less
amigous. However, the standard nomenclature in this case is
`modification date' and `Last modified', which is incidentally entirely
unambigous. Hence, `Last modified' is the wording used.
author | Dan Villiom Podlaski Christiansen <danchr@gmail.com> |
---|---|
date | Sun, 24 Jan 2010 20:51:53 +0100 |
parents | fe699ca08a45 |
children | ace5bd98bee3 |
line wrap: on
line source
#!/bin/sh hg init a cd a echo a > a hg add a echo line 1 > b echo line 2 >> b hg commit -l b -d '1000000 0' -u 'User Name <user@hostname>' hg add b echo other 1 > c echo other 2 >> c echo >> c echo other 3 >> c hg commit -l c -d '1100000 0' -u 'A. N. Other <other@place>' hg add c hg commit -m 'no person' -d '1200000 0' -u 'other@place' echo c >> c hg commit -m 'no user, no domain' -d '1300000 0' -u 'person' echo foo > .hg/branch hg commit -m 'new branch' -d '1400000 0' -u 'person' hg co -q 3 echo other 4 >> d hg add d hg commit -m 'new head' -d '1500000 0' -u 'person' hg merge -q foo hg commit -m 'merge' -d '1500001 0' -u 'person' # second branch starting at nullrev hg update null echo second > second hg add second hg commit -m second -d '1000000 0' -u 'User Name <user@hostname>' echo third > third hg add third hg mv second fourth hg commit -m third -d "2020-01-01 10:01" # make sure user/global hgrc does not affect tests echo '[ui]' > .hg/hgrc echo 'logtemplate =' >> .hg/hgrc echo 'style =' >> .hg/hgrc echo '# default style is like normal output' echo '# normal' hg log > log.out hg log --style default > style.out cmp log.out style.out || diff -u log.out style.out echo '# verbose' hg log -v > log.out hg log -v --style default > style.out cmp log.out style.out || diff -u log.out style.out echo '# debug' hg log --debug > log.out hg log --debug --style default > style.out cmp log.out style.out || diff -u log.out style.out echo '# revision with no copies (used to print a traceback)' hg tip -v --template '\n' echo '# compact style works' hg log --style compact hg log -v --style compact hg log --debug --style compact # Test xml styles echo '# xml style works (--style xml)' hg log --style xml echo '# xml style works (-v --style xml)' hg log -v --style xml echo '# xml style works (--debug --style xml)' hg log --debug --style xml echo '# error if style not readable' touch q chmod 0 q hg log --style ./q echo '# error if no style' hg log --style notexist echo '# error if style missing key' echo 'q = q' > t hg log --style ./t echo '# error if include fails' echo 'changeset = q' >> t hg log --style ./t echo '# include works' rm q echo '{rev}' > q hg log --style ./t echo '# ui.style works' echo '[ui]' > .hg/hgrc echo 'style = t' >> .hg/hgrc hg log echo '# issue338' hg log --style=changelog > changelog cat changelog echo "# keys work" for key in author branches date desc file_adds file_dels file_mods \ file_copies file_copies_switch files \ manifest node parents rev tags diffstat extras; do for mode in '' --verbose --debug; do hg log $mode --template "$key$mode: {$key}\n" done done echo '# filters work' hg log --template '{author|domain}\n' hg log --template '{author|person}\n' hg log --template '{author|user}\n' hg log --template '{date|age}\n' > /dev/null || exit 1 hg log -l1 --template '{date|age}\n' hg log --template '{date|date}\n' hg log --template '{date|isodate}\n' hg log --template '{date|isodatesec}\n' hg log --template '{date|rfc822date}\n' hg log --template '{desc|firstline}\n' hg log --template '{node|short}\n' hg log --template '<changeset author="{author|xmlescape}"/>\n' echo '# formatnode filter works' echo '# quiet' hg -q log -r 0 --template '{node|formatnode}\n' echo '# normal' hg log -r 0 --template '{node|formatnode}\n' echo '# verbose' hg -v log -r 0 --template '{node|formatnode}\n' echo '# debug' hg --debug log -r 0 --template '{node|formatnode}\n' echo '# error on syntax' echo 'x = "f' >> t hg log cd .. echo '# latesttag' hg init latesttag cd latesttag echo a > file hg ci -Am a -d '0 0' echo b >> file hg ci -m b -d '1 0' echo c >> head1 hg ci -Am h1c -d '2 0' hg update -q 1 echo d >> head2 hg ci -Am h2d -d '3 0' echo e >> head2 hg ci -m h2e -d '4 0' hg merge -q hg ci -m merge -d '5 0' echo '# No tag set' hg log --template '{rev}: {latesttag}+{latesttagdistance}\n' echo '# one common tag: longuest path wins' hg tag -r 1 -m t1 -d '6 0' t1 hg log --template '{rev}: {latesttag}+{latesttagdistance}\n' echo '# one ancestor tag: more recent wins' hg tag -r 2 -m t2 -d '7 0' t2 hg log --template '{rev}: {latesttag}+{latesttagdistance}\n' echo '# two branch tags: more recent wins' hg tag -r 3 -m t3 -d '8 0' t3 hg log --template '{rev}: {latesttag}+{latesttagdistance}\n' echo '# merged tag overrides' hg tag -r 5 -m t5 -d '9 0' t5 hg tag -r 3 -m at3 -d '10 0' at3 hg log --template '{rev}: {latesttag}+{latesttagdistance}\n' cd .. echo '# style path expansion (issue1948)' mkdir -p home/styles cat > home/styles/teststyle <<EOF changeset = 'test {rev}:{node|short}\n' EOF HOME=`pwd`/home; export HOME cat > latesttag/.hg/hgrc <<EOF [ui] style = ~/styles/teststyle EOF hg -R latesttag tip echo '# test recursive showlist template (issue1989)' cat > style1989 <<EOF changeset = '{file_mods}{manifest}{extras}' file_mod = 'M|{author|person}\n' manifest = '{rev},{author}\n' extra = '{key}: {author}\n' EOF hg -R latesttag log -r tip --style=style1989 echo '# done'