File: //usr/lib/python3/dist-packages/twisted/pair/test/__pycache__/test_ip.cpython-38.pyc
U
W[,; � @ sd d dl mZ d dlmZ d dlmZmZ d dlmZ e� ej
�G dd� d��ZG dd� dej�Z
d S )
� )�unittest)�
components)�ip�raw)� interfacec @ s e Zd Zdd� Zdd� ZdS )�
MyProtocolc C s t |�| _d S )N)�list� expecting)�selfr � r �;/usr/lib/python3/dist-packages/twisted/pair/test/test_ip.py�__init__ s zMyProtocol.__init__c K s� | j std��| j �d�\}}|�� }tt|��}|�� }tt|��}||ks^td||f ��|D ].}|| || ksbtd||| || f ��qb||ks�td||f ��||ks�td||f ��d S )Nz(Got a packet when not expecting anymore.r zExpected %r, got %rzExpected %s=%r, got %r)r �AssertionError�pop�keysr �sorted)r
�data�kwZ
expectDataZexpectKwZexpectKwKeysZkwKeys�kr r r �datagramReceived s ,zMyProtocol.datagramReceivedN)�__name__�
__module__�__qualname__r
r r r r r r
s r c @ sT e Zd Zdd� Zdd� Zdd� Zdd� Zd d
� Zdd� Zd
d� Z dd� Z
dd� ZdS )�IPTestsc C sj t �� }tddddddddd d
dddd
d�
fg�}|�d|� |jdddddd� |jrftd|j ��d S �N� foobarr �1.2.3.4�5.6.7.8� � � � � �� �� � � �
�partial�dest�source�protocol�versionZihlZtosZtot_lenZfragment_idZfragment_offsetZ
dont_fragmentZmore_fragmentsZttl� T ޭ��FEfoobar�dummy�r( r) r* r+ �5Should not expect any more packets, but still want %r�r �
IPProtocolr �addProtor r r �r
�proto�p1r r r �testPacketParsing s8 ����zIPTests.testPacketParsingc C s� t �� }tddddddddd d
dddd
d�
fddddddddd d
dddd
d�
fg�}|�d|� |jdddddd� |jdddddd� |jr�td|j ��d S )Nr r r r r r r r! r"