<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"
        integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.3.0/css/all.min.css"
        integrity="sha512-SzlrxWUlpfuzQ+pcUCosxcglQRNAq/DZjVsC0lE40xsADsfeQoEypE+enwcOiGjk/bSuGGKHEyjSoQ1zVisanQ=="
        crossorigin="anonymous" referrerpolicy="no-referrer" />
</head>
</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.
iÿÿÿÿNt   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			
~