view tests/test-init @ 4166:c0271aba6abe

small fixes for the parent patch - format.usestore is a boolean option - python wart: ("revlogv1") is a string, not a tuple - only create a dummy changelog if we're using a store - add a test
author Alexis S. L. Carvalho <alexis@cecm.usp.br>
date Thu, 08 Mar 2007 20:08:24 -0300
parents 8ae88ed2a3b6
children 27590c19ad30
line wrap: on
line source

#!/bin/sh

# This test tries to exercise the ssh functionality with a dummy script

cat <<'EOF' > dummyssh
#!/bin/sh
# this attempts to deal with relative pathnames
cd `dirname $0`

# check for proper args
if [ $1 != "user@dummy" ] ; then
	exit -1
fi

# check that we're in the right directory
if [ ! -x dummyssh ] ; then
	exit -1
fi

echo Got arguments 1:$1 2:$2 3:$3 4:$4 5:$5 >> dummylog
$2
EOF
chmod +x dummyssh

checknewrepo()
{
    name=$1

    if [ -d $name/.hg/store ]; then
	echo store created
    fi

    if [ -f $name/.hg/00changelog.i ]; then
	echo 00changelog.i created
    fi

    cat $name/.hg/requires
}

echo "# creating 'local'"
hg init local
checknewrepo local
echo this > local/foo
hg ci --cwd local -A -m "init" -d "1000000 0"

echo "# creating repo with old format"
hg --config format.usestore=false init old
checknewrepo old

echo "#test failure"
hg init local

echo "# init+push to remote2"
hg init -e ./dummyssh ssh://user@dummy/remote2
hg incoming -R remote2 local
hg push -R local -e ./dummyssh ssh://user@dummy/remote2

echo "# clone to remote1"
hg clone -e ./dummyssh local ssh://user@dummy/remote1

echo "# init to existing repo"
hg init -e ./dummyssh ssh://user@dummy/remote1

echo "# clone to existing repo"
hg clone -e ./dummyssh local ssh://user@dummy/remote1

echo "# output of dummyssh"
cat dummylog

echo "# comparing repositories"
hg tip -q -R local
hg tip -q -R remote1
hg tip -q -R remote2

echo "# check names for repositories (clashes with URL schemes, special chars)"
for i in bundle file hg http https old-http ssh static-http " " "with space"; do
  echo "# hg init \"$i\""
  hg init "$i"
  test -d "$i" -a -d "$i/.hg" && echo "ok" || echo "failed"
done