tests/test-hgwebdirsym.t
author Pierre-Yves David <pierre-yves.david@ens-lyon.org>
Sat, 09 Feb 2013 17:54:01 +0000
changeset 18615 e7b89b5127c2
parent 17017 953faba28e91
child 22046 7a9cbb315d84
permissions -rw-r--r--
outgoing: fix possible filtering crash in outgoing (issue3814) If there is no outgoiing changesets but we have filtered revision in outgoing.excluded We run into a filtering related crash. The excluded revision should not be there in the first place but discovery need cleanup in default, not stable.

Tests whether or not hgwebdir properly handles various symlink topologies.

  $ "$TESTDIR/hghave" serve symlink || exit 80

hide outer repo
  $ hg init

  $ hg init a
  $ echo a > a/a
  $ hg --cwd a ci -Ama -d'1 0'
  adding a
  $ mkdir webdir
  $ cd webdir
  $ hg init b
  $ echo b > b/b
  $ hg --cwd b ci -Amb -d'2 0'
  adding b
  $ hg init c
  $ echo c > c/c
  $ hg --cwd c ci -Amc -d'3 0'
  adding c
  $ ln -s ../a al
  $ ln -s ../webdir circle
  $ root=`pwd`
  $ cd ..
  $ cat > collections.conf <<EOF
  > [collections]
  > $root=$root
  > EOF
  $ hg serve -p $HGPORT -d --pid-file=hg.pid --webdir-conf collections.conf \
  >     -A access-collections.log -E error-collections.log
  $ cat hg.pid >> $DAEMON_PIDS

should succeed

  $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '?style=raw'
  200 Script output follows
  
  
  /al/
  /b/
  /c/
  
  $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT 'al/file/tip/a?style=raw'
  200 Script output follows
  
  a
  $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT 'b/file/tip/b?style=raw'
  200 Script output follows
  
  b
  $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT 'c/file/tip/c?style=raw'
  200 Script output follows
  
  c

should fail

  $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT 'circle/al/file/tip/a?style=raw'
  404 Not Found
  
  
  error: repository circle/al/file/tip/a not found
  [1]
  $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT 'circle/b/file/tip/a?style=raw'
  404 Not Found
  
  
  error: repository circle/b/file/tip/a not found
  [1]
  $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT 'circle/c/file/tip/a?style=raw'
  404 Not Found
  
  
  error: repository circle/c/file/tip/a not found
  [1]

collections errors

  $ cat error-collections.log