Mercurial > hg
annotate tests/test-check-shbang.t @ 35450:e31773898197
run-tests: use context managers for file descriptors
I've seen the following error a few times recently when running the tests with
`yes | ./run-tests.py --local -j9 -i`:
Errored test-add.t: Traceback (most recent call last):
File "./run-tests.py", line 821, in run
self.runTest()
File "./run-tests.py", line 910, in runTest
if self._result.addOutputMismatch(self, ret, out, self._refout):
File "./run-tests.py", line 1774, in addOutputMismatch
rename(test.errpath, test.path)
File "./run-tests.py", line 571, in rename
os.remove(src)
WindowsError: [Error 32] The process cannot access the file because it is being
used by another process: 'c:\\Users\\Matt\\projects\\hg\\tests\\test-add.t.err'
This change doesn't fix the problem, but it seems like a simple enough
improvement.
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Sun, 17 Dec 2017 14:06:49 -0500 |
parents | ddd65b4f3ae6 |
children | 2d8d4e08c493 |
rev | line source |
---|---|
28879
8c1759a2bdf4
tests: add new test for #! shebang lines
timeless <timeless@mozdev.org>
parents:
27569
diff
changeset
|
1 #require test-repo |
27569 | 2 |
29219
3c9066ed557c
tests: silence test-repo obsolete warning
timeless <timeless@mozdev.org>
parents:
28879
diff
changeset
|
3 $ . "$TESTDIR/helpers-testrepo.sh" |
27569 | 4 $ cd "`dirname "$TESTDIR"`" |
5 | |
28879
8c1759a2bdf4
tests: add new test for #! shebang lines
timeless <timeless@mozdev.org>
parents:
27569
diff
changeset
|
6 look for python scripts that do not use /usr/bin/env |
27569 | 7 |
33204
ddd65b4f3ae6
tests: alias syshg and syshgenv so they can be switched conditionally
Yuya Nishihara <yuya@tcha.org>
parents:
33116
diff
changeset
|
8 $ testrepohg files 'set:grep(r"^#!.*?python") and not grep(r"^#!/usr/bi{1}n/env python") - **/*.t' |
27569 | 9 [1] |
10 | |
32939
cad62cb3c84c
tests: enforce use of $PYTHON in tests
Augie Fackler <augie@google.com>
parents:
29515
diff
changeset
|
11 In tests, enforce $PYTHON and *not* /usr/bin/env python or similar: |
33204
ddd65b4f3ae6
tests: alias syshg and syshgenv so they can be switched conditionally
Yuya Nishihara <yuya@tcha.org>
parents:
33116
diff
changeset
|
12 $ testrepohg files 'set:grep(r"#!.*?python") and **/*.t' \ |
32939
cad62cb3c84c
tests: enforce use of $PYTHON in tests
Augie Fackler <augie@google.com>
parents:
29515
diff
changeset
|
13 > -X tests/test-check-execute.t \ |
cad62cb3c84c
tests: enforce use of $PYTHON in tests
Augie Fackler <augie@google.com>
parents:
29515
diff
changeset
|
14 > -X tests/test-check-module-imports.t \ |
cad62cb3c84c
tests: enforce use of $PYTHON in tests
Augie Fackler <augie@google.com>
parents:
29515
diff
changeset
|
15 > -X tests/test-check-pyflakes.t \ |
cad62cb3c84c
tests: enforce use of $PYTHON in tests
Augie Fackler <augie@google.com>
parents:
29515
diff
changeset
|
16 > -X tests/test-check-shbang.t |
cad62cb3c84c
tests: enforce use of $PYTHON in tests
Augie Fackler <augie@google.com>
parents:
29515
diff
changeset
|
17 [1] |
cad62cb3c84c
tests: enforce use of $PYTHON in tests
Augie Fackler <augie@google.com>
parents:
29515
diff
changeset
|
18 |
cad62cb3c84c
tests: enforce use of $PYTHON in tests
Augie Fackler <augie@google.com>
parents:
29515
diff
changeset
|
19 The above exclusions are because they're looking for files that |
cad62cb3c84c
tests: enforce use of $PYTHON in tests
Augie Fackler <augie@google.com>
parents:
29515
diff
changeset
|
20 contain Python but don't end in .py - please avoid adding more. |
cad62cb3c84c
tests: enforce use of $PYTHON in tests
Augie Fackler <augie@google.com>
parents:
29515
diff
changeset
|
21 |
28879
8c1759a2bdf4
tests: add new test for #! shebang lines
timeless <timeless@mozdev.org>
parents:
27569
diff
changeset
|
22 look for shell scripts that do not use /bin/sh |
27569 | 23 |
33204
ddd65b4f3ae6
tests: alias syshg and syshgenv so they can be switched conditionally
Yuya Nishihara <yuya@tcha.org>
parents:
33116
diff
changeset
|
24 $ testrepohg files 'set:grep(r"^#!.*/bi{1}n/sh") and not grep(r"^#!/bi{1}n/sh")' |
27569 | 25 [1] |