Mercurial > hg-stable
changeset 28256:55325bdf6c13
testing: expand Hypothesis tests with branch commands
This builds on the previous work to add Hypothesis based stateful
testing to add branching commands to the model.
author | David R. MacIver <david@drmaciver.com> |
---|---|
date | Wed, 24 Feb 2016 13:06:43 +0000 |
parents | f75f7d39cca3 |
children | 7ff725db2fdf |
files | tests/test-verify-repo-operations.py |
diffstat | 1 files changed, 34 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/tests/test-verify-repo-operations.py Wed Feb 24 13:05:45 2016 +0000 +++ b/tests/test-verify-repo-operations.py Wed Feb 24 13:06:43 2016 +0000 @@ -133,6 +133,7 @@ # be provided as arguments to future operations. paths = Bundle('paths') contents = Bundle('contents') + branches = Bundle('branches') committimes = Bundle('committimes') def __init__(self): @@ -250,6 +251,13 @@ def gencontent(self, content): return content + @rule( + target=branches, + name=safetext, + ) + def genbranch(self, name): + return name + @rule(target=paths, source=paths) def lowerpath(self, source): return source.lower() @@ -369,6 +377,32 @@ def export(self): self.hg("export") + # Section: Branch management + @rule() + def checkbranch(self): + self.hg("branch") + + @rule(branch=branches) + def switchbranch(self, branch): + with acceptableerrors( + 'cannot use an integer as a name', + 'cannot be used in a name', + 'a branch of the same name already exists', + 'is reserved', + ): + self.hg("branch", "--", branch) + + @rule(branch=branches, clean=st.booleans()) + def update(self, branch, clean): + with acceptableerrors( + 'unknown revision', + 'parse error', + ): + if clean: + self.hg("update", "-C", "--", branch) + else: + self.hg("update", "--", branch) + settings.register_profile( 'default', settings( timeout=300,