author | Pierre-Yves David <pierre-yves.david@octobus.net> |
Mon, 29 May 2023 04:24:29 +0200 | |
changeset 50632 | 786443bd3bc1 |
parent 45055 | 4c1b4805db57 |
permissions | -rw-r--r-- |
12825 | 1 |
Test applying context diffs |
2 |
||
3 |
$ cat > writepatterns.py <<EOF |
|
4 |
> import sys |
|
5 |
> |
|
6 |
> path = sys.argv[1] |
|
7 |
> lasteol = sys.argv[2] == '1' |
|
8 |
> patterns = sys.argv[3:] |
|
9 |
> |
|
36394
4bc983568016
py3: replace file() with open()
Pulkit Goyal <7895pulkit@gmail.com>
parents:
32940
diff
changeset
|
10 |
> fp = open(path, 'wb') |
12825 | 11 |
> for i, pattern in enumerate(patterns): |
12 |
> count = int(pattern[0:-1]) |
|
38365
bf953d218a91
py3: encode sys.argv to bytes using .encode()
Pulkit Goyal <7895pulkit@gmail.com>
parents:
36394
diff
changeset
|
13 |
> char = pattern[-1].encode('utf8') + b'\n' |
12825 | 14 |
> if not lasteol and i == len(patterns) - 1: |
41738
c70bdd222dcd
tests: bulk changes to avoid whitespace errors of check-code.py
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
40350
diff
changeset
|
15 |
> fp.write((char * count)[:-1]) |
12825 | 16 |
> else: |
41738
c70bdd222dcd
tests: bulk changes to avoid whitespace errors of check-code.py
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
40350
diff
changeset
|
17 |
> fp.write(char * count) |
12825 | 18 |
> fp.close() |
19 |
> EOF |
|
20 |
$ cat > cat.py <<EOF |
|
21 |
> import sys |
|
45055
4c1b4805db57
pycompat: change users of pycompat.{stdin,stdout,stderr} to use procutil.std*
Manuel Jacob <me@manueljacob.de>
parents:
41738
diff
changeset
|
22 |
> from mercurial.utils import procutil, stringutil |
4c1b4805db57
pycompat: change users of pycompat.{stdin,stdout,stderr} to use procutil.std*
Manuel Jacob <me@manueljacob.de>
parents:
41738
diff
changeset
|
23 |
> procutil.stdout.write(b'%s\n' |
40350
633da7139e4a
py3: fix test-import-context.t
Matt Harbison <matt_harbison@yahoo.com>
parents:
39707
diff
changeset
|
24 |
> % stringutil.pprint(open(sys.argv[1], 'rb').read())) |
12825 | 25 |
> EOF |
26 |
||
27 |
Initialize the test repository |
|
28 |
||
29 |
$ hg init repo |
|
30 |
$ cd repo |
|
39707
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
38365
diff
changeset
|
31 |
$ "$PYTHON" ../writepatterns.py a 0 5A 1B 5C 1D |
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
38365
diff
changeset
|
32 |
$ "$PYTHON" ../writepatterns.py b 1 1A 1B |
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
38365
diff
changeset
|
33 |
$ "$PYTHON" ../writepatterns.py c 1 5A |
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
38365
diff
changeset
|
34 |
$ "$PYTHON" ../writepatterns.py d 1 5A 1B |
12825 | 35 |
$ hg add |
36 |
adding a |
|
37 |
adding b |
|
38 |
adding c |
|
39 |
adding d |
|
40 |
$ hg ci -m addfiles |
|
41 |
||
42 |
Add file, missing a last end of line |
|
43 |
||
44 |
$ hg import --no-commit - <<EOF |
|
45 |
> *** /dev/null 2010-10-16 18:05:49.000000000 +0200 |
|
46 |
> --- b/newnoeol 2010-10-16 18:23:26.000000000 +0200 |
|
47 |
> *************** |
|
48 |
> *** 0 **** |
|
49 |
> --- 1,2 ---- |
|
50 |
> + a |
|
51 |
> + b |
|
52 |
> \ No newline at end of file |
|
53 |
> *** a/a Sat Oct 16 16:35:51 2010 |
|
54 |
> --- b/a Sat Oct 16 16:35:51 2010 |
|
55 |
> *************** |
|
56 |
> *** 3,12 **** |
|
57 |
> A |
|
58 |
> A |
|
59 |
> A |
|
60 |
> ! B |
|
61 |
> C |
|
62 |
> C |
|
63 |
> C |
|
64 |
> C |
|
65 |
> C |
|
66 |
> ! D |
|
67 |
> \ No newline at end of file |
|
68 |
> --- 3,13 ---- |
|
69 |
> A |
|
70 |
> A |
|
71 |
> A |
|
72 |
> ! E |
|
73 |
> C |
|
74 |
> C |
|
75 |
> C |
|
76 |
> C |
|
77 |
> C |
|
78 |
> ! F |
|
79 |
> ! F |
|
80 |
> |
|
81 |
> *** a/b 2010-10-16 18:40:38.000000000 +0200 |
|
82 |
> --- /dev/null 2010-10-16 18:05:49.000000000 +0200 |
|
83 |
> *************** |
|
84 |
> *** 1,2 **** |
|
85 |
> - A |
|
86 |
> - B |
|
87 |
> --- 0 ---- |
|
88 |
> *** a/c Sat Oct 16 21:34:26 2010 |
|
89 |
> --- b/c Sat Oct 16 21:34:27 2010 |
|
90 |
> *************** |
|
91 |
> *** 3,5 **** |
|
92 |
> --- 3,7 ---- |
|
93 |
> A |
|
94 |
> A |
|
95 |
> A |
|
96 |
> + B |
|
97 |
> + B |
|
98 |
> *** a/d Sat Oct 16 21:47:20 2010 |
|
99 |
> --- b/d Sat Oct 16 21:47:22 2010 |
|
100 |
> *************** |
|
101 |
> *** 2,6 **** |
|
102 |
> A |
|
103 |
> A |
|
104 |
> A |
|
105 |
> - A |
|
106 |
> - B |
|
107 |
> --- 2,4 ---- |
|
108 |
> EOF |
|
109 |
applying patch from stdin |
|
110 |
$ hg st |
|
111 |
M a |
|
112 |
M c |
|
113 |
M d |
|
114 |
A newnoeol |
|
115 |
R b |
|
116 |
||
117 |
What's in a |
|
118 |
||
39707
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
38365
diff
changeset
|
119 |
$ "$PYTHON" ../cat.py a |
12825 | 120 |
'A\nA\nA\nA\nA\nE\nC\nC\nC\nC\nC\nF\nF\n' |
39707
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
38365
diff
changeset
|
121 |
$ "$PYTHON" ../cat.py newnoeol |
12825 | 122 |
'a\nb' |
39707
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
38365
diff
changeset
|
123 |
$ "$PYTHON" ../cat.py c |
12825 | 124 |
'A\nA\nA\nA\nA\nB\nB\n' |
39707
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
38365
diff
changeset
|
125 |
$ "$PYTHON" ../cat.py d |
12825 | 126 |
'A\nA\nA\nA\n' |
127 |
||
16913
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
12825
diff
changeset
|
128 |
$ cd .. |