U
    
W[                     @   s2   d Z ddlmZ ddlmZ G dd dejZdS )z,
Tests for implementations of L{inetdconf}.
    )	inetdconf)unittestc                   @   s0   e Zd ZdZdZdZdd Zdd Zdd ZdS )	ServicesConfTestsz-
    Tests for L{inetdconf.ServicesConf}
    Nc              	   C   s\   |   | _t| jd}|d W 5 Q R X |   | _t| jd}|d W 5 Q R X d S )Nwz
            # This is a comment
            http            80/tcp          www www-http    # WorldWideWeb HTTP
            http            80/udp          www www-http
            http            80/sctp
            z]
            https           443/tcp                # http protocol over TLS/SSL
            )ZmktempservicesFilename1openwriteservicesFilename2)selff r   D/usr/lib/python3/dist-packages/twisted/runner/test/test_inetdconf.pysetUp   s    

zServicesConfTests.setUpc                 C   s:   t  }| j|_|  | |jdddddddd dS )z<
        Services are parsed from default filename.
        P   ))httptcp)r   udp)r   Zsctp)wwwr   )r   r   )www-httpr   )r   r   N)r   ServicesConfr   ZdefaultFilename	parseFileassertEqualservices)r
   confr   r   r   test_parseDefaultFilename$   s    z+ServicesConfTests.test_parseDefaultFilenamec              	   C   s>   t  }t| j}|| W 5 Q R X | |jddi dS )z9
        Services are parsed from given C{file}.
        )Zhttpsr   i  N)r   r   r   r	   r   r   r   )r
   r   r   r   r   r   test_parseFile6   s     z ServicesConfTests.test_parseFile)	__name__
__module____qualname____doc__r   r	   r   r   r   r   r   r   r   r      s   r   N)r   Ztwisted.runnerr   Ztwisted.trialr   ZTestCaser   r   r   r   r   <module>   s   