
    @g                         d dl Z d dlZd dlZd dlZddlmZ ddlmZmZ ddlm	Z	 ddl
mZ  G d d	      Z G d
 de      Z G d dej                        Zy)    N   )abc)ResourceReaderTraversableResources   )util)	os_helperc                   "    e Zd ZdZdefdZd Zy)SimpleLoaderzA
    A simple loader that only implements a resource reader.
    readerc                     || _         y Nr   )selfr   s     Z/var/www/openai/venv/lib/python3.12/site-packages/importlib_resources/tests/test_custom.py__init__zSimpleLoader.__init__   s	        c                     | j                   S r   r   )r   packages     r   get_resource_readerz SimpleLoader.get_resource_reader   s    {{r   N)__name__
__module____qualname____doc__r   r   r    r   r   r   r      s    ~ r   r   c                   6    e Zd ZdZdej
                  fdZd Zy)MagicResourcesz2
    Magically returns the resources at path.
    pathc                     || _         y r   r   )r   r   s     r   r   zMagicResources.__init__   s	    	r   c                     | j                   S r   r    r   s    r   fileszMagicResources.files!   s    yyr   N)r   r   r   r   pathlibPathr   r#   r   r   r   r   r      s    W\\ r   r   c                       e Zd Zd Zd Zy)CustomTraversableResourcesTestsc                     t        j                         | _        | j                  | j                  j                         y r   )
contextlib	ExitStackfixtures
addCleanupcloser"   s    r   setUpz%CustomTraversableResourcesTests.setUp&   s(    ",,.++,r   c                 t   t        j                  | j                  j                  t	        j
                                     }t        t        |            }t        j                  |      }t        j                  |      }t        |t        j                        sJ t        |j!                               g k(  sJ y r   )r$   r%   r+   enter_contextr	   temp_dirr   r   r   create_package_from_loader	resourcesr#   
isinstancer   Traversablelistiterdir)r   r1   loaderpkgr#   s        r   test_custom_loaderz2CustomTraversableResourcesTests.test_custom_loader*   s    << ; ;I<N<N<P QRnX67--f5$%111EMMO$***r   N)r   r   r   r.   r:   r   r   r   r'   r'   %   s    -+r   r'   )r)   r$   unittestimportlib_resourcesr3    r   r   r   r   compat.py39r	   r   r   TestCaser'   r   r   r   <module>r@      sF       '  6  "	 		) 	+h&7&7 +r   