45 lines
1.3 KiB
Python
45 lines
1.3 KiB
Python
# Copyright (c) Twisted Matrix Laboratories.
|
|
# See LICENSE for details.
|
|
|
|
"""
|
|
Tests for various parts of L{twisted.web}.
|
|
"""
|
|
from zope.interface import implementer, verify
|
|
|
|
from twisted.internet import defer, interfaces
|
|
from twisted.trial import unittest
|
|
|
|
from twisted.web import client
|
|
|
|
@implementer(interfaces.IStreamClientEndpoint)
|
|
class DummyEndPoint(object):
|
|
|
|
"""An endpoint that does not connect anywhere"""
|
|
|
|
def __init__(self, someString):
|
|
self.someString = someString
|
|
|
|
def __repr__(self):
|
|
return 'DummyEndPoint({})'.format(self.someString)
|
|
|
|
def connect(self, factory):
|
|
return defer.succeed(dict(factory=factory))
|
|
|
|
class HTTPConnectionPoolTests(unittest.TestCase):
|
|
"""
|
|
Unit tests for L{client.HTTPConnectionPoolTest}.
|
|
"""
|
|
|
|
def test_implements(self):
|
|
"""L{DummyEndPoint}s implements L{interfaces.IStreamClientEndpoint}"""
|
|
ep = DummyEndPoint("something")
|
|
verify.verifyObject(interfaces.IStreamClientEndpoint, ep)
|
|
|
|
def test_repr(self):
|
|
"""connection L{repr()} includes endpoint's L{repr()}"""
|
|
pool = client.HTTPConnectionPool(reactor=None)
|
|
ep = DummyEndPoint("this_is_probably_unique")
|
|
d = pool.getConnection('someplace', ep)
|
|
result = self.successResultOf(d)
|
|
representation = repr(result)
|
|
self.assertIn(repr(ep), representation)
|