tests: add a wrapper to run fsmonitor tests
This script does a bunch of non-trivial configuration work: in particular, it
sets up an isolated instance of Watchman which isn't affected by global state
and can be torn down on completion.
This script also sets the HGFSMONITOR_TESTS environment variable, which hghave
will use in the next patch to allow gating on whether fsmonitor is enabled.
With fsmonitor enabled, there appear to be a number of failures in the test
suite. It's not yet clear to me why they're happening, but if someone would
like to jump in and fix some of them I hope this will be helpful for that.
'a' in d: True
d['a']: va
'b' in d: True
d['b']: vb
'c' in d: True
d['c']: vc
'd' in d: True
d['d']: vd
'a' in d: False
'b' in d: True
d['b']: vb
'c' in d: True
d['c']: vc
'd' in d: True
d['d']: vd
'e' in d: True
d['e']: ve
'b' in d: True
d['b']: vb2
'c' in d: True
d['c']: vc2
'd' in d: True
d['d']: vd
'e' in d: False
'f' in d: True
d['f']: vf
'b' in d: False
'c' in d: False
'd' in d: False
'e' in d: False
'f' in d: False
'a' in d: True
d['a']: 1
'b' in d: True
d['b']: 2
All of these should be present:
'a' in dc: True
dc['a']: va3
'b' in dc: True
dc['b']: vb3
'c' in dc: True
dc['c']: vc3
'd' in dc: True
dc['d']: vd3
All of these except 'a' should be present:
'a' in dc: False
'b' in dc: True
dc['b']: vb3
'c' in dc: True
dc['c']: vc3
'd' in dc: True
dc['d']: vd3
'e' in dc: True
dc['e']: ve3
These should be in reverse alphabetical order and read 'v?3':
d['d']: vd3
d['c']: vc3
d['b']: vb3
d['a']: va3