##// END OF EJS Templates
hgweb, spartan: add "URL breadcrumbs"...
hgweb, spartan: add "URL breadcrumbs" This change adds a "URL breadcrumb" to the "title" of the pages on the spartan template. By title I mean the first line that is shown right below the page selection row, which shows the name of the page that is being viewed, along with some additional information. In doing so it standarizes those "titles" which now follow the pattern: URL breadcumb / page details

File last commit:

r18183:e1caaeb5 default
r18259:7bf412b7 default
Show More
test-check-code.t
184 lines | 4.3 KiB | text/troff | Tads3Lexer
/ tests / test-check-code.t
Brodie Rao
tests: unify test-check-code
r12632 $ cat > correct.py <<EOF
> def toto(arg1, arg2):
> del arg2
> return (5 + 6, 9)
> EOF
$ cat > wrong.py <<EOF
> def toto( arg1, arg2):
> del(arg2)
> return ( 5+6, 9)
> EOF
$ cat > quote.py <<EOF
> # let's use quote in comments
> (''' ( 4x5 )
> but """\\''' and finally''',
> """let's fool checkpatch""", '1+2',
> '"""', 42+1, """and
> ( 4-1 ) """, "( 1+1 )\" and ")
> a, '\\\\\\\\', "\\\\\\" x-2", "c-1"
> EOF
$ cat > non-py24.py <<EOF
> # Using builtins that does not exist in Python 2.4
> if any():
> x = all()
> y = format(x)
>
> # Do not complain about our own definition
> def any(x):
> pass
Thomas Arendsen Hein
test-check-code.t: test matching try/except/finally introduced in aeeb2afcdc25
r15285 >
> # try/except/finally block does not exist in Python 2.4
> try:
> pass
> except StandardError, inst:
> pass
> finally:
> pass
>
> # nested try/finally+try/except is allowed
> try:
> try:
> pass
> except StandardError, inst:
> pass
> finally:
> pass
Thomas Arendsen Hein
check-code: catch yield inside try/finally (with tests)...
r17620 >
> # yield inside a try/finally block is not allowed in Python 2.4
> try:
> pass
> yield 1
> finally:
> pass
> try:
> yield
> pass
> finally:
> pass
>
Brodie Rao
tests: unify test-check-code
r12632 > EOF
Thomas Arendsen Hein
check-code: fix class style checking (with tests)...
r14763 $ cat > classstyle.py <<EOF
> class newstyle_class(object):
> pass
>
> class oldstyle_class:
> pass
>
> class empty():
> pass
>
> no_class = 1:
> pass
> EOF
Brodie Rao
tests: unify test-check-code
r12632 $ check_code="$TESTDIR"/../contrib/check-code.py
Thomas Arendsen Hein
check-code: fix class style checking (with tests)...
r14763 $ "$check_code" ./wrong.py ./correct.py ./quote.py ./non-py24.py ./classstyle.py
Brodie Rao
tests: unify test-check-code
r12632 ./wrong.py:1:
> def toto( arg1, arg2):
gratuitous whitespace in () or []
./wrong.py:2:
> del(arg2)
Thomas Arendsen Hein
coding style: fix yield used as a function
r13077 Python keyword is not a function
Brodie Rao
tests: unify test-check-code
r12632 ./wrong.py:3:
> return ( 5+6, 9)
Matt Mackall
check-code: support multiline matches like try/except/finally...
r15281 gratuitous whitespace in () or []
Brodie Rao
tests: unify test-check-code
r12632 missing whitespace in expression
./quote.py:5:
> '"""', 42+1, """and
missing whitespace in expression
./non-py24.py:2:
> if any():
any/all/format not available in Python 2.4
./non-py24.py:3:
> x = all()
any/all/format not available in Python 2.4
./non-py24.py:4:
> y = format(x)
any/all/format not available in Python 2.4
Thomas Arendsen Hein
test-check-code.t: test matching try/except/finally introduced in aeeb2afcdc25
r15285 ./non-py24.py:11:
> try:
Mads Kiilerich
avoid using abbreviations that look like spelling errors
r17428 no try/except/finally in Python 2.4
Thomas Arendsen Hein
check-code: catch yield inside try/finally (with tests)...
r17620 ./non-py24.py:28:
> try:
no yield inside try/finally in Python 2.4
./non-py24.py:33:
> try:
no yield inside try/finally in Python 2.4
Thomas Arendsen Hein
check-code: fix class style checking (with tests)...
r14763 ./classstyle.py:4:
> class oldstyle_class:
old-style class, use class foo(object)
./classstyle.py:7:
> class empty():
class foo() not available in Python 2.4, use class foo(object)
Brodie Rao
tests: unify test-check-code
r12632 [1]
Augie Fackler
check-code: disallow defunct <> operator...
r18183 $ cat > python3-compat.py << EOF
> foo <> bar
> reduce(lambda a, b: a + b, [1, 2, 3, 4])
> EOF
$ "$check_code" python3-compat.py
python3-compat.py:1:
> foo <> bar
<> operator is not available in Python 3+, use !=
python3-compat.py:2:
> reduce(lambda a, b: a + b, [1, 2, 3, 4])
reduce is not available in Python 3+
[1]
Adrian Buehlmann
check-code: catch Python 'is' comparing number or string literals...
r13026
$ cat > is-op.py <<EOF
> # is-operator comparing number or string literal
> x = None
> y = x is 'foo'
> y = x is "foo"
> y = x is 5346
> y = x is -6
> y = x is not 'foo'
> y = x is not "foo"
> y = x is not 5346
> y = x is not -6
> EOF
$ "$check_code" ./is-op.py
./is-op.py:3:
> y = x is 'foo'
object comparison with literal
./is-op.py:4:
> y = x is "foo"
object comparison with literal
./is-op.py:5:
> y = x is 5346
object comparison with literal
./is-op.py:6:
> y = x is -6
object comparison with literal
./is-op.py:7:
> y = x is not 'foo'
object comparison with literal
./is-op.py:8:
> y = x is not "foo"
object comparison with literal
./is-op.py:9:
> y = x is not 5346
object comparison with literal
./is-op.py:10:
> y = x is not -6
object comparison with literal
[1]
Mads Kiilerich
check-code: add --nolineno option for hiding line numbers...
r15502 $ cat > warning.py <<EOF
> except:
> EOF
$ "$check_code" warning.py --warning --nolineno
warning.py:0:
> except:
warning: naked except clause
[1]
Augie Fackler
check-code: disallow two-argument form of raise...
r18180
$ cat > raise-format.py <<EOF
> raise SomeException, message
> # this next line is okay
> raise SomeException(arg1, arg2)
> EOF
$ "$check_code" raise-format.py
raise-format.py:1:
> raise SomeException, message
don't use old-style two-argument raise, use Exception(message)
[1]