
    ugg                         d dl Z d dlmZmZ d dlmZ d dlmZ d dlm	Z	m
Z
 d dl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dede	ee
f   ddfdZy)    N)DEFAULT_DATABASEDEFAULT_TENANT)ClientFactories)	GetResult)DictAnyclient_factoriesreturnc                    | j                         }|j                          | j                         }|j                  d       |j	                  t
        d       |j                  dddi       |j	                  t
        t               |j                  ddt        i       |j                         }t        |      dk(  sJ |d   dk(  sJ |j                  |d         }|j                  dt        ik(  sJ |j	                  t
        d       |j                         }t        |      dk(  sJ |j                  |d         }|j                  ddik(  sJ |j	                  t
        t               |j                  |j                         d         }|j                  ddi       |j	                  t
        d       |j                  |j                         d         }|j                  dd	i       |j	                  t
        t               |j                         }t        |      dk(  sJ |j                  |d         }|j                  ddik(  sJ |j	                  t
        d       |j                         }t        |      dk(  sJ |j                  |d         }|j                  dd	ik(  sJ |j	                  t
        t               |j                  d       |j                         }t        |      dk(  sJ |j	                  t
        d       |j                         }t        |      dk(  sJ |j                  d       |j                         }t        |      dk(  sJ y )
Ntest_dbtenantdatabase
collectionr   )metadata   r   default2test_db2)create_clientresetcreate_admin_client_from_systemcreate_database
set_tenantr   create_collectionr   list_collectionslenget_collectionr   modifydelete_collection)r	   clientadmin_clientcollectionsr   s        ^/var/www/openai/venv/lib/python3.12/site-packages/chromadb/test/client/test_database_tenant.py test_database_tenant_collectionsr$   	   sU   ++-F
LLN#CCEL  + ^i@
\Z4KL ^6FG
\ZAQ4RS ))+K{q   q>\)))&&{1~6J:/?"@@@@ ^i@))+K{q   &&{1~6J:y"9999 ^6FG&&v'>'>'@'CDJ
J78
^i@&&v'>'>'@'CDJ
J78 ^6FG))+K{q   &&{1~6J:z"::::
^i@))+K{q   &&{1~6J:z":::: ^6FG
\*))+K{q   
^i@))+K{q   
\*))+K{q       c                    | j                         }|j                          | j                         }|j                  d       |j	                  d       |j                  d      }|j	                  t               |j                  d      }g dt        d      D cg c]  }g d c}g dd}g d	t        d      D cg c]  }g d
 c}g d	d} |j                  di |  |j                  di | |j                  ddg      }|d   |d   k(  sJ t        ||       |d   |d   k(  sJ |j                  ddg      }|d   |d   k(  sJ t        ||       |d   |d   k(  sJ y c c}w c c}w )Nr   )r   collection_newcollection_defaultabc   g      ?g       @g      @ids
embeddings	documentsr,   deg      @g      @g      @r1   r2   includer0   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_addrG   L   s   ++-F
LLN $CCEL  + +''(89H !12++,@AL 05a919$K 05a919$O HLL; L'' ,,k:,
;Cu:U++++k2{{;7777


L+#>

?Cu:////o6{{;;;;3 : :s   E-?E2c                 X   | j                         }|j                          | j                         }|j                  d       |j                  d       |j	                  dd       |j	                  dd       |j                  dd       |j                  d      }|j                  dd       |j                  d      }g dt        d      D cg c]  }g d	 c}g dd
}g dt        d      D cg c]  }g d c}g dd
} |j                  di |  |j                  di | |j                  ddg      }|d   |d   k(  sJ t        ||       |d   |d   k(  sJ |j                  ddg      }|d   |d   k(  sJ t        ||       |d   |d   k(  sJ y c c}w c c}w )Ntest_tenant1test_tenant2r   )r   r   r   r)   r-   r.   r/   r3   r6   r1   r2   r7   r0   r9   r<   )r   r   r   create_tenantr   r   r   r>   r?   r@   rA   )	r	   r    r!   coll_tenant1coll_tenant2rD   records_tenant1records_tenant2r:   s	            r#   test_tenant_collections_addrP   z   s   ++-F
LLN $CCEL~.~.  > B  > B ^i@++L9L
^i@++L9L 05a919$O 05a919$O L'' L'' 

L+#>

?Cu:////o6{{;;;;


L+#>

?Cu:////o6{{;;;;3 : :s   F"4F'c                 `   | j                         }|j                          | j                         }t        j                  t
              5  |j                  d       d d d        t        j                  t
              5  |j                  d       d d d        y # 1 sw Y   =xY w# 1 sw Y   y xY w)Nr*   )r   r   r   pytestraises	Exceptionr   rK   )r	   r    r!   s      r#   test_min_len_namerU      s~    ++-F
LLN $CCEL	y	!$$S) 
" 
y	!""3' 
"	!	 
"	! 
"	!s   
B=B$B!$B-r:   r;   c                 Z    | d   t        j                  | d   |d         sJ y |d   J y )Nr1   )nparray_equalr9   s     r#   rA   rA      s<    
<$~~c,/1FGGG|$,,,r%   )rR   chromadb.configr   r   chromadb.test.conftestr   chromadb.api.typesr   typingr   r   numpyrW   r$   rG   rP   rU   strrA   r<   r%   r#   <module>r_      s     < 2 (  @! @!4 @!F+<O +< +<\,</ ,<d ,<^( (D (-) -d38n - -r%   