Test a difficult-to-trigger IOError, fix cert generation in test suite.

This commit is contained in:
Aldo Cortesi 2013-02-24 11:34:01 +13:00
parent 51de9f9fdf
commit 64285140f9
3 changed files with 11 additions and 2 deletions

View File

@ -1,4 +1,5 @@
import socket, time
import mock
from netlib import tcp
from libpathod import pathoc
import tutils, tservers
@ -97,6 +98,14 @@ class TestHTTP(tservers.HTTPProxTest, SanityMixin):
assert p.request("get:'%s':h'Connection'='close'"%response)
tutils.raises("disconnect", p.request, "get:'%s'"%response)
def test_proxy_ioerror(self):
# Tests a difficult-to-trigger condition, where an IOError is raised
# within our read loop.
with mock.patch("libmproxy.proxy.ProxyHandler.read_request") as m:
m.side_effect = IOError("error!")
tutils.raises("empty reply", self.pathod, "304")
class TestHTTPS(tservers.HTTPProxTest, SanityMixin):
ssl = True

View File

@ -63,7 +63,7 @@ class ProxTestBase:
cls.server = libpathod.test.Daemon(ssl=cls.ssl)
pconf = cls.get_proxy_config()
config = proxy.ProxyConfig(
certfile=tutils.test_data.path("data/testkey.pem"),
cacert = tutils.test_data.path("data/serverkey.pem"),
**pconf
)
tmaster = cls.masterclass(cls.tqueue, config)