
    tni                        d dl Z d dlZd dlmZmZ d dlmZmZ d dlm	Z	  e	            Z
 e            Zdeeef         fdZe                    d          ded	efd
            Ze                    d          dded	edefd            Ze                    d          deded	efd            Ze                    d          ded	efd            Zedk    r ej        edd           dS dS )    N)FastAPIRequest)DictAny)Fakerreturnc                      t                                           } t                                           t                                           | dS )N)idinput
mock_delay)fakerandom_digit_above_twouuid4sentence)delays    f/var/www/html/gpu-tools/venv/lib/python3.11/site-packages/tests/test_serverless/local_sim/localhost.pygenerate_fake_jobr      s;    ''))Ejjll      z&/v2/{endpoint_id}/job-take/{worker_id}endpoint_id	worker_idc                 "   K   t                      S )z9Accept GET request and return a random fake job as a dictr   r   r   s     r   job_taker      s       r   z,/v2/{endpoint_id}/job-take-batch/{worker_id}   
batch_sizec                 ^   K   d t          t          j        d|                    D             S )z8Accept GET request and return a random fake list of jobsc                 *    g | ]}t                      S  r   ).0_s     r   
<listcomp>z"job_take_batch.<locals>.<listcomp>   s    NNNANNNr      )rangerandomrandint)r   r   r   s      r   job_take_batchr'      s1       ONv~a/L/L)M)MNNNNr   z&/v2/{endpoint_id}/job-done/{worker_id}requestc                 >   K   |                                   d{V }|S )z1Accept POST request and return the payload postedN)json)r(   r   r   payloads       r   job_doner,   !   s,       LLNN""""""GNr   z"/v2/{endpoint_id}/ping/{worker_id}c                    K   ddiS )zFAccept GET request and return ping response with extracted path valuesstatuspongr   r   s     r   ping_workerr0   (   s       fr   __main__z0.0.0.0i  )hostport)r   )r%   uvicornfastapir   r   typingr   r   fakerr   r   appstrr   getr   intr'   postr,   r0   __name__runr   r   r   <module>r?      s     $ $ $ $ $ $ $ $               uwwgii4S>     	122     32
 	788O Oc Oc Os O O O 98O
 
233G # #    43 	-..3 3    /.
 z GK)$////// r   