tests/svn/svndump-encoding.sh
author Matt Harbison <matt_harbison@yahoo.com>
Mon, 09 Nov 2015 13:12:35 -0500
changeset 26952 4e566f513fd8
parent 8887 0332f8b44e54
child 27498 f3398f1f70a0
permissions -rwxr-xr-x
tests: tolerate differences between Linux and Windows error strings These are related to differences in how missing files and network connection failures are displayed. I opted to combine the strings in one line instead of using '#if windows' blocks around entire commands in order to avoid future changes being accidentally missed in the Windows sections. Globbing away the entire output seemed wrong, as it could mask other failures. The raw messages involved are: Linux Windows "* not known" <-> "getaddrinfo failed" "Connection refused" <-> "No connection could be made because the target machine actively refused it" "No such file or directory" <-> "The system cannot find the file specified" Issue 4941 indicates that NetBSD has yet another string for "* not known". Also, the histedit test shows that the missing file is printed first on Windows, last on Linux. That is controlled in windows.py:posixfile if we care to change it.

# -*- coding: utf-8 -*-
#!/bin/sh
#
# Use this script to generate encoding.svndump
#

mkdir temp
cd temp

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

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

svn co $svnurl project
cd project
echo e > trunk/é
mkdir trunk/à
echo d > trunk/à/é
svn add trunk/é trunk/à
svn ci -m hello

# Copy files and directories
svn mv trunk/é trunk/è
svn mv trunk/à trunk/ù
svn ci -m "copy files"

# Remove files
svn rm trunk/è
svn rm trunk/ù
svn ci -m 'remove files'

# Create branches with and from weird names
svn up
svn cp trunk branches/branché
echo a > branches/branché/a
svn ci -m 'branch to branché'
svn up
svn cp branches/branché branches/branchée
echo a >> branches/branché/a
svn ci -m 'branch to branchée'

# Create tag with weird name
svn up
svn cp trunk tags/branché
svn ci -m 'tag trunk'
svn cp branches/branchée tags/branchée
svn ci -m 'tag branché'
cd ..

svnadmin dump svn-repo > ../encoding.svndump