tests/test-merge-types
author Matt Mackall <mpm@selenic.com>
Thu, 23 Apr 2009 15:40:10 -0500
changeset 8145 0c2ba48415c8
parent 5710 026eb80060d8
permissions -rwxr-xr-x
test-archive: silence stupid messages from GNU tar Recent versions of GNU tar have apparently decided they're old enough that it's ok for them to prattle on senselessly about things no one cares about without anyone objecting. We object; apply duct tape.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
     1
#!/bin/sh
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
     2
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
     3
hg init
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
     4
echo a > a
5701
32c2832682a9 add --debug to test-merge-types
Matt Mackall <mpm@selenic.com>
parents: 5685
diff changeset
     5
hg ci -Amadd       # 0
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
     6
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
     7
chmod +x a
5701
32c2832682a9 add --debug to test-merge-types
Matt Mackall <mpm@selenic.com>
parents: 5685
diff changeset
     8
hg ci -mexecutable # 1
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
     9
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    10
hg up 0
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    11
rm a
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    12
ln -s symlink a
5701
32c2832682a9 add --debug to test-merge-types
Matt Mackall <mpm@selenic.com>
parents: 5685
diff changeset
    13
hg ci -msymlink    # 2
32c2832682a9 add --debug to test-merge-types
Matt Mackall <mpm@selenic.com>
parents: 5685
diff changeset
    14
hg merge --debug
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    15
5701
32c2832682a9 add --debug to test-merge-types
Matt Mackall <mpm@selenic.com>
parents: 5685
diff changeset
    16
echo % symlink is local parent, executable is other
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    17
5682
048889f8c7d1 Use test -h instead of test -L for portability
Thomas Arendsen Hein <thomas@intevation.de>
parents: 5503
diff changeset
    18
if [ -h a ]; then
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    19
    echo a is a symlink
5683
396c7010b0cd Use common readlink.py instead of own implementations per test script.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 5682
diff changeset
    20
    $TESTDIR/readlink.py a
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    21
elif [ -x a ]; then
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    22
    echo a is executable
5710
026eb80060d8 update test-merge-types
Matt Mackall <mpm@selenic.com>
parents: 5701
diff changeset
    23
else
026eb80060d8 update test-merge-types
Matt Mackall <mpm@selenic.com>
parents: 5701
diff changeset
    24
    echo "a has no flags (default for conflicts)"
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    25
fi
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    26
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    27
hg update -C 1
5701
32c2832682a9 add --debug to test-merge-types
Matt Mackall <mpm@selenic.com>
parents: 5685
diff changeset
    28
hg merge --debug
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    29
5701
32c2832682a9 add --debug to test-merge-types
Matt Mackall <mpm@selenic.com>
parents: 5685
diff changeset
    30
echo % symlink is other parent, executable is local
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    31
5682
048889f8c7d1 Use test -h instead of test -L for portability
Thomas Arendsen Hein <thomas@intevation.de>
parents: 5503
diff changeset
    32
if [ -h a ]; then
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    33
    echo a is a symlink
5683
396c7010b0cd Use common readlink.py instead of own implementations per test script.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 5682
diff changeset
    34
    $TESTDIR/readlink.py a
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    35
elif [ -x a ]; then
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    36
    echo a is executable
5710
026eb80060d8 update test-merge-types
Matt Mackall <mpm@selenic.com>
parents: 5701
diff changeset
    37
else
026eb80060d8 update test-merge-types
Matt Mackall <mpm@selenic.com>
parents: 5701
diff changeset
    38
    echo "a has no flags (default for conflicts)"
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    39
fi