
    Cad1                     L    d dl mZ d dlmZ d Z G d dej
                        Zy)    )dispatch)utilsc                      | j                   dk(  S Nt2nameepargskwdss      ?/usr/lib/python3/dist-packages/stevedore/tests/test_dispatch.pycheck_dispatchr      s    77d?    c                   0    e Zd Zd Zd Zd Zd Zd Zd Zy)TestDispatchc                      | j                   dk(  S r   r   r
   s      r   r   zTestDispatch.check_dispatch   s    ww$r   c                 \   d }t        j                  dd ddddi      }| j                  t        |j                        d	       | j                  t        |j                               t        d
dg             |j                  t        |dd      }ddddifg}| j                  ||       y )Nc                      | j                   ||fS Nr   r
   s      r   invokez*TestDispatch.test_dispatch.<locals>.invoke       GGT4((r   stevedore.test.extensionc                       yNT r   r   s     r   <lambda>z,TestDispatch.test_dispatch.<locals>.<lambda>       r   TabBinvoke_on_loadinvoke_argsinvoke_kwds   t1r   firstnamed valuenamedr*   r-   )	r   DispatchExtensionManagerassertEquallen
extensionssetnamesmapr   selfr   emresultsexpecteds        r   test_dispatchzTestDispatch.test_dispatch   s    	) ../I/I>B;A<?:	1 	R]]+Q/RXXZ#tTl*;<&& ,  
 :'?@A(+r   c                     t        j                  dd ddddi      }|j                  t        dd	      }| j	                  |dddid	fg       y )
Nr   c                       yr   r   r   s     r   r   z7TestDispatch.test_dispatch_map_method.<locals>.<lambda>1   r   r   Tr    r"   r#   r$   get_args_and_datar*   )r   r/   
map_methodr   r0   r7   r8   r9   s      r   test_dispatch_map_methodz%TestDispatch.test_dispatch_map_method/   sX    ../I/I>B;A<?:	1 --0CWMFS#J#@"ABr   c                 V   d }t        j                  dd ddddi      }| j                  t        |j                        d	       | j                  t        |j                               t        d
dg             |j                  dg|dd      }ddddifg}| j                  ||       y )Nc                      | j                   ||fS r   r   r
   s      r   r   z/TestDispatch.test_name_dispatch.<locals>.invoke<   r   r   r   c                       yr   r   r   s     r   r   z1TestDispatch.test_name_dispatch.<locals>.<lambda>@   r   r   Tr    r"   r#   r$   r(   r)   r   r*   r+   r,   r.   r-   )r   NameDispatchExtensionManagerr0   r1   r2   r3   r4   r5   r6   s        r   test_name_dispatchzTestDispatch.test_name_dispatch:   s    	) 223M3MBF?E@CSz	5 	R]]+Q/RXXZ#tTl*;<&&$&G:'?@A(+r   c                     d }t        j                  dd ddddi      }|j                  d	d
g|dd      }d
dddifg}| j                  ||       y )Nc                      | j                   ||fS r   r   r
   s      r   r   z>TestDispatch.test_name_dispatch_ignore_missing.<locals>.invokeN   r   r   r   c                       yr   r   r   s     r   r   z@TestDispatch.test_name_dispatch_ignore_missing.<locals>.<lambda>S   r   r   Tr    r"   r#   r$   t3r)   r*   r+   r,   r.   r-   )r   rE   r5   r0   r6   s        r   !test_name_dispatch_ignore_missingz.TestDispatch.test_name_dispatch_ignore_missingL   sl    	) 22&&c

 &&$vwm&M:'?@A(+r   c                     t        j                  dd ddddi      }|j                  dd	gd
d      }| j                  |dddidfg       y )Nr   c                       yr   r   r   s     r   r   z<TestDispatch.test_name_dispatch_map_method.<locals>.<lambda>`   r   r   Tr    r"   r#   r$   rJ   r)   r>   r*   )r   rE   r?   r0   r@   s      r   test_name_dispatch_map_methodz*TestDispatch.test_name_dispatch_map_method]   s\    22&&c

 --t.A7KFS#J#@"ABr   N)	__name__
__module____qualname__r   r;   rA   rF   rK   rN   r   r   r   r   r      s"    ,,	C,$,"
Cr   r   N)	stevedorer   stevedore.testsr   r   TestCaser   r   r   r   <module>rU      s&     !RC5>> RCr   