o «Þh¯ ã@sÎddlZddlmmZddlZddlZddlm Z m Z m Z ddlm Z ddl m Z ejdd„ƒZGdd„dejƒZd d „Zd d „Zd d„Zdd„Zdd„Zdd„Zdd„Zdd„Zedkree ¡dSdS)éN)Úauthenticate_biolucidaÚthumbnail_by_image_idÚimage_info_by_image_id)Ú Biolucida)ÚappcCsdtjd<t ¡S)NTÚTESTING)rÚconfigÚ test_client©r r ú?/home/cmiss/Jenkins/workspace/SPARC-API/tests/test_biolucida.pyÚclient s r c@s4eZdZdd„Zdd„Zdd„Zdd„Zd d „Zd S) ÚBiolucidaTestCasecCs tƒ}tƒ| d| ¡¡dS)NÚ)rrÚassertNotEqualÚtoken)ÚselfÚblr r r Útest_authenticatesz#BiolucidaTestCase.test_authenticatecCs,tdƒ}| d|d¡| d|d¡dS)Né’ÚsuccessÚstatusZ115Z collection_id)rÚ assertEqual)rZ image_infor r r Útest_get_image_infosz%BiolucidaTestCase.test_get_image_infocCstdƒ}| | d¡¡dS)Nró/9j/4AAQSkZJRgABAQAAAQ)rÚ assertTrueÚ startswith)rÚ thumbnailr r r Útest_get_thumbnailsz$BiolucidaTestCase.test_get_thumbnailcCó,tƒ}| d¡tdƒ}| | d¡¡dS)NZ a20f155e818fbfebbb03275f30f87697rr©rÚ set_tokenrrr©rrrr r r Útest_old_token!ó z BiolucidaTestCase.test_old_tokencCr)NZ bad_tokenrrrr!r r r Útest_bad_token'r#z BiolucidaTestCase.test_bad_tokenN)Ú__name__Ú __module__Ú __qualname__rrrr"r$r r r r r s  r c Csh| d¡}d}|j}||v}|sDt d|fd||f¡t |¡dt ¡vs)t |¡r.t |¡ndt |¡dœ}dd|i}tt  |¡ƒ‚d}}}d }|j}||v}|s‰t d|fd||f¡t |¡dt ¡vsnt |¡rst |¡ndt |¡dœ}dd|i}tt  |¡ƒ‚d}}}|jd}d }||k}|s¿t d |fd ||f¡t |¡t |¡d œ}dd|i} tt  | ¡ƒ‚d}}}|jd}d }||k}|sõt d |fd ||f¡t |¡t |¡d œ}dd|i} tt  | ¡ƒ‚d}}}|jd}d}||k}|s,t d |fd ||f¡t |¡t |¡d œ}dd|i} tt  | ¡ƒ‚d}}}dS)Nz/image_xmp_info/2727Ú pixel_width©Úin©z,%(py1)s in %(py5)s {%(py5)s = %(py3)s.json }Úr©Úpy1Úpy3Úpy5úassert %(py7)sÚpy7Úchannel_coloursz0.415133©ú==©z%(py1)s == %(py4)s©r.Úpy4úassert %(py6)sÚpy6Ú pixel_heightÚ z_spacingú1.000000© ÚgetÚjsonÚ @pytest_arÚ_call_reprcompareÚ _safereprÚ @py_builtinsÚlocalsÚ_should_repr_global_nameÚAssertionErrorÚ_format_explanation© r r,Ú @py_assert0Ú @py_assert4Ú @py_assert2Ú @py_format6Ú @py_format8Ú @py_assert3Ú @py_format5Ú @py_format7r r r Útest_image_xmp_info_2727.ó ŠŠllrrRc CsÜ| d¡}d}|j}||v}|sDt d|fd||f¡t |¡dt ¡vs)t |¡r.t |¡ndt |¡dœ}dd|i}tt  |¡ƒ‚d}}}|jd}d }||k}|szt d |fd ||f¡t |¡t |¡d œ}d d|i} tt  | ¡ƒ‚d}}}|jd}d }||k}|s°t d |fd ||f¡t |¡t |¡d œ}d d|i} tt  | ¡ƒ‚d}}}|jd}d}||k}|sæt d |fd ||f¡t |¡t |¡d œ}d d|i} tt  | ¡ƒ‚d}}}dS)Nz/image_xmp_info/1197r(r)r+r,r-r1r2z0.008184r4r6r7r9r:r;r<r=r>rIr r r Útest_image_xmp_info_11978s ŠllprTc Csh| d¡}|j}d}||k}|sDt d|fd||f¡dt ¡vs%t |¡r*t |¡ndt |¡t |¡dœ}dd|i}tt  |¡ƒ‚d}}}d }|j }||v}|s‰t d |fd ||f¡t |¡dt ¡vsnt |¡rst |¡ndt |¡d œ}dd|i}tt  |¡ƒ‚d}}}|j d }d }||k}|s¿t d|fd||f¡t |¡t |¡dœ} dd| i} tt  | ¡ƒ‚d}}}|j d}d }||k}|sõt d|fd||f¡t |¡t |¡dœ} dd| i} tt  | ¡ƒ‚d}}}|j d}d}||k}|s,t d|fd||f¡t |¡t |¡dœ} dd| i} tt  | ¡ƒ‚d}}}dS)Nz/image_xmp_info/850éÈr4©z3%(py2)s {%(py2)s = %(py0)s.status_code } == %(py5)sr,©Úpy0Úpy2r0r1r2r(r)r+r-z0.830266r6r7r9r:r;r<r=© r?Ú status_coderArBrDrErFrCrGrHr@© r r,Ú @py_assert1rKrOrMrNrJrLrPrQr r r Útest_image_xmp_info_850ArSr^cCó˜| d¡}|j}d}||k}|sDt d|fd||f¡dt ¡vs%t |¡r*t |¡ndt |¡t |¡dœ}dd|i}tt  |¡ƒ‚d}}}dS) Nz/image_xmp_info/XYZér4rVr,rWr1r2© r?r[rArBrDrErFrCrGrH©r r,r]rKrOrMrNr r r Ú$test_image_xmp_info_invalid_image_idKó Žrcc CsŽ| d¡}|j}d}||k}|sDt d|fd||f¡dt ¡vs%t |¡r*t |¡ndt |¡t |¡dœ}dd|i}tt  |¡ƒ‚d}}}d }|j }||v}|s‰t d |fd ||f¡t |¡dt ¡vsnt |¡rst |¡ndt |¡d œ}dd|i}tt  |¡ƒ‚d}}}|j d }d }||k}|s¿t d|fd||f¡t |¡t |¡dœ} dd| i} tt  | ¡ƒ‚d}}}dS)Nz/image_blv_link/849rUr4rVr,rWr1r2Úlinkr)r+r-z-https://sparc.biolucida.net:443/link?l=jpmqiXr6r7r9r:rZr\r r r Útest_image_blv_link_849Qs ŠŠprfcCr_) Nz/image_blv_link/XYZr`r4rVr,rWr1r2rarbr r r Ú$test_image_blv_link_invalid_image_idYrdrgc Csp| d¡}d}|j}||v}|sDt d|fd||f¡t |¡dt ¡vs)t |¡r.t |¡ndt |¡dœ}dd|i}tt  |¡ƒ‚d}}}|jd }d }||k}|szt d |fd ||f¡t |¡t |¡d œ}dd|i} tt  | ¡ƒ‚d}}}|jd}d}||k}|s°t d |fd ||f¡t |¡t |¡d œ}dd|i} tt  | ¡ƒ‚d}}}dS)Nz/image_search/77Zdataset_imagesr)r+r,r-r1r2Zdiscover_dataset_idZ77r4r6r7r9r:rrr>rIr r r Útest_image_search_dataset_77_s ŠlprhcCsz| d¡}|jd}d}||k}|s5t d|fd||f¡t |¡t |¡dœ}dd|i}tt |¡ƒ‚d}}}dS) Nz/image_search/292rÚfailurer4r6r7r9r:)r?r@rArBrCrGrH)r r,rJrOrLrPrQr r r Útest_image_search_dataset_292fs prjÚ__main__)ÚbuiltinsrDÚ_pytest.assertion.rewriteÚ assertionÚrewriterAÚpytestÚunittestZapp.mainrrrrrÚfixturer ÚTestCaser rRrTr^rcrfrgrhrjr%Úmainr r r r Ús&"       ÿ