view tests/test-inotify-issue1208.t @ 13447:931a72e00efa stable

introduce new RequirementError (issue2649) This improves the misleading error message $ hg identify abort: there is no Mercurial repository here (.hg not found)! to the more explicit $ hg identify abort: requirement 'fake' not supported! for all commands in commands.optionalrepo, which includes the identify and serve commands in particular. This is for the case when a new entry in .hg/requires will be defined in a future Mercurial release.
author Adrian Buehlmann <adrian@cadifra.com>
date Fri, 18 Feb 2011 20:25:25 +0100
parents fed4bb2c8def
children f2719b387380
line wrap: on
line source


  $ "$TESTDIR/hghave" inotify || exit 80
  $ echo "[extensions]" >> $HGRCPATH
  $ echo "inotify=" >> $HGRCPATH
  $ p="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
  $ hg init $p
  $ cd $p

fail

  $ ln -sf doesnotexist .hg/inotify.sock
  $ hg st
  abort: inotify-server: cannot start: .hg/inotify.sock is a broken symlink
  inotify-client: could not start inotify server: child process failed to start
  $ hg inserve
  abort: inotify-server: cannot start: .hg/inotify.sock is a broken symlink
  [255]
  $ rm .hg/inotify.sock

inserve

  $ hg inserve -d --pid-file=hg.pid
  $ cat hg.pid >> "$DAEMON_PIDS"

status

  $ hg status
  ? hg.pid

if we try to start twice the server, make sure we get a correct error

  $ hg inserve -d --pid-file=hg2.pid
  abort: inotify-server: cannot start: socket is already bound
  abort: child process failed to start
  [255]
  $ kill `cat hg.pid`