##// END OF EJS Templates
cat: test output path behvaior when target path does not exist...
cat: test output path behvaior when target path does not exist In the next patch, we will change the behavior of the cat command to create output file parent directories before attempting to write the output file. This patch documents the current unfortunate behavior. Differential Revision: https://phab.mercurial-scm.org/D1331

File last commit:

r35009:8154119e default
r35009:8154119e default
Show More
test-cat.t
132 lines | 2.2 KiB | text/troff | Tads3Lexer
Martin Geisler
tests: unify test-cat
r11874 $ hg init
$ echo 0 > a
$ echo 0 > b
Martin Geisler
tests: remove unneeded -d flags...
r12156 $ hg ci -A -m m
Martin Geisler
tests: unify test-cat
r11874 adding a
adding b
$ hg rm a
$ hg cat a
0
$ hg cat --decode a # more tests in test-encode
0
$ echo 1 > b
Martin Geisler
tests: remove unneeded -d flags...
r12156 $ hg ci -m m
Martin Geisler
tests: unify test-cat
r11874 $ echo 2 > b
$ hg cat -r 0 a
0
$ hg cat -r 0 b
0
$ hg cat -r 1 a
Martin Geisler
tests: remove unneeded -d flags...
r12156 a: no such file in rev 7040230c159c
Matt Mackall
tests: add exit codes to unified tests
r12316 [1]
Martin Geisler
tests: unify test-cat
r11874 $ hg cat -r 1 b
1
Patrick Mezard
fileset: fix generator vs list bug in fast path...
r17371
Martin von Zweigbergk
context.walk: walk all files when file and '.' given...
r24381 Test multiple files
Patrick Mezard
fileset: fix generator vs list bug in fast path...
r17371
$ echo 3 > c
$ hg ci -Am addmore c
Martin von Zweigbergk
context.walk: walk all files when file and '.' given...
r24381 $ hg cat b c
1
3
$ hg cat .
1
3
$ hg cat . c
1
3
Test fileset
Patrick Mezard
fileset: fix generator vs list bug in fast path...
r17371 $ hg cat 'set:not(b) or a'
3
$ hg cat 'set:c or b'
1
3
Matt Harbison
cat: explicitly document the supported formatter rules...
r21078 $ mkdir tmp
$ hg cat --output tmp/HH_%H c
$ hg cat --output tmp/RR_%R c
$ hg cat --output tmp/h_%h c
$ hg cat --output tmp/r_%r c
$ hg cat --output tmp/%s_s c
$ hg cat --output tmp/%d%%_d c
$ hg cat --output tmp/%p_p c
$ hg log -r . --template "{rev}: {node|short}\n"
2: 45116003780e
$ find tmp -type f | sort
tmp/.%_d
tmp/HH_45116003780e3678b333fb2c99fa7d559c8457e9
tmp/RR_2
tmp/c_p
tmp/c_s
tmp/h_45116003780e
tmp/r_2
Yuya Nishihara
cat: add formatter support...
r32578 Test template output
$ hg --cwd tmp cat ../b ../c -T '== {path} ({abspath}) ==\n{data}'
== ../b (b) == (glob)
1
== ../c (c) == (glob)
3
$ hg cat b c -Tjson --output -
[
{
"abspath": "b",
"data": "1\n",
"path": "b"
},
{
"abspath": "c",
"data": "3\n",
"path": "c"
}
]
$ hg cat b c -Tjson --output 'tmp/%p.json'
$ cat tmp/b.json
[
{
"abspath": "b",
"data": "1\n",
"path": "b"
}
]
$ cat tmp/c.json
[
{
"abspath": "c",
"data": "3\n",
"path": "c"
}
]
Yuya Nishihara
cat: disable optimization of single file case for workingctx...
r24720 Test working directory
$ echo b-wdir > b
$ hg cat -r 'wdir()' b
b-wdir
Matt Harbison
templater: add '{envvars}' to access environment variables...
r30833
Environment variables are not visible by default
$ PATTERN='t4' hg log -r '.' -T "{ifcontains('PATTERN', envvars, 'yes', 'no')}\n"
no
Environment variable visibility can be explicit
$ PATTERN='t4' hg log -r '.' -T "{envvars % '{key} -> {value}\n'}" \
> --config "experimental.exportableenviron=PATTERN"
PATTERN -> t4
Ryan McElroy
cat: test output path behvaior when target path does not exist...
r35009
Test behavior of output when directory structure does not already exist
$ mkdir foo
$ echo a > foo/a
$ hg add foo/a
$ hg commit -qm "add foo/a"
$ mkdir output
$ hg cat --output "output/%p" foo/a
abort: No such file or directory: output/foo/a
[255]