tests/test-rhg.t
author Yuya Nishihara <yuya@tcha.org>
Sat, 27 Jun 2020 21:46:23 +0900
changeset 45058 d6e99a446eea
parent 45051 18f8d3b31baa
child 45448 e339693addc0
permissions -rw-r--r--
cmdserver: add option to not exit from message loop on SIGINT Sending SIGINT to server is the only way to interrupt a command running in command-server process. SIGINT will be caught at dispatch.dispatch() if we're lucky. Otherwise it will terminate the serer process. This is fundamentally unreliable as signals are delivered asynchronously. "cmdserver.shutdown-on-interrupt=False" mitigate the issue by making the server basically block SIGINT.

#require rust

  $ rhg() {
  > if [ -f "$RUNTESTDIR/../rust/target/debug/rhg" ]; then
  >   "$RUNTESTDIR/../rust/target/debug/rhg" "$@"
  > else
  >   echo "skipped: Cannot find rhg. Try to run cargo build in rust/rhg."
  >   exit 80
  > fi
  > }
  $ rhg unimplemented-command
  [252]
  $ rhg root
  abort: no repository found in '$TESTTMP' (.hg not found)!
  [255]
  $ hg init repository
  $ cd repository
  $ rhg root
  $TESTTMP/repository
  $ rhg root > /dev/full
  abort: No space left on device (os error 28)
  [255]
  $ rm -rf `pwd`
  $ rhg root
  abort: error getting current working directory: $ENOENT$
  [255]