Index: third_party/twisted_8_1/twisted/names/test/test_srvconnect.py |
diff --git a/third_party/twisted_8_1/twisted/names/test/test_srvconnect.py b/third_party/twisted_8_1/twisted/names/test/test_srvconnect.py |
deleted file mode 100644 |
index b6aa5d8795c251140abd4feb4af6677964c9ce1c..0000000000000000000000000000000000000000 |
--- a/third_party/twisted_8_1/twisted/names/test/test_srvconnect.py |
+++ /dev/null |
@@ -1,140 +0,0 @@ |
-# Copyright (c) 2007 Twisted Matrix Laboratories. |
-# See LICENSE for details. |
- |
-""" |
-Test cases for L{twisted.names.srvconnect}. |
-""" |
- |
-from twisted.internet import defer, protocol |
-from twisted.names import client, dns, srvconnect |
-from twisted.names.common import ResolverBase |
-from twisted.names.error import DNSNameError |
-from twisted.internet.error import DNSLookupError |
-from twisted.trial import unittest |
- |
-class FakeResolver(ResolverBase): |
- """ |
- Resolver that only gives out one given result. |
- |
- Either L{results} or L{failure} must be set and will be used for |
- the return value of L{_lookup} |
- |
- @ivar results: List of L{dns.RRHeader} for the desired result. |
- @type results: C{list} |
- @ivar failure: Failure with an exception from L{twisted.names.error}. |
- @type failure: L{Failure<twisted.python.failure.Failure>} |
- """ |
- |
- def __init__(self, results=None, failure=None): |
- self.results = results |
- self.failure = failure |
- |
- def _lookup(self, name, cls, qtype, timeout): |
- """ |
- Return the result or failure on lookup. |
- """ |
- if self.results is not None: |
- return defer.succeed((self.results, [], [])) |
- else: |
- return defer.fail(self.failure) |
- |
-class DummyReactor(object): |
- """ |
- Dummy reactor with fake connectTCP that stores the passed parameters. |
- """ |
- def __init__(self): |
- self.host = None |
- self.port = None |
- self.factory = None |
- |
- def connectTCP(self, host, port, factory, timeout=30, bindaddress=None): |
- self.host = host |
- self.port = port |
- self.factory = factory |
- |
-class DummyFactory(protocol.ClientFactory): |
- """ |
- Dummy client factory that stores the reason of connection failure. |
- """ |
- def __init__(self): |
- self.reason = None |
- |
- def clientConnectionFailed(self, connector, reason): |
- self.reason = reason |
- |
-class SRVConnectorTest(unittest.TestCase): |
- |
- def setUp(self): |
- client.theResolver = FakeResolver() |
- self.reactor = DummyReactor() |
- self.factory = DummyFactory() |
- self.connector = srvconnect.SRVConnector(self.reactor, 'xmpp-server', |
- 'example.org', self.factory) |
- |
- def tearDown(self): |
- client.theResolver = None |
- |
- def test_SRVPresent(self): |
- """ |
- Test connectTCP gets called with the address from the SRV record. |
- """ |
- payload = dns.Record_SRV(port=6269, target='host.example.org', ttl=60) |
- client.theResolver.results = [dns.RRHeader(name='example.org', |
- type=dns.SRV, |
- cls=dns.IN, ttl=60, |
- payload=payload)] |
- self.connector.connect() |
- |
- self.assertIdentical(None, self.factory.reason) |
- self.assertEqual('host.example.org', self.reactor.host) |
- self.assertEqual(6269, self.reactor.port) |
- |
- def test_SRVNotPresent(self): |
- """ |
- Test connectTCP gets called with fallback parameters on NXDOMAIN. |
- """ |
- client.theResolver.failure = DNSNameError('example.org') |
- self.connector.connect() |
- |
- self.assertIdentical(None, self.factory.reason) |
- self.assertEqual('example.org', self.reactor.host) |
- self.assertEqual('xmpp-server', self.reactor.port) |
- |
- def test_SRVNoResult(self): |
- """ |
- Test connectTCP gets called with fallback parameters on empty result. |
- """ |
- client.theResolver.results = [] |
- self.connector.connect() |
- |
- self.assertIdentical(None, self.factory.reason) |
- self.assertEqual('example.org', self.reactor.host) |
- self.assertEqual('xmpp-server', self.reactor.port) |
- |
- def test_SRVBadResult(self): |
- """ |
- Test connectTCP gets called with fallback parameters on bad result. |
- """ |
- client.theResolver.results = [dns.RRHeader(name='example.org', |
- type=dns.CNAME, |
- cls=dns.IN, ttl=60, |
- payload=None)] |
- self.connector.connect() |
- |
- self.assertIdentical(None, self.factory.reason) |
- self.assertEqual('example.org', self.reactor.host) |
- self.assertEqual('xmpp-server', self.reactor.port) |
- |
- def test_SRVNoService(self): |
- """ |
- Test that connecting fails when no service is present. |
- """ |
- payload = dns.Record_SRV(port=5269, target='.', ttl=60) |
- client.theResolver.results = [dns.RRHeader(name='example.org', |
- type=dns.SRV, |
- cls=dns.IN, ttl=60, |
- payload=payload)] |
- self.connector.connect() |
- |
- self.assertNotIdentical(None, self.factory.reason) |
- self.factory.reason.trap(DNSLookupError) |