£Á°èZ¨Ä…–K§‚«“ô4“ÒÙ´dîfUÙÃÅ WKbyÊ¦•êŽ…È®FÒ¿ÊÎóCozá¬S@6{Í:›œêZÌ:Š•_%:¢¾¾~;‘Ã~èŠ©ÊÇí`ÔÑ©úë™µ'5I¿fš×WO%ø9¾«¾DK|€ùÍD”Ýs]nHÕ¶ê×Ó¼ãžªéUWŸÈË%DÒÕ¬ï‘]/Åcx  ‰ï2ß]ä6G[]S£ÔÏ¯rs{úëóµmÒï#UQxo·õÞCe]"±/aÙ&Eã4ú9Jé_ÞåëdãöKë)AÞ                  ¯¹ægƒÛowÐø^d™ý½ßB7áyMä9ÜÖUã
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
<html>

Rac           @   s   d  Z  d d l Z d d l Z d d l Z d d l Z d e f d     YZ d e f d     YZ e e j  e _ e e j	  e _	 d   Z
 d   Z d d	  Z e d
 k r e j e    n  d S(   s*   
gyptest.py -- test runner for GYP tests.
iNt   CommandRunnerc           B   sk   e  Z d  Z e Z e Z i  d  Z d   Z d d  Z	 d d d  Z
 d d d  Z d d d d  Z RS(   sZ   
  Executor class for commands, including "commands" implemented by
  Python functions.
  c         C   s   |  j  |  d  S(   N(   t   subst_dictionary(   t   selft
   dictionary(    (    s_   /opt/alt/alt-nodejs6/root/usr/lib/node_modules/npm/node_modules.bundled/node-gyp/gyp/gyptest.pyt   __init__   s    c         C   s   | |  _  d  S(   N(   t   _subst_dictionary(   R   R   (    (    s_   /opt/alt/alt-nodejs6/root/usr/lib/node_modules/npm/node_modules.bundled/node-gyp/gyp/gyptest.pyR      s    c         C   sG   | d k r |  j } n  | rC y | | } WqC t k
 r? qC Xn  | S(   sC  
    Substitutes (via the format operator) the values in the specified
    dictionary into the specified command.

    The command can be an (action, string) tuple.  In all cases, we
    perform substitution on strings and don't worry if something isn't
    a string.  (It's probably a Python function to be executed.)
    N(   t   NoneR   t	   TypeError(   R   t   stringR   (    (    s_   /opt/alt/alt-nodejs6/root/usr/lib/node_modules/npm/node_modules.bundled/node-gyp/gyp/gyptest.pyt   subst   s    	c         C   s   |  j  s d  St |  t d  k ra | d } | d } d | j d j t t |   f } n  t |  t g   k r d j |  } n |  j |  } | j d  s | d 7} n  t j	 j
 |  t j	 j   d  S(   Ni    i   s   %s(%s)s   , t    s   
(    (   t   verboset   typet   __name__t   joint   mapt   reprR	   t   endswitht   syst   stdoutt   writet   flush(   R   t   commandR   t   stderrt   funct   argst   s(    (    s_   /opt/alt/alt-nodejs6/root/usr/lib/node_modules/npm/node_modules.bundled/node-gyp/gyp/gyptest.pyt   display0   s    	

(c   
      C   s  |  j  s d St |  t d  k rs |  j |  } t j |  } | d d k rs t j f t | d  } qs n  t |  t d
  k r | d } | d } | |   S| t j	 k r d	 } n	 t j } | t j k r d	 } n! | d	 k r t j } n	 t j } t j | d t j d k d | d | }	 |	 j   | d	 k rX|	 j	 j   |  _	 n( | t j	 k	 r| j |	 j	 j    n  | d	 t j f k r| j |	 j j    n  |	 j Sd	 S(   s$   
    Executes a single command.
    i    t    t   cdi   t   shellt   win32R   R   N(    (   t   activeR   R	   t   shlext   splitt   ost   chdirt   tupleR   R   R   t
   subprocesst   PIPER   t   STDOUTt   Popent   platformt   waitt   readR   t
   returncode(
   R   R   R   R   t   cmdargsR   R   t   suboutt   suberrt   p(    (    s_   /opt/alt/alt-nodejs6/root/usr/lib/node_modules/npm/node_modules.bundled/node-gyp/gyp/gyptest.pyt   executeB   s>    	 


					
c         C   s5   | d k r | } n  |  j |  |  j | | |  S(   s5   
    Runs a single command, displaying it first.
    N(   R   R   R2   (   R   R   R   R   R   (    (    s_   /opt/alt/alt-nodejs6/root/usr/lib/node_modules/npm/node_modules.bundled/node-gyp/gyp/gyptest.pyt   runn   s    	N(   R   t
   __module__t   __doc__t   TrueR   R    R   R   R   R	   R   R2   R3   (    (    (    s_   /opt/alt/alt-nodejs6/root/usr/lib/node_modules/npm/node_modules.bundled/node-gyp/gyp/gyptest.pyR       s   	,t
   Unbufferedc           B   s#   e  Z d    Z d   Z d   Z RS(   c         C   s   | |  _  d  S(   N(   t   fp(   R   R8   (    (    s_   /opt/alt/alt-nodejs6/root/usr/lib/node_modules/npm/node_modules.bundled/node-gyp/gyp/gyptest.pyR   y   s    c         C   s!   |  j  j |  |  j  j   d  S(   N(   R8   R   R   (   R   t   arg(    (    s_   /opt/alt/alt-nodejs6/root/usr/lib/node_modules/npm/node_modules.bundled/node-gyp/gyp/gyptest.pyR   {   s    c         C   s   t  |  j |  S(   N(   t   getattrR8   (   R   t   attr(    (    s_   /opt/alt/alt-nodejs6/root/usr/lib/node_modules/npm/node_modules.bundled/node-gyp/gyp/gyptest.pyt   __getattr__~   s    (   R   R4   R   R   R<   (    (    (    s_   /opt/alt/alt-nodejs6/root/usr/lib/node_modules/npm/node_modules.bundled/node-gyp/gyp/gyptest.pyR7   x   s   		c         C   s   |  j  d  o |  j d  S(   Nt   gyptests   .py(   t
   startswithR   (   t   f(    (    s_   /opt/alt/alt-nodejs6/root/usr/lib/node_modules/npm/node_modules.bundled/node-gyp/gyp/gyptest.pyt   is_test_name   s    c         C   s   g  } xw t  j |   D]f \ } } } d | k rA | j d  n  | j g  | D]' } t |  rN t  j j | |  ^ qN  q W| j   | S(   Ns   .svn(   R#   t   walkt   removet   extendR@   t   pathR   t   sort(   t	   directoryt   resultt   roott   dirst   filesR?   (    (    s_   /opt/alt/alt-nodejs6/root/usr/lib/node_modules/npm/node_modules.bundled/node-gyp/gyp/gyptest.pyt   find_all_gyptest_files   s    ?
c      	   C   s<  |  d  k r t j }  n  d } t j d |  } | j d d d d d d | j d	 d
 d d d d  d d | j d d d d d d d d | j d d d d d g  d d | j d d d d d d | j d d d d d d | j d d d d d | j d d d d g  d d | j d  d! d d d d" | j |  d#  \ } } | j rst j | j  n  | j	 rg  | j	 D] } t j	 j
 |  ^ q} t j j |  } | t j t j d$ t j d$ <n  | s| j st j j d%  d# Sd& g } n  g  } x | D] } t j	 j |  rN| j t t j	 j |    qt t j	 j |   st j | Id' IJt j d#  n  | j |  qW| j rx | D] }	 |	 GHqWt j d(  n  | j t _ | j t _ t   }
 t j	 j
 d)  t j d* <| j s,t j j d+ t j d*  n  g  } g  } g  } | j  r\| j  j! d,  } ny i	 d- g d. 6d- g d/ 6d- g d0 6d- g d1 6d2 g d3 6d2 d4 g d5 6d- d4 g d6 6d- d4 g d7 6d- d4 d8 d9 g d: 6t j" } x
| D]} | t j d; <| j st j j d< |  n  g  } x! | j# D] } | d | g 7} qW| r`| j r`t j j d= |  n  x{ | D]s }	 |
 j$ t j% |	 g | d> t j d? t j } | d@ k r| j |	  qg| r| j |	  qg| j |	  qgWqW| j s*dA   } | j& r| dB |  n  | dC |  | dD |  n  | r4d# Sd( Sd  S(E   Ns+   gyptest.py [-ahlnq] [-f formats] [test ...]t   usages   -as   --allt   actiont
   store_truet   helps   run all testss   -Cs   --chdirt   storet   defaults    chdir to the specified directorys   -fs   --formatR   s$   run tests with the specified formatss   -Gs   --gyp_optiont   appends&   Add -G options to the gyp command lines   -ls   --lists   list available tests and exits   -ns	   --no-execs'   no execute, just print the command lines   --passeds   report passed testss   --paths   additional $PATH directorys   -qs   --quiets%   quiet, don't print test command linesi   t   PATHs   Specify -a to get all tests.
t   tests   is not a valid gyp test name.i    s   test/libt
   PYTHONPATHs   PYTHONPATH=%s
t   ,t   maket   aix5t   freebsd7t   freebsd8t   openbsd5t   msvst   cygwint   ninjaR   t   linux2t   linux3t   xcodes   xcode-ninjat   darwint   TESTGYP_FORMATs   TESTGYP_FORMAT=%s
s   Extra Gyp options: %s
R   R   i   c         S   s}   | ry t  |  d k r/ t j j d |   n& d } t j j | |  t  |  f  t j j d d j |  d  n  d  S(   Ni   s   
%s the following test:
s   
%s the following %d tests:
s   	s   
	s   
(   t   lenR   R   R   R   (   t   descriptiont   testst   fmt(    (    s_   /opt/alt/alt-nodejs6/root/usr/lib/node_modules/npm/node_modules.bundled/node-gyp/gyp/gyptest.pyt   report   s     t   Passedt   Faileds   No result from('   R   R   t   argvt   optparset   OptionParsert
   add_optiont
   parse_argsR$   R#   RD   t   abspatht   pathsepR   t   environt   allR   R   t   isdirRC   RK   t   normpathR@   t   basenamet   exitRR   t   listt   quietR    R   t   no_execR    R   t   formatR"   R*   t
   gyp_optionR3   t
   executablet   passed(   Rk   RL   t   parsert   optsR   R1   t
   extra_pathRf   R9   RT   t   crR~   t   failedt	   no_resultt   format_listR{   t   gyp_optionst   optiont   statusRh   (    (    s_   /opt/alt/alt-nodejs6/root/usr/lib/node_modules/npm/node_modules.bundled/node-gyp/gyp/gyptest.pyt   main   s    		("	"					





						t   __main__(   R5   R#   Rl   R&   R   t   objectR    R7   R   R   R@   RK   R   R   R   Rw   (    (    (    s_   /opt/alt/alt-nodejs6/root/usr/lib/node_modules/npm/node_modules.bundled/node-gyp/gyp/gyptest.pyt   <module>	   s   h			
~