
    dafs                         d dl Z d dlZd dlZd dlmZ d dlmZ d dlmZm	Z	 ddl
mZ  G d d      Z G d	 d
e      Z G d de j                        Zy)    N)	os_helper)	resources)TraversableResourcesResourceReader   )utilc                   "    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     D/root/Python-3.12.4/Lib/test/test_importlib/resources/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                     | j                   j                  t        j                               }t	        t        |            }t        j                  |      }t        j                  |      }||u sJ y r   )
r*   enter_contextr   temp_dirr
   r   r   create_package_from_loaderr   r"   )r   r0   loaderpkgr"   s        r   test_custom_loaderz2CustomTraversableResourcesTests.test_custom_loader)   sZ    ==..y/A/A/CDnX67--f5$   r   N)r   r   r   r-   r4   r   r   r   r&   r&   $   s    -!r   r&   )unittestr(   r#   test.supportr   	importlibr   importlib.resources.abcr   r    r   r
   r   TestCaser&   r   r   r   <module>r;      sC       "  H 	 		) 	
!h&7&7 
!r   