view tests/fixtures/copyafterclose.sh @ 1501:6e3f48d8002f

tests: fix ipv6 support in test_push_command.py This test runs the `svnserve` binary, which appears to resolve the hostname passed as an argument using gethostbyname(3), which can only return an IPv4 address. When run on a system that is configured to only have an IPv6 address, Mercurial will correctly resolve the hostname to an IPv6 address, but the SVN server will be listening on an incorrect IPv4 address, causing the test to fail. The workaround is to resolve the hostname using getaddrinfo(3) in the test harness and pass the resulting address to svnserve.
author Arun Kulshreshtha <kulshrax@fb.com>
date Mon, 10 Apr 2017 16:58:28 -0700
parents ba8485b9fee0
children
line wrap: on
line source

#!/bin/sh

rm -rf temp
mkdir temp
cd temp
svnadmin create repo
repo=file://`pwd`/repo
svn co $repo wc
cd wc
mkdir branches trunk tags
svn add *
svn ci -m 'btt'

cd trunk
echo trunk1 > file
mkdir dir
echo trunk1 > dir/file
svn add file dir
svn ci -m 'Add file and dir.'
cd ..
svn up

svn cp trunk branches/test
svn ci -m 'Branch.'
svn up

cd branches/test/
echo branch1 > file
echo branch1 > dir/file
svn ci -m 'edit on branch.'
cd ../../
svn up

cd trunk
echo trunk2 > file
echo trunk2 > dir/file
svn ci -m 'edit on trunk'
cd ..
svn up

svn rm trunk
svn ci -m 'Close trunk.'
svn up

cd branches/test
svn rm file
svn cp $repo/trunk/file@5 file
svn rm dir
svn cp $repo/trunk/dir@5 dir
svn ci -m 'copy from trunk before close'
cd ../..
svn up

cd ../..
svnadmin dump temp/repo > copyafterclose.svndump
echo
echo 'Complete.'
echo 'You probably want to clean up temp now.'
echo 'Dump in copyafterclose.svndump'
exit 0