comparison hglib/client.py @ 11:0549d00a617d

client: add missing options to branch() and add some more tests
author Idan Kamara <idankk86@gmail.com>
date Wed, 10 Aug 2011 00:21:05 +0300
parents fce3102c19e5
children c2a9b716cd80
comparison
equal deleted inserted replaced
10:fce3102c19e5 11:0549d00a617d
139 self.server.wait() 139 self.server.wait()
140 ret = self.server.returncode 140 ret = self.server.returncode
141 self.server = None 141 self.server = None
142 return ret 142 return ret
143 143
144 def branch(self, name=None): 144 def branch(self, name=None, clean=False, force=False):
145 if not name: 145 if name and clean:
146 return self.rawcommand(['branch']).rstrip() 146 raise ValueError('cannot use both name and clean')
147
148 args = cmdbuilder('branch', name, f=force, C=clean)
149 out = self.rawcommand(args).rstrip()
150
151 if name:
152 return name
153 elif not clean:
154 return out
155 else:
156 # len('reset working directory to branch ') == 34
157 return out[34:]
147 158
148 def branches(self): 159 def branches(self):
149 out = self.rawcommand(['branches']) 160 out = self.rawcommand(['branches'])
150 branches = {} 161 branches = {}
151 for line in out.rstrip().split('\n'): 162 for line in out.rstrip().split('\n'):