view tests/test-mq-header-date @ 8048:d22432bdcba1

convert/cvs: delay CVS log parsing after initialization (issue1581/2) Source and destination constructors should be fast so configurations issues are hit quickly, including authentication and filemap/authormap/splicemap issues. Delaying might be a problem if the remove side disconnects idle connections while the log is being read. It did not happen when converting openafs repository, where log retrieval took at least 10mn.
author Patrick Mezard <pmezard@gmail.com>
date Sat, 11 Apr 2009 21:17:11 +0200
parents 38b592536a58
children 8cb81d75730c
line wrap: on
line source

#!/bin/sh

echo "[extensions]" >> $HGRCPATH
echo "mq=" >> $HGRCPATH
echo "[diff]" >> $HGRCPATH
echo "nodates=true" >> $HGRCPATH


catpatch() {
    cat .hg/patches/$1.patch | sed -e "s/^diff \-r [0-9a-f]* /diff -r ... /"
}

catlog() {
    catpatch $1
    hg log --template "{rev}: {desc} - {author}\n"
}

catlogd() {
    catpatch $1
    hg log --template "{rev}: {desc} - {author} - {date}\n"
}

drop() {
    hg qpop
    hg qdel $1.patch
}


echo ==== init
hg init a
cd a
hg qinit


echo ==== qnew -d
hg qnew -d '3 0' 1.patch
catlogd 1

echo ==== qref
echo "1" >1
hg add
hg qref
catlogd 1

echo ==== qref -d
hg qref -d '4 0'
catlogd 1


echo ==== qnew
hg qnew 2.patch
echo "2" >2
hg add
hg qref
catlog 2

echo ==== qref -d
hg qref -d '5 0'
catlog 2

drop 2


echo ==== qnew -d -m
hg qnew -d '6 0' -m "Three" 3.patch
catlogd 3

echo ==== qref
echo "3" >3
hg add
hg qref
catlogd 3

echo ==== qref -m
hg qref -m "Drei"
catlogd 3

echo ==== qref -d
hg qref -d '7 0'
catlogd 3

echo ==== qref -d -m
hg qref -d '8 0' -m "Three (again)"
catlogd 3


echo ==== qnew -m
hg qnew -m "Four" 4.patch
echo "4" >4
hg add
hg qref
catlog 4

echo ==== qref -d
hg qref -d '9 0'
catlog 4

drop 4


echo ==== qnew with HG header
hg qnew 5.patch
hg qpop
echo "# HG changeset patch" >>.hg/patches/5.patch
echo "# Date 10 0" >>.hg/patches/5.patch
hg qpush 2>&1 | grep 'Now at'
catlogd 5

echo ==== hg qref
echo "5" >5
hg add
hg qref
catlogd 5

echo ==== hg qref -d
hg qref -d '11 0'
catlogd 5


echo ==== qnew -u
hg qnew -u jane 6.patch
echo "6" >6
hg add
hg qref
catlog 6

echo ==== qref -d
hg qref -d '12 0'
catlog 6

drop 6


echo ==== qnew -d
hg qnew -d '13 0' 7.patch
echo "7" >7
hg add
hg qref
catlog 7

echo ==== qref -u
hg qref -u john
catlogd 7


echo ==== qnew
hg qnew 8.patch
echo "8" >8
hg add
hg qref
catlog 8

echo ==== qref -u -d
hg qref -u john -d '14 0'
catlog 8

drop 8


echo ==== qnew -m
hg qnew -m "Nine" 9.patch
echo "9" >9
hg add
hg qref
catlog 9

echo ==== qref -u -d
hg qref -u john -d '15 0'
catlog 9

drop 9


echo ==== "qpop -a / qpush -a"
hg qpop -a
hg qpush -a
hg log --template "{rev}: {desc} - {author} - {date}\n"