view tests/test-branches @ 8552:06561793778e

inotify: Separate query sending logic from Server starting. Use a decorator around the public statusquery method of Client: start_server(query_to_server): try: query_to_server() except QueryFailed: [error recovery, inotify Server (re)starting] query_to_server() This way, introducing a new xxxquery Client method is easy: one has only to code the protocol part of xxxquery, ignoring errors, and decorating it using start_server to handle server recovery and (re)starts
author Nicolas Dumazet <nicdumz.commits@gmail.com>
date Tue, 07 Apr 2009 19:30:01 +0900
parents 8766fee6f225
children 9a89253a32e6
line wrap: on
line source

#!/bin/sh

hg init a
cd a
echo 'root' >root
hg add root
hg commit -d '0 0' -m "Adding root node"

echo 'a' >a
hg add a
hg branch a
hg commit -d '1 0' -m "Adding a branch"

hg branch q
echo 'aa' >a
hg branch -C
hg commit -d '2 0' -m "Adding to a branch"

hg update -C 0
echo 'b' >b
hg add b
hg branch b
hg commit -d '2 0' -m "Adding b branch"

echo 'bh1' >bh1
hg add bh1
hg commit -d '3 0' -m "Adding b branch head 1"

hg update -C 2
echo 'bh2' >bh2
hg add bh2
hg commit -d '4 0' -m "Adding b branch head 2"

echo 'c' >c
hg add c
hg branch c
hg commit -d '5 0' -m "Adding c branch"

echo 'd' >d
hg add d
hg branch 'a branch name much longer than the default justification used by branches'
hg commit -d '6 0' -m "Adding d branch"

hg branches
echo '-------'
hg branches -a

echo "--- Branch a"
hg log -b a

echo "---- Branch b"
hg log -b b

echo "---- going to test branch closing"
hg branches
hg up -C b
echo 'xxx1' >> b
hg commit -d '7 0' -m 'adding cset to branch b'
hg up -C aee39cd168d0
echo 'xxx2' >> b
hg commit -d '8 0' -m 'adding head to branch b'
echo 'xxx3' >> b
hg commit -d '9 0' -m 'adding another cset to branch b'
hg branches
hg heads
hg heads -a
hg commit -d '9 0' --close-branch -m 'prune bad branch'
hg branches -a
hg up -C b
hg commit -d '9 0' --close-branch -m 'close this part branch too'
echo '--- b branch should be inactive'
hg branches
hg branches -a
echo 'xxx4' >> b
hg commit -d '9 0' -m 'reopen branch with a change'
echo '--- branch b is back in action'
hg branches -a
hg heads
hg heads -a