mirror of
https://github.com/facebook/sapling.git
synced 2024-10-09 16:31:02 +03:00
e3bbd1757c
Summary: This is similar to what D6925398 does. But covers areas that D6925398 missed because the codemod script wasn't able to handle multiple-line `hg serve` commands. Reviewed By: DurhamG Differential Revision: D6937919 fbshipit-source-id: a67de178527c11a0ed8bbac82f0c46d44b81be77
81 lines
1.7 KiB
Perl
81 lines
1.7 KiB
Perl
#require serve symlink
|
|
|
|
Tests whether or not hgwebdir properly handles various symlink topologies.
|
|
|
|
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 0 --port-file $TESTTMP/.port -d --pid-file=hg.pid --webdir-conf collections.conf -A access-collections.log -E error-collections.log
|
|
$ HGPORT=`cat $TESTTMP/.port`
|
|
$ cat hg.pid >> $DAEMON_PIDS
|
|
|
|
should succeed
|
|
|
|
$ get-with-headers.py localhost:$HGPORT '?style=raw'
|
|
200 Script output follows
|
|
|
|
|
|
/al/
|
|
/b/
|
|
/c/
|
|
|
|
$ get-with-headers.py localhost:$HGPORT 'al/file/tip/a?style=raw'
|
|
200 Script output follows
|
|
|
|
a
|
|
$ get-with-headers.py localhost:$HGPORT 'b/file/tip/b?style=raw'
|
|
200 Script output follows
|
|
|
|
b
|
|
$ get-with-headers.py localhost:$HGPORT 'c/file/tip/c?style=raw'
|
|
200 Script output follows
|
|
|
|
c
|
|
|
|
should fail
|
|
|
|
$ 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]
|
|
$ 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]
|
|
$ 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
|