annotate tests/test-check-execute.t @ 45118:d0ef8c1dddd4

manifest: tigher manifest parsing and flag use In the manifest line, flags are put directly after the hash, so the parser has been guessing the presence of flags based on the length of the hash. Replace this assumption by an enumeration of the valid flags and removing them from the hash first as they are distinct input values. Consistently handle the expected 256bit length of the SHA1-replacement in the pure Python parser. Check that setting flags will use one of the blessed values. Extend write logic in the C version to handle 256bit hashes as well. Verify that hashes always have exactly the expected length. Since 1070df141718 we should no longer depend on the old extra-byte hack. Differential Revision: https://phab.mercurial-scm.org/D8679
author Joerg Sonnenberger <joerg@bec.de>
date Mon, 06 Jul 2020 03:43:32 +0200
parents ddd65b4f3ae6
children fb6593307e24
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
27569
b3eba79b7e04 tests: add test-check-execute.t
timeless <timeless@mozdev.org>
parents:
diff changeset
1 #require test-repo execbit
b3eba79b7e04 tests: add test-check-execute.t
timeless <timeless@mozdev.org>
parents:
diff changeset
2
29219
3c9066ed557c tests: silence test-repo obsolete warning
timeless <timeless@mozdev.org>
parents: 27569
diff changeset
3 $ . "$TESTDIR/helpers-testrepo.sh"
27569
b3eba79b7e04 tests: add test-check-execute.t
timeless <timeless@mozdev.org>
parents:
diff changeset
4 $ cd "`dirname "$TESTDIR"`"
b3eba79b7e04 tests: add test-check-execute.t
timeless <timeless@mozdev.org>
parents:
diff changeset
5
b3eba79b7e04 tests: add test-check-execute.t
timeless <timeless@mozdev.org>
parents:
diff changeset
6 look for python scripts without the execute bit
b3eba79b7e04 tests: add test-check-execute.t
timeless <timeless@mozdev.org>
parents:
diff changeset
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:**.py and not exec() and grep(r"^#!.*?python")'
27569
b3eba79b7e04 tests: add test-check-execute.t
timeless <timeless@mozdev.org>
parents:
diff changeset
9 [1]
b3eba79b7e04 tests: add test-check-execute.t
timeless <timeless@mozdev.org>
parents:
diff changeset
10
b3eba79b7e04 tests: add test-check-execute.t
timeless <timeless@mozdev.org>
parents:
diff changeset
11 look for python scripts with execute bit but not shebang
b3eba79b7e04 tests: add test-check-execute.t
timeless <timeless@mozdev.org>
parents:
diff changeset
12
33204
ddd65b4f3ae6 tests: alias syshg and syshgenv so they can be switched conditionally
Yuya Nishihara <yuya@tcha.org>
parents: 33116
diff changeset
13 $ testrepohg files 'set:**.py and exec() and not grep(r"^#!.*?python")'
27569
b3eba79b7e04 tests: add test-check-execute.t
timeless <timeless@mozdev.org>
parents:
diff changeset
14 [1]
b3eba79b7e04 tests: add test-check-execute.t
timeless <timeless@mozdev.org>
parents:
diff changeset
15
b3eba79b7e04 tests: add test-check-execute.t
timeless <timeless@mozdev.org>
parents:
diff changeset
16 look for shell scripts with execute bit but not shebang
b3eba79b7e04 tests: add test-check-execute.t
timeless <timeless@mozdev.org>
parents:
diff changeset
17
33204
ddd65b4f3ae6 tests: alias syshg and syshgenv so they can be switched conditionally
Yuya Nishihara <yuya@tcha.org>
parents: 33116
diff changeset
18 $ testrepohg files 'set:**.sh and exec() and not grep(r"^#!.*(ba)?sh")'
27569
b3eba79b7e04 tests: add test-check-execute.t
timeless <timeless@mozdev.org>
parents:
diff changeset
19 [1]
b3eba79b7e04 tests: add test-check-execute.t
timeless <timeless@mozdev.org>
parents:
diff changeset
20
b3eba79b7e04 tests: add test-check-execute.t
timeless <timeless@mozdev.org>
parents:
diff changeset
21 look for non scripts with no shebang
b3eba79b7e04 tests: add test-check-execute.t
timeless <timeless@mozdev.org>
parents:
diff changeset
22
33204
ddd65b4f3ae6 tests: alias syshg and syshgenv so they can be switched conditionally
Yuya Nishihara <yuya@tcha.org>
parents: 33116
diff changeset
23 $ testrepohg files 'set:exec() and not **.sh and not **.py and not grep(r"^#!")'
27569
b3eba79b7e04 tests: add test-check-execute.t
timeless <timeless@mozdev.org>
parents:
diff changeset
24 [1]