##// END OF EJS Templates
hg: establish a cache for localrepository instances...
hg: establish a cache for localrepository instances hgweb contained code for determining whether a cached localrepository instance was up to date. This code was way too low-level to be in hgweb. This functionality has been moved to a new "cachedlocalrepo" class in hg.py. The code has been changed slightly to facilitate use inside a class. hgweb has been refactored to use the new API. As part of this refactor, hgweb.repo no longer exists! We're very close to using a distinct repo instance per thread. The new cache records state when it is created. This intelligence prevents an extra localrepository from being created on the first hgweb request. This is why some redundant output from test-extension.t has gone away.

File last commit:

r23172:e955549c default
r26219:ae33fff1 default
Show More
test-diff-color.t
210 lines | 4.4 KiB | text/troff | Tads3Lexer
/ tests / test-diff-color.t
Matt Mackall
tests: unify test-diff-color
r12415 Setup
Yuya Nishihara
tests: write hgrc of more than two lines by using shell heredoc...
r23172 $ cat <<EOF >> $HGRCPATH
> [color]
> mode = ansi
> [extensions]
> color =
> EOF
Matt Mackall
tests: unify test-diff-color
r12415 $ hg init repo
$ cd repo
$ cat > a <<EOF
> c
> c
> a
> a
> b
> a
> a
> c
> c
> EOF
$ hg ci -Am adda
adding a
$ cat > a <<EOF
> c
> c
> a
> a
> dd
> a
> a
> c
> c
> EOF
default context
$ hg diff --nodates --color=always
Mads Kiilerich
tests: use (esc) for all non-ASCII test output
r12942 \x1b[0;1mdiff -r cf9f4ba66af2 a\x1b[0m (esc)
\x1b[0;31;1m--- a/a\x1b[0m (esc)
\x1b[0;32;1m+++ b/a\x1b[0m (esc)
\x1b[0;35m@@ -2,7 +2,7 @@\x1b[0m (esc)
Matt Mackall
tests: unify test-diff-color
r12415 c
a
a
Mads Kiilerich
tests: use (esc) for all non-ASCII test output
r12942 \x1b[0;31m-b\x1b[0m (esc)
\x1b[0;32m+dd\x1b[0m (esc)
Matt Mackall
tests: unify test-diff-color
r12415 a
a
c
--unified=2
$ hg diff --nodates -U 2 --color=always
Mads Kiilerich
tests: use (esc) for all non-ASCII test output
r12942 \x1b[0;1mdiff -r cf9f4ba66af2 a\x1b[0m (esc)
\x1b[0;31;1m--- a/a\x1b[0m (esc)
\x1b[0;32;1m+++ b/a\x1b[0m (esc)
\x1b[0;35m@@ -3,5 +3,5 @@\x1b[0m (esc)
Matt Mackall
tests: unify test-diff-color
r12415 a
a
Mads Kiilerich
tests: use (esc) for all non-ASCII test output
r12942 \x1b[0;31m-b\x1b[0m (esc)
\x1b[0;32m+dd\x1b[0m (esc)
Matt Mackall
tests: unify test-diff-color
r12415 a
a
diffstat
$ hg diff --stat --color=always
Mads Kiilerich
tests: use (esc) for all non-ASCII test output
r12942 a | 2 \x1b[0;32m+\x1b[0m\x1b[0;31m-\x1b[0m (esc)
Matt Mackall
tests: unify test-diff-color
r12415 1 files changed, 1 insertions(+), 1 deletions(-)
Yuya Nishihara
tests: write hgrc of more than two lines by using shell heredoc...
r23172 $ cat <<EOF >> $HGRCPATH
> record =
> [ui]
> interactive = true
> [diff]
> git = True
> EOF
Matt Mackall
tests: unify test-diff-color
r12415
Mads Kiilerich
tests: convert some 'hghave execbit' to #if...
r16899 #if execbit
Matt Mackall
tests: unify test-diff-color
r12415 record
Mads Kiilerich
tests: use 'hghave execbit' for tests that manipulate x bit in file system
r15442 $ chmod +x a
Matt Mackall
tests: unify test-diff-color
r12415 $ hg record --color=always -m moda a <<EOF
> y
> y
> EOF
Mads Kiilerich
tests: use (esc) for all non-ASCII test output
r12942 \x1b[0;1mdiff --git a/a b/a\x1b[0m (esc)
\x1b[0;36;1mold mode 100644\x1b[0m (esc)
\x1b[0;36;1mnew mode 100755\x1b[0m (esc)
Matt Mackall
tests: unify test-diff-color
r12415 1 hunks, 1 lines changed
Mads Kiilerich
ui: show prompt choice if input is not a tty but is forced to be interactive...
r22589 \x1b[0;33mexamine changes to 'a'? [Ynesfdaq?]\x1b[0m y (esc)
Mads Kiilerich
tests: use (esc) for all non-ASCII test output
r12942 \x1b[0;35m@@ -2,7 +2,7 @@\x1b[0m (esc)
Matt Mackall
tests: unify test-diff-color
r12415 c
a
a
Mads Kiilerich
tests: use (esc) for all non-ASCII test output
r12942 \x1b[0;31m-b\x1b[0m (esc)
\x1b[0;32m+dd\x1b[0m (esc)
Matt Mackall
tests: unify test-diff-color
r12415 a
a
c
Mads Kiilerich
ui: show prompt choice if input is not a tty but is forced to be interactive...
r22589 \x1b[0;33mrecord this change to 'a'? [Ynesfdaq?]\x1b[0m y (esc)
Mads Kiilerich
tests: cleanup of echo statements left over from test conversion
r15243
Matt Mackall
tests: unify test-diff-color
r12415 $ echo "[extensions]" >> $HGRCPATH
$ echo "mq=" >> $HGRCPATH
$ hg rollback
Gilles Moris
rollback: clarifies the message about the reverted state (issue2628)...
r13446 repository tip rolled back to revision 0 (undo commit)
working directory now based on revision 0
Matt Mackall
tests: unify test-diff-color
r12415
qrecord
$ hg qrecord --color=always -m moda patch <<EOF
> y
> y
> EOF
Mads Kiilerich
tests: use (esc) for all non-ASCII test output
r12942 \x1b[0;1mdiff --git a/a b/a\x1b[0m (esc)
\x1b[0;36;1mold mode 100644\x1b[0m (esc)
\x1b[0;36;1mnew mode 100755\x1b[0m (esc)
Matt Mackall
tests: unify test-diff-color
r12415 1 hunks, 1 lines changed
Mads Kiilerich
ui: show prompt choice if input is not a tty but is forced to be interactive...
r22589 \x1b[0;33mexamine changes to 'a'? [Ynesfdaq?]\x1b[0m y (esc)
Mads Kiilerich
tests: use (esc) for all non-ASCII test output
r12942 \x1b[0;35m@@ -2,7 +2,7 @@\x1b[0m (esc)
Matt Mackall
tests: unify test-diff-color
r12415 c
a
a
Mads Kiilerich
tests: use (esc) for all non-ASCII test output
r12942 \x1b[0;31m-b\x1b[0m (esc)
\x1b[0;32m+dd\x1b[0m (esc)
Matt Mackall
tests: unify test-diff-color
r12415 a
a
c
Mads Kiilerich
ui: show prompt choice if input is not a tty but is forced to be interactive...
r22589 \x1b[0;33mrecord this change to 'a'? [Ynesfdaq?]\x1b[0m y (esc)
Mads Kiilerich
tests: convert some 'hghave execbit' to #if...
r16899
FUJIWARA Katsunori
subrepo: add argument to "diff()" to pass "ui" of caller side (issue3712) (API)...
r18006 $ hg qpop -a
popping patch
patch queue now empty
Mads Kiilerich
tests: convert some 'hghave execbit' to #if...
r16899 #endif
Mads Kiilerich
tests: add missing trailing 'cd ..'...
r16913
FUJIWARA Katsunori
subrepo: add argument to "diff()" to pass "ui" of caller side (issue3712) (API)...
r18006 issue3712: test colorization of subrepo diff
$ hg init sub
$ echo b > sub/b
$ hg -R sub commit -Am 'create sub'
adding b
$ echo 'sub = sub' > .hgsub
$ hg add .hgsub
$ hg commit -m 'add subrepo sub'
$ echo aa >> a
$ echo bb >> sub/b
$ hg diff --color=always -S
\x1b[0;1mdiff --git a/a b/a\x1b[0m (esc)
\x1b[0;31;1m--- a/a\x1b[0m (esc)
\x1b[0;32;1m+++ b/a\x1b[0m (esc)
\x1b[0;35m@@ -7,3 +7,4 @@\x1b[0m (esc)
a
c
c
\x1b[0;32m+aa\x1b[0m (esc)
Simon Heimberg
tests: remove glob lines which unnecessary match / for \ on windows...
r18720 \x1b[0;1mdiff --git a/sub/b b/sub/b\x1b[0m (esc)
FUJIWARA Katsunori
subrepo: add argument to "diff()" to pass "ui" of caller side (issue3712) (API)...
r18006 \x1b[0;31;1m--- a/sub/b\x1b[0m (esc)
\x1b[0;32;1m+++ b/sub/b\x1b[0m (esc)
\x1b[0;35m@@ -1,1 +1,2 @@\x1b[0m (esc)
b
\x1b[0;32m+bb\x1b[0m (esc)
Jordi Gutiérrez Hermoso
patch: enable diff.tab markup for the color extension...
r22460 test tabs
$ cat >> a <<EOF
> one tab
> two tabs
> end tab
> mid tab
> all tabs
> EOF
$ hg diff --nodates --color=always
\x1b[0;1mdiff --git a/a b/a\x1b[0m (esc)
\x1b[0;31;1m--- a/a\x1b[0m (esc)
\x1b[0;32;1m+++ b/a\x1b[0m (esc)
\x1b[0;35m@@ -7,3 +7,9 @@\x1b[0m (esc)
a
c
c
\x1b[0;32m+aa\x1b[0m (esc)
\x1b[0;32m+\x1b[0m \x1b[0;32mone tab\x1b[0m (esc)
\x1b[0;32m+\x1b[0m \x1b[0;32mtwo tabs\x1b[0m (esc)
\x1b[0;32m+end tab\x1b[0m\x1b[0;1;41m \x1b[0m (esc)
\x1b[0;32m+mid\x1b[0m \x1b[0;32mtab\x1b[0m (esc)
\x1b[0;32m+\x1b[0m \x1b[0;32mall\x1b[0m \x1b[0;32mtabs\x1b[0m\x1b[0;1;41m \x1b[0m (esc)
$ echo "[color]" >> $HGRCPATH
$ echo "diff.tab = bold magenta" >> $HGRCPATH
$ hg diff --nodates --color=always
\x1b[0;1mdiff --git a/a b/a\x1b[0m (esc)
\x1b[0;31;1m--- a/a\x1b[0m (esc)
\x1b[0;32;1m+++ b/a\x1b[0m (esc)
\x1b[0;35m@@ -7,3 +7,9 @@\x1b[0m (esc)
a
c
c
\x1b[0;32m+aa\x1b[0m (esc)
\x1b[0;32m+\x1b[0m\x1b[0;1;35m \x1b[0m\x1b[0;32mone tab\x1b[0m (esc)
\x1b[0;32m+\x1b[0m\x1b[0;1;35m \x1b[0m\x1b[0;32mtwo tabs\x1b[0m (esc)
\x1b[0;32m+end tab\x1b[0m\x1b[0;1;41m \x1b[0m (esc)
\x1b[0;32m+mid\x1b[0m\x1b[0;1;35m \x1b[0m\x1b[0;32mtab\x1b[0m (esc)
\x1b[0;32m+\x1b[0m\x1b[0;1;35m \x1b[0m\x1b[0;32mall\x1b[0m\x1b[0;1;35m \x1b[0m\x1b[0;32mtabs\x1b[0m\x1b[0;1;41m \x1b[0m (esc)
Mads Kiilerich
tests: add missing trailing 'cd ..'...
r16913 $ cd ..