adding x Patch queue now empty % should fail abort: no patches applied applying a.patch Now at: a.patch % should guard a.patch % should print +a a.patch: +a Patch queue now empty a.patch: +a % should push b.patch applying b.patch Now at: b.patch Patch queue now empty 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 push c.patch applying c.patch Now at: c.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 Patch queue now empty % should push b.patch applying b.patch Now at: b.patch Patch queue now empty applying b.patch Now at: b.patch Patch queue now empty number of unguarded, unapplied patches has changed from 2 to 3 % should push a.patch applying a.patch Now at: a.patch Patch queue now empty number of unguarded, unapplied patches has changed from 3 to 2 % should push b.patch applying b.patch Now at: b.patch applying c.patch Now at: c.patch guards deactivated popping guarded patches Patch queue now empty reapplying unguarded patches applying b.patch applying c.patch Now at: c.patch