check-code: catch Python 'is' comparing number or string literals
The Python 'is' operator compares object identity, so it should
definitely not be applied to string or number literals, which Python
implementations are free to represent with a temporary object.
This should catch the following kinds of bogus expressions (examples):
x is 'foo' x is not 'foo'
x is "bar" x is not "bar"
x is 42 x is not 42
x is -36 x is not -36
As originally proposed by Martin Geisler, amended with catching
negative numbers.
$ "$TESTDIR/hghave" inotify || exit 80
$ hg init
$ touch a b c d e f
$ echo "[extensions]" >> $HGRCPATH
$ echo "inotify=" >> $HGRCPATH
inserve
$ hg inserve -d --pid-file=hg.pid 2>&1
$ cat hg.pid >> "$DAEMON_PIDS"
$ hg ci -Am m
adding a
adding b
adding c
adding d
adding e
adding f
adding hg.pid
let the daemon finish its stuff
$ sleep 1
eed to test all file opperations
$ hg rm a
$ rm b
$ echo c >> c
$ touch g
$ hg add g
$ hg mv e h
$ hg status
M c
A g
A h
R a
R e
! b
$ sleep 1
Are we able to kill the service? if not, the service died on some error
$ kill `cat hg.pid`