view tests/fixtures/symlinks.sh @ 1452:4217a050a088

tests: drop hard-coded list of tests The list of out of date, missing 'test_helpers' and 'comprehensive/test_custom_layout'. Instead, use the discover functionality introduced in Python 2.7, and available for Python 2.6 and earlier from the 'unittest2' backport. Tested by invoking 'run.py' both with and without '-A' in Python 2.6 & 2.7, and ensuring that passing comprehensive tests as arguments continues to work. As a minor (but welcome) side-effect, this should restore the ability to test hgsubversion under demandimport; previously, test_util was imported before we enabled demandimport, so it didn't affect most of Mercurial. Since unittest2 (and unittest) do define SkipTest, we can remove the earlier import, restoring the likely originally intended testing mode.
author Dan Villiom Podlaski Christiansen <danchr@gmail.com>
date Sun, 12 Jun 2016 14:55:57 +0200
parents b37c401b7f92
children
line wrap: on
line source

#!/bin/sh
#
# Generate symlinks.svndump
#

mkdir temp
cd temp

mkdir project-orig
cd project-orig
mkdir trunk
mkdir branches
cd ..

svnadmin create testrepo
svnurl=file://`pwd`/testrepo
svn import project-orig $svnurl -m "init project"

svn co $svnurl project
cd project/trunk
echo a > a
ln -s a linka
ln -s a linka2
mkdir d
ln -s a d/linka
svn add a linka linka2 d
svn ci -m "add symlinks"
# Move symlinks
svn mv linka linkaa
svn mv d d2
svn commit -m "moving symlinks"
# Update symlinks (test "link " prefix vs applydelta)
echo b > b
rm linkaa
ln -s b linkaa
rm d2/linka
ln -s b d2/linka
svn ci -m "update symlinks"
# Replace a symlink with a regular file
rm linkaa
echo data > linkaa
svn propdel svn:special linkaa
# Replace another symlink with a regular file in another way
# It should mark linka2 as R(eplaced)
svn rm linka2
echo data2 > linka2
svn add linka2
svn propdel svn:special linka2
svn rm d2/linka
svn ci -m "undo link"
cd ../..

svnadmin dump testrepo > ../symlinks.svndump