Ñò
à"Ic           @   sA  d  d k  Z  d  d k l Z l Z d  d k Z d  d k Z y d  d k Z d  d k Z Wn e j
 o e d ƒ ‚ n Xe	 e d ƒ p e d ƒ ‚ n y e
 d d ƒ Z e i ƒ  Wn e j
 o e d ƒ ‚ n Xy d  d k Z Wn e j
 o d Z n Xd	 e  i f d
 „  ƒ  YZ d „  Z e d j o e ƒ  n d S(   iÿÿÿÿN(   t   TestSkippedt   run_unittests   No fcntl or termios modulet	   TIOCGPGRPs%   termios module doesn't have TIOCGPGRPs   /dev/ttyt   rs   Unable to open /dev/ttyt
   IoctlTestsc           B   s#   e  Z d  „  Z d „  Z d „  Z RS(   c         C   s|   t  i ƒ  t  i d ƒ f } t d d ƒ } t i | t i d ƒ } t i	 d | ƒ d } |  i
 | | j d | | f ƒ d  S(   Ni    s   /dev/ttyR   s       t   is   %s not in %s(   t   ost   getpgrpt   getsidt   opent   fcntlt   ioctlt   termiosR   t   structt   unpackt   assert_(   t   selft   idst   ttyR   t   rpgrp(    (    s,   /mit/python/lib/python2.6/test/test_ioctl.pyt
   test_ioctl   s
    c         C   s¤   d d  k  } | i  d d g ƒ } t i ƒ  t i d ƒ f } t d d ƒ } t i | t i | d ƒ } | d } |  i	 | d ƒ |  i
 | | j d | | f ƒ d  S(   NiÿÿÿÿR   i    s   /dev/ttyR   i   s   %s not in %s(   t   arrayR   R   R   R	   R
   R   R   R   t   assertEqualsR   (   R   R   t   bufR   R   R   R   (    (    s,   /mit/python/lib/python2.6/test/test_ioctl.pyt   test_ioctl_mutate    s    
c      	   C   së   t  p t d ƒ ‚ n t  i ƒ  \ } } z  t i d j  o t i } t i d @} n. t i } t i d t i d t i ƒ ƒ \ } t i d d d d d ƒ } t i	 | | | ƒ } t i	 | | | ƒ } Wd  t
 i | ƒ t
 i | ƒ Xd  S(	   Ns   pty module requiredi    l   ÿÿ R   t   It   HHHHiP   i   (   t   ptyR    t   openptyR   t
   TIOCSWINSZR   R   t   packR
   R   R   t   close(   R   t   mfdt   sfdt   set_winsz_opcode_maybe_negt   set_winsz_opcode_post	   our_winszt	   new_winsz(    (    s,   /mit/python/lib/python2.6/test/test_ioctl.pyt%   test_ioctl_signed_unsigned_code_param*   s    			(   t   __name__t
   __module__R   R   R&   (    (    (    s,   /mit/python/lib/python2.6/test/test_ioctl.pyR      s   			
c           C   s   t  t ƒ d  S(   N(   R   R   (    (    (    s,   /mit/python/lib/python2.6/test/test_ioctl.pyt	   test_main?   s    t   __main__(   t   unittestt   test.test_supportR    R   R   R   R
   R   t   ImportErrort   hasattrR	   R   R   t   IOErrorR   t   Nonet   TestCaseR   R)   R'   (    (    (    s,   /mit/python/lib/python2.6/test/test_ioctl.pyt   <module>   s*   )	