Mercurial > python-hglib
view tests/test-hglib.py @ 197:6949fc164439 2.5
hgclient: look for an open server before closing it in ResponseError block
At least some of the codepaths that can throw a ResponseError close
the server first (the one in _readchannel does so in order to detect
server startup failures, for example), so we have to verify we have a
server to close before doing so, otherwise we can lose the
ResponseError and the user sees an AttributeError when we try to use
.close() on a NoneType.
author | Augie Fackler <raf@durin42.com> |
---|---|
date | Sun, 10 Dec 2017 12:52:37 -0500 |
parents | e6589149b2c8 |
children |
line wrap: on
line source
from tests import common import hglib class test_hglib(common.basetest): def setUp(self): pass def test_close_fds(self): """A weird Python bug that has something to do to inherited file descriptors, see http://bugs.python.org/issue12786 """ common.basetest.setUp(self) client2 = hglib.open() self.client.close() def test_open_nonexistent(self): # setup stuff necessary for basetest.tearDown() self.clients = [] self._oldopen = hglib.client.hgclient.open try: self.clients.append(hglib.open('inexistent')) # hg 3.5 can't report error (fixed by 7332bf4ae959) #self.fail('ServerError not raised') except hglib.error.ServerError as inst: self.assertTrue('inexistent' in str(inst))