Mercurial > python-hglib
changeset 18:518149e32888
client: add parents command
author | Idan Kamara <idankk86@gmail.com> |
---|---|
date | Thu, 11 Aug 2011 15:20:49 +0300 |
parents | b68c444d42bb |
children | 19d2c55c3928 |
files | hglib/client.py tests/test-parents.py |
diffstat | 2 files changed, 25 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/hglib/client.py Wed Aug 10 23:27:57 2011 +0300 +++ b/hglib/client.py Thu Aug 11 15:20:49 2011 +0300 @@ -296,6 +296,17 @@ out = util.eatlines(out, 2).split('\0')[:-1] return self._parserevs(out) + def parents(self, rev=None, file=None): + args = cmdbuilder('parents', file, template=templates.changeset, r=rev) + + out = self.rawcommand(args) + if not out: + return + + out = out.split('\0')[:-1] + + return self._parserevs(out) + def paths(self, name=None): if not name: out = self.rawcommand(['paths'])
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/test-parents.py Thu Aug 11 15:20:49 2011 +0300 @@ -0,0 +1,14 @@ +import common + +class test_parents(common.basetest): + def test_noparents(self): + self.assertEquals(self.client.parents(), None) + + def test_basic(self): + self.append('a', 'a') + rev, node = self.client.commit('first', addremove=True) + self.assertEquals(node, self.client.parents()[0].node) + self.assertEquals(node, self.client.parents(file='a')[0].node) + + def test_two_parents(self): + pass