File: //usr/lib/python3/dist-packages/twisted/internet/test/__pycache__/test_unix.cpython-38.pyc
U
W[�� � @ s� d Z ddlmZmZ ddlmZ ddlmZmZmZm Z m
Z
ddlmZm
Z
ddlmZmZmZmZmZ ddlmZ ddlmZ dd lmZ zdd
lmZ W n ek
r� dZY nX ddlmZ dd
lmZmZ ddl m!Z! ddl"m#Z#m$Z$m%Z% ddl&m'Z'm(Z( ddl)m*Z*m+Z+m,Z, ddl-m.Z.m/Z/m0Z0m1Z1 ddl2m3Z3 ddl2m4Z4m5Z5 ddl6m7Z7 ddl8m9Z9 ddl:m;Z; ddl<m=Z= ddl>m?Z?m@Z@mAZAmBZB ddl8mCZC ddl8mDZD ddl8mEZE ddl8mFZF ddlGmHZHmIZImJZJ ddlKmLZL dd lMmNZNmOZOmPZP dd!lQmRZR dd"lSmTZT dd#lUmVZV eTd$�dk �r.dZWnd%ZWG d&d'� d'eX�ZYd(d)� ZZG d*d+� d+e9�Z[G d,d-� d-eC�Z\ee.�G d.d/� d/eC��Z]G d0d1� d1eYe;eD�Z^G d2d3� d3eYe;�Z_G d4d5� d5eX�Z`G d6d7� d7eX�ZaG d8d9� d9eX�ZbG d:d;� d;eaebe;e=e?�ZcG d<d=� d=e`ebe;e=e?�ZdG d>d?� d?e@e;�Zeef� �ge^�h� � ef� �ge_�h� � ef� �gec�h� � ef� �ged�h� � ef� �gee�h� � G d@dA� dAe;eE�Zief� �gei�h� � dS )Bz/
Tests for implementations of L{IReactorUNIX}.
� )�division�absolute_import)�S_IMODE)�stat�close�urandom�unlink�fstat)�mktemp�mkstemp)�AF_INET�SOCK_STREAM�
SOL_SOCKET�socket�error)�pformat)�md5)�pack)�AF_UNIXN)�implementer)�
interfaces�base)�UNIXAddress)�Deferred�fail�
gatherResults)�UNIXServerEndpoint�UNIXClientEndpoint)�ConnectionClosed�FileDescriptorOverrun�CannotListenError)�IFileDescriptorReceiver�IReactorUNIX�IReactorSocket�
IReactorFDSet)�DatagramProtocol)�
ServerFactory�
ClientFactory)�LoopingCall)�EndpointCreator)�ReactorBuilder)�ObjectModelIntegrationMixin)�StreamTransportTestsMixin�WriteSequenceTestsMixin�MyClientFactory�MyServerFactory)�ConnectableProtocol)�ConnectionTestsMixin)�StreamClientTestsMixin)�runProtocolsWithReactor)�nativeString�_PY3� iteritems)�Failure)�addObserver�removeObserver�err)�platform)�
requireModule)�_coerceToFilesystemEncodingztwisted.python.sendmsgz>sendmsg extension unavailable, extended UNIX features disabledc @ s e Zd ZdZdd� ZdS )�UNIXFamilyMixinzK
Test-helper defining mixin for things related to AF_UNIX sockets.
c C sB d}| � � }t||�|||d�}|�� | �tt|�j�|� dS )z}
Assert that the mode of the created unix socket is set to the mode
specified to the reactor method.
i� )�modeN)�buildReactor�getattrZ
stopListening�assertEqualr r �st_mode)�selfZ
methodName�path�factoryr? �reactorZunixPort� rH �A/usr/lib/python3/dist-packages/twisted/internet/test/test_unix.py� _modeTest@ s
zUNIXFamilyMixin._modeTestN)�__name__�
__module__�__qualname__�__doc__rJ rH rH rH rI r>