annotate tests/test-check-encoding.t @ 52053:af54626bf358

dirstate-map: add a missing debug wait point when accessing the v2 docket fc8e37c380d3 added synchronization points to the dirstate to allow for race condition testing without actually requiring a time-based race condition to happen. This changes adds the `pre-read-file` wait point before we read the docket, since callers might ask for the parents before anything else is read, leading to the first read being done before the wait point. This removes some differences in test output which were presumed to be speed related, but weren't.
author Raphaël Gomès <rgomes@octobus.net>
date Mon, 14 Oct 2024 14:14:21 +0200
parents 237855525f64
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
49189
237855525f64 tests: make sure .js files stay in ASCII encoding (issue6559)
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
1 #require test-repo hg10
237855525f64 tests: make sure .js files stay in ASCII encoding (issue6559)
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
2
237855525f64 tests: make sure .js files stay in ASCII encoding (issue6559)
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
3 $ . "$TESTDIR/helpers-testrepo.sh"
237855525f64 tests: make sure .js files stay in ASCII encoding (issue6559)
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
4
237855525f64 tests: make sure .js files stay in ASCII encoding (issue6559)
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
5 $ cat > $TESTTMP/check_ascii.py <<EOF
237855525f64 tests: make sure .js files stay in ASCII encoding (issue6559)
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
6 > import sys
237855525f64 tests: make sure .js files stay in ASCII encoding (issue6559)
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
7 > for file_path in sys.argv[1:]:
237855525f64 tests: make sure .js files stay in ASCII encoding (issue6559)
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
8 > with open(file_path, 'br') as f:
237855525f64 tests: make sure .js files stay in ASCII encoding (issue6559)
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
9 > try:
237855525f64 tests: make sure .js files stay in ASCII encoding (issue6559)
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
10 > f.read().decode('ascii', 'strict')
237855525f64 tests: make sure .js files stay in ASCII encoding (issue6559)
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
11 > except UnicodeDecodeError as exc:
237855525f64 tests: make sure .js files stay in ASCII encoding (issue6559)
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
12 > print('%s: %s' % (file_path, exc))
237855525f64 tests: make sure .js files stay in ASCII encoding (issue6559)
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
13 > EOF
237855525f64 tests: make sure .js files stay in ASCII encoding (issue6559)
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
14
237855525f64 tests: make sure .js files stay in ASCII encoding (issue6559)
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
15 There are some web servers in the wild that can serve static files with an
237855525f64 tests: make sure .js files stay in ASCII encoding (issue6559)
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
16 incorrect encoding (e.g. https://bz.mercurial-scm.org/show_bug.cgi?id=6559).
237855525f64 tests: make sure .js files stay in ASCII encoding (issue6559)
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
17 One way to prevent any issues is to not use any non-ASCII characters, e.g.
237855525f64 tests: make sure .js files stay in ASCII encoding (issue6559)
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
18 URL-encoding them or using HTML entities.
237855525f64 tests: make sure .js files stay in ASCII encoding (issue6559)
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
19
237855525f64 tests: make sure .js files stay in ASCII encoding (issue6559)
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
20 check charset of all tracked files ending in .js
237855525f64 tests: make sure .js files stay in ASCII encoding (issue6559)
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
21
237855525f64 tests: make sure .js files stay in ASCII encoding (issue6559)
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
22 $ cd "`dirname "$TESTDIR"`"
237855525f64 tests: make sure .js files stay in ASCII encoding (issue6559)
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
23
237855525f64 tests: make sure .js files stay in ASCII encoding (issue6559)
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
24 $ testrepohg locate 'set:**.js' \
237855525f64 tests: make sure .js files stay in ASCII encoding (issue6559)
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
25 > 2>/dev/null \
237855525f64 tests: make sure .js files stay in ASCII encoding (issue6559)
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
26 > | xargs "$PYTHON" $TESTTMP/check_ascii.py