
    ug                         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	 e j                  defd       Zdeddfd	Zdeddfd
ZdeddfdZdeddfdZy)    Nmaybe_set_tenant_and_databaseUserIdentity)DEFAULT_DATABASEDEFAULT_TENANT)ChromaAuthErrorreturnc                       t        dddg      S )Ntest_user_idtest_tenanttest_database)user_idtenant	databasesr        W/var/www/openai/venv/lib/python3.12/site-packages/chromadb/test/auth/test_auth_utils.pyuser_identityr   	   s    "# r   r   c                 D    t        | ddd      \  }}|dk(  sJ |dk(  sJ y )NFuser_provided_tenantuser_provided_databaser   4overwrite_singleton_tenant_database_access_from_authr   r   r   r   resolved_tenantresolved_databases      r   test_doesnt_overrite_from_authr      s>    )F#=B37	*&O& 4444 8888r   c                     t        | dt        t              \  }}|dk(  sJ |dk(  sJ t        | dd d       \  }}|dk(  sJ |dk(  sJ y )NTr   r   r   )r   r   r   r   s      r   ;test_sets_tenant_and_database_when_none_or_default_providedr       sy     *G#=A+/	*&O& m+++///)F#=A!#	*&O& m+++///r   c                 ~    t        j                  t              5  t        | ddd       d d d        y # 1 sw Y   y xY w)NTr   r   r   )pytestraisesr	   r   )r   s    r   Btest_errors_when_provided_tenant_and_database_dont_match_from_authr$   6   s0     
	'%'AE!7#;		
 
(	'	's   3<c                     d| _         dg| _        t        | dd d       \  }}|J |J t        | ddd      \  }}|dk(  sJ |dk(  sJ y )N*Tr   r   r   )r   r   r   r   s      r   -test_doesnt_overrite_from_auth_when_ambiguousr'   B   s    M"eM)F#=A!#	*&O& """$$$)F#=A37	*&O& 4444 8888r   )r"   chromadb.auth.utilsr   chromadb.authr   chromadb.configr   r   chromadb.errorsr	   fixturer   r   r    r$   r'   r   r   r   <module>r-      s     = & < + |  	9, 	94 	900	00	
	
		
9 9RV 9r   