tests/test-no-symlinks
author Ry4an Brase <ry4an-hg@ry4an.org>
Mon, 20 Sep 2010 14:56:08 -0500
branchstable
changeset 12570 a72c5ff1260c
parent 5091 fc6106267198
permissions -rwxr-xr-x
Correct Content-Type header values for archive downloads. The content type for both .tar.gz and .tar.bz2 downloads was application/x-tar, which is correct for .tar files when no Content-Encoding is present, but is not correct for .tar.gz and .tar.bz2 files unless Content-Encoding is set to gzip or x-bzip2, respectively. However, setting Content-Encoding causes browsers to undo that encoding during download, when a .gz or .bz2 file is usually the desired artifact. Omitting the Content-Encoding header is preferred to avoid having browsers uncompress non-render-able files. Additionally, the Content-Disposition line indicates a final desired filename with .tar.gz or .tar.bz2 extension which makes providing a Content-Encoding header inappropriate. With the current configuration browsers (Chrome and Firefox thus far) are registering the application/x-tar Content-Type and not .tar extension and appending that extension, yielding filename.tar.gz.tar as a final on-disk artifact. This was originally reported here: http://stackoverflow.com/questions/3753659 I've changed the .tar.gz and .tar.bz2 Content-Type values to application/x-gzip and application/x-bzip2, respectively. Which yields correctly named download artifacts on Firefox, Chrome, and IE.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
5085
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     1
#!/bin/sh
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     2
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     3
"$TESTDIR/hghave" no-symlink || exit 80
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     4
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     5
# The following script was used to create the bundle:
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     6
#
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     7
# hg init symlinks
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     8
# cd symlinks
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     9
# echo a > a
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    10
# mkdir d
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    11
# echo b > d/b
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    12
# ln -s a a.lnk
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    13
# ln -s d/b d/b.lnk
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    14
# hg ci -Am t
5089
9b5ae133bd5a test-no-symlinks: rename .bundle into .hg for consistency.
Patrick Mezard <pmezard@gmail.com>
parents: 5085
diff changeset
    15
# hg bundle --base null ../test-no-symlinks.hg
5085
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    16
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    17
# Extract a symlink on a platform not supporting them
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    18
echo % unbundle
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    19
hg init t
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    20
cd t
5091
fc6106267198 Hide absolute path from test-no-symlinks output.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 5089
diff changeset
    21
hg pull -q "$TESTDIR/test-no-symlinks.hg"
5085
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    22
hg update
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    23
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    24
cat a.lnk && echo
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    25
cat d/b.lnk && echo
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    26
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    27
# Copy a symlink and move another
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    28
echo % move and copy
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    29
hg copy a.lnk d/a2.lnk
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    30
hg mv d/b.lnk b2.lnk
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    31
hg ci -Am copy
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    32
cat d/a2.lnk && echo
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    33
cat b2.lnk && echo
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    34
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    35
# Bundle and extract again
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    36
echo % bundle
5089
9b5ae133bd5a test-no-symlinks: rename .bundle into .hg for consistency.
Patrick Mezard <pmezard@gmail.com>
parents: 5085
diff changeset
    37
hg bundle --base null ../symlinks.hg
5085
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    38
cd ..
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    39
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    40
hg init t2
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    41
cd t2
5089
9b5ae133bd5a test-no-symlinks: rename .bundle into .hg for consistency.
Patrick Mezard <pmezard@gmail.com>
parents: 5085
diff changeset
    42
hg pull ../symlinks.hg
5085
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    43
hg update
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    44
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    45
cat a.lnk && echo
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    46
cat d/a2.lnk && echo
5091
fc6106267198 Hide absolute path from test-no-symlinks output.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 5089
diff changeset
    47
cat b2.lnk && echo