test-import-eol.t
146 lines
| 2.7 KiB
| text/troff
|
Tads3Lexer
/ tests / test-import-eol.t
Nicolas Dumazet
|
r11808 | $ cat > makepatch.py <<EOF | ||
> f = file('eol.diff', 'wb') | ||||
> w = f.write | ||||
> w('test message\n') | ||||
> w('diff --git a/a b/a\n') | ||||
> w('--- a/a\n') | ||||
> w('+++ b/a\n') | ||||
> w('@@ -1,5 +1,5 @@\n') | ||||
> w(' a\n') | ||||
> w('-bbb\r\n') | ||||
> w('+yyyy\r\n') | ||||
> w(' cc\r\n') | ||||
> w(' \n') | ||||
> w(' d\n') | ||||
> w('-e\n') | ||||
> w('\ No newline at end of file\n') | ||||
> w('+z\r\n') | ||||
> w('\ No newline at end of file\r\n') | ||||
> EOF | ||||
$ hg init repo | ||||
$ cd repo | ||||
$ echo '\.diff' > .hgignore | ||||
Test different --eol values | ||||
Augie Fackler
|
r22947 | $ $PYTHON -c 'file("a", "wb").write("a\nbbb\ncc\n\nd\ne")' | ||
Nicolas Dumazet
|
r11808 | $ hg ci -Am adda | ||
adding .hgignore | ||||
adding a | ||||
$ python ../makepatch.py | ||||
invalid eol | ||||
$ hg --config patch.eol='LFCR' import eol.diff | ||||
applying eol.diff | ||||
Martin Geisler
|
r12070 | abort: unsupported line endings type: LFCR | ||
Matt Mackall
|
r12316 | [255] | ||
Nicolas Dumazet
|
r11808 | $ hg revert -a | ||
force LF | ||||
$ hg --traceback --config patch.eol='LF' import eol.diff | ||||
applying eol.diff | ||||
Mads Kiilerich
|
r12943 | $ cat a | ||
a | ||||
yyyy | ||||
cc | ||||
d | ||||
e (no-eol) | ||||
Nicolas Dumazet
|
r11808 | $ hg st | ||
force CRLF | ||||
$ hg up -C 0 | ||||
1 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
$ hg --traceback --config patch.eol='CRLF' import eol.diff | ||||
applying eol.diff | ||||
Mads Kiilerich
|
r12943 | $ cat a | ||
a\r (esc) | ||||
yyyy\r (esc) | ||||
cc\r (esc) | ||||
\r (esc) | ||||
d\r (esc) | ||||
e (no-eol) | ||||
Nicolas Dumazet
|
r11808 | $ hg st | ||
auto EOL on LF file | ||||
$ hg up -C 0 | ||||
1 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
$ hg --traceback --config patch.eol='auto' import eol.diff | ||||
applying eol.diff | ||||
Mads Kiilerich
|
r12943 | $ cat a | ||
a | ||||
yyyy | ||||
cc | ||||
d | ||||
e (no-eol) | ||||
Nicolas Dumazet
|
r11808 | $ hg st | ||
auto EOL on CRLF file | ||||
Augie Fackler
|
r22947 | $ $PYTHON -c 'file("a", "wb").write("a\r\nbbb\r\ncc\r\n\r\nd\r\ne")' | ||
Nicolas Dumazet
|
r11808 | $ hg commit -m 'switch EOLs in a' | ||
$ hg --traceback --config patch.eol='auto' import eol.diff | ||||
applying eol.diff | ||||
Mads Kiilerich
|
r12943 | $ cat a | ||
a\r (esc) | ||||
yyyy\r (esc) | ||||
cc\r (esc) | ||||
\r (esc) | ||||
d\r (esc) | ||||
e (no-eol) | ||||
Nicolas Dumazet
|
r11808 | $ hg st | ||
auto EOL on new file or source without any EOL | ||||
Augie Fackler
|
r22947 | $ $PYTHON -c 'file("noeol", "wb").write("noeol")' | ||
Nicolas Dumazet
|
r11808 | $ hg add noeol | ||
$ hg commit -m 'add noeol' | ||||
Augie Fackler
|
r22947 | $ $PYTHON -c 'file("noeol", "wb").write("noeol\r\nnoeol\n")' | ||
$ $PYTHON -c 'file("neweol", "wb").write("neweol\nneweol\r\n")' | ||||
Nicolas Dumazet
|
r11808 | $ hg add neweol | ||
$ hg diff --git > noeol.diff | ||||
$ hg revert --no-backup noeol neweol | ||||
$ rm neweol | ||||
$ hg --traceback --config patch.eol='auto' import -m noeol noeol.diff | ||||
applying noeol.diff | ||||
Mads Kiilerich
|
r12943 | $ cat noeol | ||
noeol\r (esc) | ||||
noeol | ||||
$ cat neweol | ||||
neweol | ||||
neweol\r (esc) | ||||
Nicolas Dumazet
|
r11808 | $ hg st | ||
Test --eol and binary patches | ||||
Augie Fackler
|
r22947 | $ $PYTHON -c 'file("b", "wb").write("a\x00\nb\r\nd")' | ||
Nicolas Dumazet
|
r11808 | $ hg ci -Am addb | ||
adding b | ||||
Augie Fackler
|
r22947 | $ $PYTHON -c 'file("b", "wb").write("a\x00\nc\r\nd")' | ||
Nicolas Dumazet
|
r11808 | $ hg diff --git > bin.diff | ||
$ hg revert --no-backup b | ||||
binary patch with --eol | ||||
$ hg import --config patch.eol='CRLF' -m changeb bin.diff | ||||
applying bin.diff | ||||
Mads Kiilerich
|
r12943 | $ cat b | ||
a\x00 (esc) | ||||
c\r (esc) | ||||
d (no-eol) | ||||
Nicolas Dumazet
|
r11808 | $ hg st | ||
$ cd .. | ||||