o
    j                     @   sX   d Z ddlmZ ddlmZ G dd dejZG dd dejZedkr*e  d	S d	S )
zTests for the trace module.    )	testutils)tracec                   @   sl   e Zd Zdd Zdd Zdd Zdd Zd	d
 Zdd Zdd Z	dd Z
dd Zdd Zdd Zdd ZdS )FireTraceTestc                 C   s$   t d}| | | |j d S )N
   )r   	FireTraceZassertIsNotNoneelementsselft r   P/var/www/html/Deteccion_Ine/venv/lib/python3.10/site-packages/fire/trace_test.pytestFireTraceInitialization   s   

z)FireTraceTest.testFireTraceInitializationc                 C   s@   t d}| | d |ddd dd | | d d S )Nstartr
   final
example.pyr   )r   r   assertEqualZ	GetResultAddAccessedPropertyr   r   r   r   testFireTraceGetResult   s   
z$FireTraceTest.testFireTraceGetResultc                 C   s\   t d}| |  |ddd dd | |  |tddg | |  d S )Nr   r
   r   r   r   example errorarg)r   r   assertFalseHasErrorr   ZAddError
ValueError
assertTruer   r   r   r   testFireTraceHasError"   s   
z#FireTraceTest.testFireTraceHasErrorc                 C   s4   t d}d}|dd|dd | t|d d S )Ninitial objectexampleargsznew componentprop	sample.py   z?1. Initial component
2. Accessed property "prop" (sample.py:12))r   r   r   r   strr	   r
   r   r   r   r   testAddAccessedProperty*   s   
z%FireTraceTest.testAddAccessedPropertyc              	   C   <   t d}d}|jdd|dddt jd | t|d	 d S )
Nr   r   resultcellr    r   Factionz=1. Initial component
2. Called callable "cell" (sample.py:10))r   r   AddCalledComponentZCALLED_CALLABLEr   r"   r#   r   r   r   testAddCalledCallable2      
z#FireTraceTest.testAddCalledCallablec              	   C   r%   )
Nr   r   r&   runr    r!   Fr(   z;1. Initial component
2. Called routine "run" (sample.py:12))r   r   r*   CALLED_ROUTINEr   r"   r#   r   r   r   testAddCalledRoutine;   r,   z"FireTraceTest.testAddCalledRoutinec              	   C   s@   t d}d}|jdd|dddt jd d	}| t|| d S )
Nr   r   Z	Classname	classnamer    r!   Fr(   zE1. Initial component
2. Instantiated class "classname" (sample.py:12))r   r   r*   ZINSTANTIATED_CLASSr   r"   )r	   r
   r   targetr   r   r   testAddInstantiatedClassD   s   
z&FireTraceTest.testAddInstantiatedClassc                 C   s(   t d}|d | t|d d S )Nr   z%This is the completion script string.z31. Initial component
2. Generated completion script)r   r   ZAddCompletionScriptr   r"   r   r   r   r   testAddCompletionScriptN   s   

z%FireTraceTest.testAddCompletionScriptc                 C   s&   t d}|  | t|d d S )Nr   z01. Initial component
2. Entered interactive mode)r   r   ZAddInteractiveModer   r"   r   r   r   r   testAddInteractiveModeU   s   
z$FireTraceTest.testAddInteractiveModec              	   C   <   t d}d}|jdd|dddt jd | | d	 d S )
Nr   r   r&   r-   r    r!   Fr(   zexample argsr   r   r*   r.   r   Z
GetCommandr#   r   r   r   testGetCommand\      
zFireTraceTest.testGetCommandc              	   C   r5   )
Nr   )r   z
spaced argr&   r-   r    r!   Fr(   zexample 'spaced arg'r6   r#   r   r   r   testGetCommandWithQuotesc   r8   z&FireTraceTest.testGetCommandWithQuotesc              	   C   r5   )
Nr   )z--example=spaced argr&   r-   r    r!   Fr(   z--example='spaced arg'r6   r#   r   r   r   testGetCommandWithFlagQuotesj   r8   z*FireTraceTest.testGetCommandWithFlagQuotesN)__name__
__module____qualname__r   r   r   r$   r+   r/   r2   r3   r4   r7   r9   r:   r   r   r   r   r      s    		
r   c                   @   s,   e Zd Zdd Zdd Zdd Zdd Zd	S )
FireTraceElementTestc                 C   s8   t  }| |  t jtdd}| |  d S )Nr   )error)r   FireTraceElementr   r   r   r   r	   elr   r   r   testFireTraceElementHasErrort   s   z1FireTraceElementTest.testFireTraceElementHasErrorc                 C   s"   t jddd}| t|d d S )NExamplezFake action)	componentr)   r   r@   r   r"   rA   r   r   r   &testFireTraceElementAsStringNoMetadata{   s
   z;FireTraceElementTest.testFireTraceElementAsStringNoMetadatac                 C   s$   t jdddd}| t|d d S )NrD   Created toyBeaker)rE   r)   r1   zCreated toy "Beaker"rF   rA   r   r   r   &testFireTraceElementAsStringWithTarget   s   z;FireTraceElementTest.testFireTraceElementAsStringWithTargetc                 C   s(   t jdddddd}| t|d d S )NrD   rH   rI   z	beaker.pyr   )rE   r)   r1   filenamelinenoz#Created toy "Beaker" (beaker.py:10)rF   rA   r   r   r   /testFireTraceElementAsStringWithTargetAndLineNo   s   zDFireTraceElementTest.testFireTraceElementAsStringWithTargetAndLineNoN)r;   r<   r=   rC   rG   rJ   rM   r   r   r   r   r>   r   s
    r>   __main__N)	__doc__firer   r   ZBaseTestCaser   r>   r;   mainr   r   r   r   <module>   s   ]#