##// END OF EJS Templates
share: make it possible to control the working copy format variant...
share: make it possible to control the working copy format variant A share will use the same format as its source for the store, but there are no reason to not lets it control the working copy variant at creation time. So we make it so. Differential Revision: https://phab.mercurial-scm.org/D11892

File last commit:

r47858:1d075b85 stable
r49297:bf2738e0 default
Show More
test-unified-test.t
144 lines | 2.2 KiB | text/troff | Tads3Lexer
Test that the syntax of "unified tests" is properly processed
==============================================================
Simple commands:
$ echo foo
foo
$ printf 'oh no'
oh no (no-eol)
$ printf 'bar\nbaz\n' | cat
bar
baz
Multi-line command:
$ foo() {
> echo bar
> }
$ foo
bar
Return codes before inline python:
$ sh -c 'exit 1'
[1]
Doctest commands:
>>> from __future__ import print_function
>>> print('foo')
foo
$ echo interleaved
interleaved
>>> for c in 'xyz':
... print(c)
x
y
z
>>> print()
>>> foo = 'global name'
>>> def func():
... print(foo, 'should be visible in func()')
>>> func()
global name should be visible in func()
>>> print('''multiline
... string''')
multiline
string
Regular expressions:
$ echo foobarbaz
foobar.* (re)
$ echo barbazquux
.*quux.* (re)
Globs:
$ printf '* \\foobarbaz {10}\n'
\* \\fo?bar* {10} (glob)
Literal match ending in " (re)":
$ echo 'foo (re)'
foo (re)
Windows: \r\n is handled like \n and can be escaped:
#if windows
$ printf 'crlf\r\ncr\r\tcrlf\r\ncrlf\r\n'
crlf
cr\r (no-eol) (esc)
\tcrlf (esc)
crlf\r (esc)
#endif
Escapes:
$ "$PYTHON" -c 'from mercurial.utils.procutil import stdout; stdout.write(b"\xff")'
\xff (no-eol) (esc)
Escapes with conditions:
$ "$PYTHON" -c 'from mercurial.utils.procutil import stdout; stdout.write(b"\xff")'
\xff (no-eol) (esc) (true !)
Combining esc with other markups - and handling lines ending with \r instead of \n:
$ printf 'foo/bar\r'
fo?/bar\r (no-eol) (glob) (esc)
#if windows
$ printf 'foo\\bar\r'
foo/bar\r (no-eol) (esc)
#endif
$ printf 'foo/bar\rfoo/bar\r'
foo.bar\r [(]no-eol[)] (re) (esc)
foo.bar\r \(no-eol\) (re)
testing hghave
$ hghave true
$ hghave false
skipped: missing feature: nail clipper
[1]
$ hghave no-true
skipped: system supports yak shaving
[1]
$ hghave no-false
Conditional sections based on hghave:
#if true
$ echo tested
tested
#else
$ echo skipped
#endif
#if false
$ echo skipped
#else
$ echo tested
tested
#endif
#if no-false
$ echo tested
tested
#else
$ echo skipped
#endif
#if no-true
$ echo skipped
#else
$ echo tested
tested
#endif
Exit code:
$ (exit 1)
[1]