##// END OF EJS Templates
Document log date ranges and mention 'hg help dates' for all commands (issue998)
Document log date ranges and mention 'hg help dates' for all commands (issue998)

File last commit:

r5652:e90e72c6 default
r6163:1f733c2f default
Show More
test-mq-missingfiles
73 lines | 1.3 KiB | text/plain | TextLexer
/ tests / test-mq-missingfiles
#!/bin/sh
# Test issue835:
# qpush fails immediately when patching a missing file, but
# remaining added files are still created empty which will
# trick a future qrefresh.
cat > writelines.py <<EOF
import sys
path = sys.argv[1]
args = sys.argv[2:]
assert (len(args) % 2) == 0
f = file(path, 'wb')
for i in xrange(len(args)/2):
count, s = args[2*i:2*i+2]
count = int(count)
s = s.decode('string_escape')
f.write(s*count)
f.close()
EOF
echo "[extensions]" >> $HGRCPATH
echo "mq=" >> $HGRCPATH
hg init normal
cd normal
python ../writelines.py b 10 'a\n'
hg ci -Am addb
echo a > a
python ../writelines.py b 2 'b\n' 10 'a\n' 2 'c\n'
echo c > c
hg add a c
hg qnew -f changeb
hg qpop
hg rm b
hg ci -Am rmb
echo % push patch with missing target
hg qpush
echo % display added files
cat a
cat c
echo % display rejections
cat b.rej
cd ..
echo "[diff]" >> $HGRCPATH
echo "git=1" >> $HGRCPATH
hg init git
cd git
python ../writelines.py b 1 '\x00'
hg ci -Am addb
echo a > a
python ../writelines.py b 1 '\x01' 1 '\x00'
echo c > c
hg add a c
hg qnew -f changeb
hg qpop
hg rm b
hg ci -Am rmb
echo % push git patch with missing target
hg qpush 2>&1 | sed -e 's/b:.*/b: No such file or directory/'
hg st
echo % display added files
cat a
cat c
echo % display rejections
cat b.rej
cd ..