##// END OF EJS Templates
tests: fix test-patch.t on pickier /bin/sh implementations...
tests: fix test-patch.t on pickier /bin/sh implementations FreeBSD sh(1) doesn't accept -d, so we weren't testing what we expected there. Let's just use a simple Python script instead. Differential Revision: https://phab.mercurial-scm.org/D3620

File last commit:

r38104:0b39edef default
r38104:0b39edef default
Show More
test-patch.t
105 lines | 2.6 KiB | text/troff | Tads3Lexer
Nicolas Dumazet
tests: unify test-patch
r11784 $ cat > patchtool.py <<EOF
Augie Fackler
tests: update test-patch to pass our import checker
r33974 > from __future__ import absolute_import, print_function
Nicolas Dumazet
tests: unify test-patch
r11784 > import sys
Augie Fackler
tests: update test-patch to pass our import checker
r33974 > print('Using custom patch')
Nicolas Dumazet
tests: unify test-patch
r11784 > if '--binary' in sys.argv:
Augie Fackler
tests: update test-patch to pass our import checker
r33974 > print('--binary found !')
Nicolas Dumazet
tests: unify test-patch
r11784 > EOF
$ echo "[ui]" >> $HGRCPATH
Augie Fackler
cleanup: use $PYTHON to run python in many more tests...
r32940 $ echo "patch=$PYTHON ../patchtool.py" >> $HGRCPATH
Nicolas Dumazet
tests: unify test-patch
r11784
$ hg init a
$ cd a
$ echo a > a
$ hg commit -Ama -d '1 0'
adding a
$ echo b >> a
$ hg commit -Amb -d '2 0'
$ cd ..
Christian Ebert
test-patch.t: typos
r11815 This test checks that:
- custom patch commands with arguments actually work
Nicolas Dumazet
tests: unify test-patch
r11784 - patch code does not try to add weird arguments like
--binary when custom patch commands are used. For instance
--binary is added by default under win32.
check custom patch options are honored
$ hg --cwd a export -o ../a.diff tip
$ hg clone -r 0 a b
adding changesets
adding manifests
adding file changes
added 1 changesets with 1 changes to 1 files
Denis Laxalde
transaction-summary: show the range of new revisions upon pull/unbundle (BC)...
r34662 new changesets 8580ff50825a
Nicolas Dumazet
tests: unify test-patch
r11784 updating to branch default
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg --cwd b import -v ../a.diff
applying ../a.diff
Using custom patch
Greg Ward
import: simplify status reporting logic (and make it more I18N-friendly)...
r15194 applied to working directory
Mads Kiilerich
import: don't strip '#' lines from patch descriptions (issue 2417)...
r12645
Issue2417: hg import with # comments in description
Prepare source repo and patch:
$ rm $HGRCPATH
$ hg init c
$ cd c
Wagner Bruna
patch: fix parsing patch files containing CRs not followed by LFs...
r14832 $ printf "a\rc" > a
Mads Kiilerich
import: don't strip '#' lines from patch descriptions (issue 2417)...
r12645 $ hg ci -A -m 0 a -d '0 0'
Wagner Bruna
patch: fix parsing patch files containing CRs not followed by LFs...
r14832 $ printf "a\rb\rc" > a
Mads Kiilerich
import: don't strip '#' lines from patch descriptions (issue 2417)...
r12645 $ cat << eof > log
Mads Kiilerich
import: only the first hg patch marker should be processed (issue2417)...
r12728 > first line which can't start with '# '
> # second line is a comment but that shouldn't be a problem.
> A patch marker like this was more problematic even after d7452292f9d3:
> # HG changeset patch
> # User lines looks like this - but it _is_ just a comment
Mads Kiilerich
import: don't strip '#' lines from patch descriptions (issue 2417)...
r12645 > eof
$ hg ci -l log -d '0 0'
$ hg export -o p 1
$ cd ..
Clone and apply patch:
$ hg clone -r 0 c d
adding changesets
adding manifests
adding file changes
added 1 changesets with 1 changes to 1 files
Denis Laxalde
transaction-summary: show the range of new revisions upon pull/unbundle (BC)...
r34662 new changesets 7fadb901d403
Mads Kiilerich
import: don't strip '#' lines from patch descriptions (issue 2417)...
r12645 updating to branch default
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ cd d
$ hg import ../c/p
applying ../c/p
$ hg log -v -r 1
Wagner Bruna
patch: fix parsing patch files containing CRs not followed by LFs...
r14832 changeset: 1:cd0bde79c428
Mads Kiilerich
import: don't strip '#' lines from patch descriptions (issue 2417)...
r12645 tag: tip
user: test
date: Thu Jan 01 00:00:00 1970 +0000
files: a
description:
Mads Kiilerich
import: only the first hg patch marker should be processed (issue2417)...
r12728 first line which can't start with '# '
# second line is a comment but that shouldn't be a problem.
A patch marker like this was more problematic even after d7452292f9d3:
# HG changeset patch
# User lines looks like this - but it _is_ just a comment
Mads Kiilerich
import: don't strip '#' lines from patch descriptions (issue 2417)...
r12645
Yuya Nishihara
procutil: rewrite popen() as a subprocess.Popen wrapper (issue4746) (API)...
r37477
Error exit (issue4746)
Augie Fackler
tests: fix test-patch.t on pickier /bin/sh implementations...
r38104 $ cat >> exit1.py <<EOF
> import sys
> sys.exit(1)
> EOF
$ hg import ../c/p --config ui.patch="$PYTHON '`pwd`/exit1.py'"
Yuya Nishihara
procutil: rewrite popen() as a subprocess.Popen wrapper (issue4746) (API)...
r37477 applying ../c/p
abort: patch command failed: exited with status 1
[255]
Mads Kiilerich
import: don't strip '#' lines from patch descriptions (issue 2417)...
r12645 $ cd ..