Known subclasses: twisted.internet.test.test_tcp.TCP4ClientTestsBuilder, twisted.internet.test.test_tcp.TCP6ClientTestsBuilder

Base class for builders defining tests related to IReactorTCP.connectTCP. Classes which uses this in must provide all of the documented instance variables in order to specify how the test works. These are documented as instance variables rather than declared as methods due to some peculiar inheritance ordering concerns, but they are effectively abstract methods.

Instance Variable endpoints A client/server endpoint creator appropriate to the address family being tested. (type: twisted.internet.test.connectionmixins.EndpointCreator)
Instance Variable interface 0 An IP address literal to locally bind a socket to as well as to connect to. This can be any valid interface for the local host. (type: str)
Instance Variable port 0 An unused local listening port to listen on and connect to. This will be used in conjunction with the interface. (Depending on what they're testing, some tests will locate their own port with findFreePort instead.) (type: int)
Instance Variable family an address family constant, such as socket.AF_INET, socket.AF_INET6, or socket.AF_UNIX, which indicates the address family of the transport type under test. (type: int)
Instance Variable addressClass the twisted.internet.interfaces.IAddress implementor associated with the transport type under test. Must also be a 3-argument callable which produces an instance of same. (type: type)
Instance Variable fakeDomainName A fake domain name to use, to simulate hostname resolution and to distinguish between hostnames and IP addresses where necessary. (type: str)
Method port Return the port number to connect to, using self._port set up by listen if available.
Method interface Return the interface attribute from the endpoints object.
Method listen Start a TCP server with the given factory.
Method connect Start a TCP client with the given factory.
Method test_buildProtocolReturnsNone When the factory's buildProtocol returns None the connection is gracefully closed.
Method test_addresses No summary
Method test_badContext If the context factory passed to ITCPTransport.startTLS raises an exception from its getContext method, that exception is raised by ITCPTransport.startTLS.

Inherited from ReactorBuilder:

Class Variable skippedReactors A dict mapping FQPN strings of reactors for which the tests defined by this class will be skipped to strings giving the skip message.
Class Variable requiredInterfaces A list of interfaces which the reactor must provide or these tests will be skipped. The default, None, means that no interfaces are required.
Instance Variable reactorFactory A no-argument callable which returns the reactor to use for testing.
Instance Variable originalHandler The SIGCHLD handler which was installed when setUp ran and which will be re-installed when tearDown runs.
Method setUp Clear the SIGCHLD handler, if there is one, to ensure an environment like the one which exists prior to a call to reactor.run.
Method tearDown Restore the original SIGCHLD handler and reap processes as long as there seem to be any remaining.
Method unbuildReactor Clean up any resources which may have been allocated for the given reactor by its creation or by a test which used it.
Method buildReactor Create and return a reactor using self.reactorFactory.
Method getTimeout Determine how long to run the test before considering it failed.
Method runReactor Run the reactor for at most the given amount of time.
Class Method makeTestCaseClasses Create a SynchronousTestCase subclass which mixes in cls for each known reactor and return a dict mapping their names to them.
Instance Variable _reactors A list of FQPN strings giving the reactors for which SynchronousTestCases will be created.

Inherited from ConnectionTestsMixin:

Method test_logPrefix Client and server transports implement ILoggingContext.logPrefix to return a message reflecting the protocol they are running.
Method test_writeAfterDisconnect After a connection is disconnected, ITransport.write and ITransport.writeSequence are no-ops.
Method test_protocolGarbageAfterLostConnection After the connection a protocol is being used for is closed, the reactor discards all of its references to the protocol.

Inherited from StreamClientTestsMixin:

Method test_interface The connect method returns an object providing IConnector.
Method test_clientConnectionFailedStopsReactor The reactor can be stopped by a client factory's clientConnectionFailed method.
Method test_connectEvent This test checks that we correctly get notifications event for a client. This ought to prevent a regression under Windows using the GTK2 reactor. See #3925.
Method test_unregisterProducerAfterDisconnect No summary
Method test_disconnectWhileProducing If loseConnection is called while a producer is registered with the transport, the connection is closed after the producer is unregistered.
endpoints =
A client/server endpoint creator appropriate to the address family being tested. (type: twisted.internet.test.connectionmixins.EndpointCreator)
interface 0 =
An IP address literal to locally bind a socket to as well as to connect to. This can be any valid interface for the local host. (type: str)
port 0 =
An unused local listening port to listen on and connect to. This will be used in conjunction with the interface. (Depending on what they're testing, some tests will locate their own port with findFreePort instead.) (type: int)
family =
an address family constant, such as socket.AF_INET, socket.AF_INET6, or socket.AF_UNIX, which indicates the address family of the transport type under test. (type: int)
addressClass =
the twisted.internet.interfaces.IAddress implementor associated with the transport type under test. Must also be a 3-argument callable which produces an instance of same. (type: type)
fakeDomainName =
A fake domain name to use, to simulate hostname resolution and to distinguish between hostnames and IP addresses where necessary. (type: str)
@property
def port(self):

Return the port number to connect to, using self._port set up by listen if available.

ReturnsThe port number to connect to. (type: int)
@property
def interface(self):

Return the interface attribute from the endpoints object.

def listen(self, reactor, factory):

Start a TCP server with the given factory.

ParametersreactorThe reactor to create the TCP port in.
factoryThe server factory.
ReturnsA TCP port instance.
def connect(self, reactor, factory):

Start a TCP client with the given factory.

ParametersreactorThe reactor to create the connection in.
factoryThe client factory.
ReturnsA TCP connector instance.
def test_buildProtocolReturnsNone(self):

When the factory's buildProtocol returns None the connection is gracefully closed.

def test_addresses(self):

A client's transport's getHost and getPeer return IPv4Address instances which have the dotted-quad string form of the resolved address of the local and remote endpoints of the connection respectively as their host attribute, not the hostname originally passed in to connectTCP, if a hostname was used.

def test_badContext(self):

If the context factory passed to ITCPTransport.startTLS raises an exception from its getContext method, that exception is raised by ITCPTransport.startTLS.

API Documentation for twisted, generated by pydoctor at 2020-03-25 17:34:30.