view tests/test-mq-guards.out @ 11322:3d6915f5a2bb

improve --branch processing (and differentiate from # syntax) Previously #foo and --branch foo were handled identically. The behavior of #foo hasn't changed, but --branch now works like this: 1) If branchmap is not supported on the remote, the operation fails. 2) If branch is '.', substitute with branch of the working dir parent. 3) If branch exists remotely, its heads are expanded. 4) Otherwise, the operation fails. Tests have been added for the new cases.
author Sune Foldager <cryo@cyanite.org>
date Thu, 10 Jun 2010 12:46:09 +0200
parents 29c39fe2491b
children 1c00577b0298
line wrap: on
line source

adding x
popping c.patch
popping b.patch
popping a.patch
patch queue now empty
% should fail
abort: no patch named does-not-exist.patch
% should fail
abort: no patches applied
applying a.patch
now at: a.patch
% should guard a.patch
% should print +a
a.patch: +a
popping a.patch
patch queue now empty
% should fail
cannot push 'a.patch' - guarded by ['+a']
a.patch: +a
% should push b.patch
applying b.patch
now at: b.patch
popping b.patch
patch queue now empty
% test selection of an empty guard
abort: guard cannot be an empty string
number of unguarded, unapplied patches has changed from 2 to 3
% should push a.patch
applying a.patch
now at: a.patch
% should print -a
c.patch: -a
% should skip c.patch
applying b.patch
skipping c.patch - guarded by '-a'
now at: b.patch
% should display b.patch
b.patch
% should push c.patch
applying c.patch
now at: c.patch
popping c.patch
popping b.patch
popping a.patch
patch queue now empty
guards deactivated
number of unguarded, unapplied patches has changed from 3 to 2
% should push all
applying b.patch
applying c.patch
now at: c.patch
popping c.patch
popping b.patch
patch queue now empty
number of unguarded, unapplied patches has changed from 1 to 2
% should push a.patch, not b.patch
applying a.patch
now at: a.patch
applying c.patch
now at: c.patch
popping c.patch
popping a.patch
patch queue now empty
% should push b.patch
applying b.patch
now at: b.patch
applying c.patch
now at: c.patch
c.patch
popping c.patch
popping b.patch
patch queue now empty
number of unguarded, unapplied patches has changed from 2 to 3
% should push a.patch, b.patch
applying a.patch
now at: a.patch
applying b.patch
now at: b.patch
popping b.patch
popping a.patch
patch queue now empty
number of unguarded, unapplied patches has changed from 3 to 2
% list patches and guards
a.patch: +1 +2 -3
b.patch: +2
c.patch: unguarded
% list patches and guards with color
a.patch: +1 +2 -3
b.patch: +2
c.patch: unguarded
% list series
0 G a.patch
1 U b.patch
2 U c.patch
% list guards
1
2
3
% should push b.patch
applying b.patch
now at: b.patch
applying c.patch
now at: c.patch
guards deactivated
popping guarded patches
popping c.patch
popping b.patch
patch queue now empty
reapplying unguarded patches
applying c.patch
now at: c.patch
% guards in series file: +1 +2 -3
+1
+2
-3
% should show c.patch
c.patch
% should show :
% new.patch: +1 +2 -3
% b.patch: +2
% c.patch: unguarded
new.patch: +1 +2 -3
b.patch: +2
c.patch: unguarded
popping d.patch
now at: c.patch
% should show new.patch and b.patch as Guarded, c.patch as Applied
% and d.patch as Unapplied
0 G new.patch
1 G b.patch
2 A c.patch
3 U d.patch
% qseries again, but with color
0 G new.patch
1 G b.patch
2 A c.patch
3 U d.patch
% new.patch, b.patch: Guarded. c.patch: Applied. d.patch: Guarded.
0 G new.patch
1 G b.patch
2 A c.patch
3 G d.patch
popping c.patch
patch queue now empty
new.patch: +1 +2 -3
b.patch: +2
c.patch: unguarded
d.patch: +2
% hg qapplied
% hg qapplied -v
% hg qunapplied
c.patch
% hg qunapplied -v
0 G new.patch
1 G b.patch
2 U c.patch
3 G d.patch
number of unguarded, unapplied patches has changed from 1 to 2
% hg qapplied
% hg qapplied -v
% hg qunapplied
new.patch
c.patch
% hg qunapplied -v
0 U new.patch
1 G b.patch
2 U c.patch
3 G d.patch
applying new.patch
skipping b.patch - guarded by ['+2']
applying c.patch
skipping d.patch - guarded by ['+2']
now at: c.patch
% hg qapplied
new.patch
c.patch
% hg qapplied -v
0 A new.patch
1 G b.patch
2 A c.patch
% hg qunapplied
% hg qunapplied -v
3 G d.patch
number of unguarded, unapplied patches has changed from 0 to 1
number of guarded, applied patches has changed from 1 to 0
% hg qapplied
new.patch
c.patch
% hg qapplied -v
0 A new.patch
1 U b.patch
2 A c.patch
% hg qunapplied
d.patch
% hg qunapplied -v
3 U d.patch
% hg qapplied new.patch
new.patch
% hg qunapplied new.patch
b.patch
d.patch
% hg qapplied b.patch
new.patch
% hg qunapplied b.patch
d.patch
% hg qapplied c.patch
new.patch
c.patch
% hg qunapplied c.patch
d.patch
% hg qapplied d.patch
new.patch
c.patch
% hg qunapplied d.patch
% hg qseries -m: only b.patch should be shown
the guards file was not ignored in the past
b.patch
% hg qseries -m with color
b.patch