
    3i                         S SK r S SKJrJr  S SKJr  S SKJr  S SKJ	r	  S SK
JrJr  S SKrS\SS4S	 jrS\SS4S
 jrS\SS4S jrS\SS4S jrS\	S\\\4   SS4S jrg)    N)DEFAULT_DATABASEDEFAULT_TENANT)ClientFactories)InvalidArgumentError)	GetResult)DictAnyclient_factoriesreturnc                    U R                  5       nUR                  5         U R                  5       nUR                  S5        UR	                  [
        SS9  UR                  SSS0S9  UR	                  [
        [        S9  UR                  SS[        0S9  UR                  5       n[        U5      S:X  d   eUS   R                  S:X  d   eUR                  US   R                  5      nUR                  S[        0:X  d   eUR	                  [
        SS9  UR                  5       n[        U5      S:X  d   eUS   R                  SS0:X  d   eUR	                  [
        [        S9  UR                  5       S   R                  SS0S9  UR	                  [
        SS9  UR                  5       S   R                  SS	0S9  UR	                  [
        [        S9  UR                  5       n[        U5      S:X  d   eUS   R                  SS0:X  d   eUR	                  [
        SS9  UR                  5       n[        U5      S:X  d   eUS   R                  SS	0:X  d   eUR	                  [
        [        S9  UR                  S5        UR                  5       n[        U5      S:X  d   eUR	                  [
        SS9  UR                  5       n[        U5      S:X  d   eUR                  S5        UR                  5       n[        U5      S:X  d   eg )
Ntest_dbtenantdatabase
collectionr   )metadata   r   default2test_db2)create_client_from_systemresetcreate_admin_client_from_systemcreate_database
set_tenantr   create_collectionr   list_collectionslennameget_collectionr   modifydelete_collection)r
   clientadmin_clientcollectionsr   s        c/home/james-whalen/.local/lib/python3.13/site-packages/chromadb/test/client/test_database_tenant.py test_database_tenant_collectionsr&   
   s   779F
LLN#CCEL  + ^i@
\Z4KL ^6FG
\ZAQ4RS ))+K{q   q>,...&&{1~':':;J:/?"@@@@ ^i@))+K{q   q>""z9&==== ^6FG
a ''*j1I'J
^i@
a ''*j1I'J ^6FG))+K{q   q>""z:&>>>>
^i@))+K{q   q>""z:&>>>> ^6FG
\*))+K{q   
^i@))+K{q   
\*))+K{q       c                    U R                  5       nUR                  5         U R                  5       nUR                  S5        UR	                  SS9  UR                  S5      nUR	                  [        S9  UR                  S5      n/ SQ[        S5       Vs/ s H  n/ SQPM	     sn/ SQS.n/ S	Q[        S5       Vs/ s H  n/ S
QPM	     sn/ S	QS.nUR                  " S0 UD6  UR                  " S0 UD6  UR                  SS/S9nUS   US   :X  d   e[        XS9  US   US   :X  d   eUR                  SS/S9nUS   US   :X  d   e[        XS9  US   US   :X  d   eg s  snf s  snf )Nr   )r   collection_newcollection_defaultabc   g      ?g       @g      @ids
embeddings	documentsr.   deg      @g      @g      @r3   r4   includer2   resrecords )r   r   r   r   set_databaser   r   rangeaddgetcheck_embeddings)	r
   r"   r#   coll_newcoll_default_records_newrecords_defaultr<   s	            r%   test_database_collections_addrI   H   s   779F
LLN $CCEL  + +''(89H !12++,@AL 05a919$K 05a919$O LL; '' ,,k:,
;Cu:U++++2{{;7777


L+#>

?Cu:////6{{;;;;3 : :s   E#<E(c                 8   U R                  5       nUR                  5         U R                  5       nUR                  S5        UR                  S5        UR	                  SSS9  UR	                  SSS9  UR                  SSS9  UR                  S5      nUR                  SSS9  UR                  S5      n/ SQ[        S5       Vs/ s H  n/ S	QPM	     sn/ SQS
.n/ SQ[        S5       Vs/ s H  n/ SQPM	     sn/ SQS
.nUR                  " S0 UD6  UR                  " S0 UD6  UR                  SS/S9nUS   US   :X  d   e[        XS9  US   US   :X  d   eUR                  SS/S9nUS   US   :X  d   e[        XS9  US   US   :X  d   eg s  snf s  snf )Ntest_tenant1test_tenant2r   )r   r   r   r+   r/   r0   r1   r5   r8   r3   r4   r9   r2   r;   r>   )r   r   r   create_tenantr   r   r   r@   rA   rB   rC   )	r
   r"   r#   coll_tenant1coll_tenant2rF   records_tenant1records_tenant2r<   s	            r%   test_tenant_collections_addrR   v   s   779F
LLN $CCEL~.~.  > B  > B ^i@++L9L
^i@++L9L 05a919$O 05a919$O '' '' 

L+#>

?Cu:////6{{;;;;


L+#>

?Cu:////6{{;;;;3 : :s   F+Fc                    U R                  5       nUR                  5         U R                  5       n[        R                  " [
        [        45         UR                  S5        S S S 5        [        R                  " [
        [        45         UR                  S5        S S S 5        g ! , (       d  f       NI= f! , (       d  f       g = f)Nr,   )	r   r   r   pytestraises	Exceptionr   r   rM   )r
   r"   r#   s      r%   test_min_len_namerW      s    779F
LLN $CCEL		#78	9$$S) 
: 
	#78	9""3' 
:	9	 
:	9 
:	9s   B&B7&
B47
Cr<   r=   c                 j    U S   b%  [         R                  " U S   US   5      (       d   eg US   b   eg )Nr3   )nparray_equalr;   s     r%   rC   rC      s?    
<$~~c,/1FGGGG|$,,,r'   )rT   chromadb.configr   r   chromadb.test.conftestr   chromadb.errorsr   chromadb.api.typesr   typingr   r	   numpyrY   r&   rI   rR   rW   strrC   r>   r'   r%   <module>rb      s     < 2 0 (  ;! ;!4 ;!|+<O +< +<\,</ ,<d ,<^( (D (-) -d38n - -r'   