
    PIi
'                         d Z ddlZddlZddlmZ ddlmZ ddlmZm	Z	m
Z
 ddlmZ ddlmZ ddlmZ d	d
l d	d
l  G d de      Zedk(  rej/                          yy)z{
Unit tests for the Python Facebook Business SDK.

How to run:
    python -m facebook_business.test.integration_adcreative
    N)FacebookSession)FacebookRequestError)FacebookAdsApiFacebookRequestFacebookResponse)	AdAccount)
AdCreative)	AdPreview   )*c                   0    e Zd Zd Zd Zd Zd Zd Zd Zy)AdCreativeTestCasec                    t        j                  d      5 }t        j                  | j                  _        t        j                  dt        t        j                        z   dz   t        t        j                        z   dz   t        t        j                        z   dz   t        t        j                        z   dz   t        t        j                        z   dz   t        t        j                        z   dz   t        t        j                        z   dz   t        t        j                        z   dz   t        t        j                        z   dz   t        t        j                        z   dz   t        t        j                         z   dz   t        t        j                         z   dz   t        t        j"                        z   dz   t        t        j"                        z   dz   t        t        j$                        z   dz   t        t        j$                        z   dz   t        t        j&                        z   dz   t        t        j&                        z   dz   t        t        j(                        z   dz   t        t        j(                        z   dz   t        t        j*                        z   dz   t        t        j*                        z   dz   t        t        j,                        z   dz   t        t        j,                        z   dz   t        t        j.                        z   dz   t        t        j.                        z   dz         | j                  _        | j                  | j2                  _        t        j                  t        j                  t        j                  t        j                  t        j                  t        j                   t        j"                  t        j$                  t        j&                  t        j(                  t        j*                  t        j,                  t        j.                  g}i }t7        t        j8                        j;                  ||	      }| j=                  t?        |      d
       | jA                  tC        |t6                     | j=                  |t        j                     t        j                         | j=                  |t        j                     t        j                         | j=                  |t        j                     tE        jF                  t        j                        g       | j=                  |t        j                     t        j                         | j=                  |t        j                     t        j                         | j=                  |t        j"                     t        j"                         | j=                  |t        j$                     t        j$                         | j=                  |t        j&                     t        j&                         | j=                  |t        j(                     t        j(                         | j=                  |t        j*                     t        j*                         | j=                  |t        j,                     t        j,                         | j=                  |t        j.                     t        j.                         d d d        y # 1 sw Y   y xY w)NTrecord{"":"z","z":z,""}fieldsparamsr   )$warningscatch_warnings
StatusCodeSUCCESSmock_responsestatus_codestrencode	FieldName
ACCOUNT_ID	TestValueACTOR_IDADLABELSAD_LABELAPPLINK_TREATMENTAUTHORIZATION_CATEGORYAUTO_UPDATEBODYCALL_TO_ACTION_TYPECATEGORIZATION_CRITERIA
IMAGE_HASHTITLE
OBJECT_URLNAME_contentmock_requestreturn_valuer	   CREATIVE_IDapi_getassertEquallen
assertTrue
isinstancejsonloadsselfwarningr   r   creatives        {/var/www/webhook.estador.de/web/meta/bot/venv/lib/python3.12/site-packages/facebook_business/test/integration_adcreative.pytest_get_adcreativez&AdCreativeTestCase.test_get_adcreative)   s   $$D1 9	GW-7-?-?D**-**)../0278:=i>R>R:STW),,-.0568;I<N<N8OPS ),,-. 155 8;9;M;M7NOR )556	7 :?	? BEYE`E`Aa	be	
 )::;<
 ?DD
 GJ)JjJjFkl
o )//01 499 <?y?T?T;UVY )..)* -22 58	4GHK )7789 <AA DGyGdGdCefi	 );;<	= @E	E HK9KlKlGm	nq
 )../
0 38
8 ;>i>R>R:S
TW )//*+ .33 695IJM )../0 388 ;>i>R>R:STW )..)* -22 58	4GHK+D'$ .2-?-?D* $$""""++00%%--11$$$$F F!)"7"78@@ A H
 S\1-OOJx<=Xi&:&:;Y=Q=QRXi&8&899;M;MNXi&8&89DJJyGYGY<Z;[\Xi&A&ABID_D_`Xi&F&FGIiIijXinn5y~~FXi&C&CDiFcFcdXi&G&GH)JkJklXi&:&:;Y=Q=QRXioo6	HXi&:&:;Y=Q=QRXinn5y~~Fs9	G 9	G 9	Gs   [[<<\c                    t        j                  d      5 }t        j                  | j                  _        | j                  | j                  _        dg}i }| j                  t              5  t        t        j                        j                  ||      }d d d        | j                  t        |      d       | j!                  t#        |d   j$                  t&                     d d d        y # 1 sw Y   YxY w# 1 sw Y   y xY w)NTr   unexist_fieldr   r   r   )r   r   r   ERRORr   r   r1   r2   assertRaisesr   r	   r"   r3   r4   r5   r6   r7   
issubclasscategoryUserWarningr;   s        r?   &test_get_ad_creative_with_wrong_fieldsz9AdCreativeTestCase.test_get_ad_creative_with_wrong_fieldsf   s    $$D1 	JW-7-=-=D*-1-?-?D*  F F""#78 %i&;&;<DD!! E  S\1-OOJwqz':':KHI!	J 	J 	J 	Js%   AC;,+C/AC;/C8	4C;;Dc                    t        j                  d      5 }t        j                  | j                  _        t        j                  dt        t        j                        z   dz   t        t        j                        z   dz         | j                  _        | j                  | j                  _        g }t        j                  t!        j"                  t        j$                        gt        j&                  t        j&                  t        j(                  t        j(                  t        j*                  t        j*                  t        j,                  t        j,                  t        j.                  t        j.                  t        j0                  t        j0                  t        j2                  t        j2                  t        j4                  t        j4                  t        j6                  t        j6                  t        j8                  t        j8                  t        j:                  t        j:                  i}t=        t        j>                        jA                  ||      }| jC                  tE        |      d       | jG                  tI        |tJ                     | jC                  |t        j                     t        j                         d d d        y # 1 sw Y   y xY w)NTr   r   r   z", "success": "true"}r   )&r   r   r   r   r   r   r   r   r    IDr"   r3   r0   r1   r2   r$   r9   r:   r%   r#   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r   r!   create_ad_creativer5   r6   r7   r8   r	   r;   s        r?   test_create_ad_creativez*AdCreativeTestCase.test_create_ad_creativez   s   $$D1 	LW-7-?-?D**-**TC	<M5MPU5UX[\e\q\qXr5r  vM  6M  +ND'-1-?-?D*F""TZZ	0B0B%C$D""I$6$6++Y-H-H00)2R2R%%y'<'<	--y/L/L1193T3T$$i&:&:$$i&:&:	F !!5!56IIH
 S\1-OOJx<=Xill3Y5J5JK9	L 	L 	Ls   J-KKc                    t        j                  d      5 }t        j                  | j                  _        | j                  | j                  _        g }ddi}| j                  t              5  t        t        j                        j                  ||      }d d d        | j                  t        |      d       | j!                  t#        |d   j$                  t&                     d d d        y # 1 sw Y   YxY w# 1 sw Y   y xY w)NTr   authorization_categoryunexited_categoryr   )r   r   r   rC   r   r   r1   r2   rD   r   r   r"   r!   rK   r5   r6   r7   rE   rF   rG   r;   s        r?   )test_create_ad_creative_with_wrong_paramsz<AdCreativeTestCase.test_create_ad_creative_with_wrong_params   s    $$D1 	KW-7-=-=D*-1-?-?D*F(*=F ""#78 $Y%9%9:MM S\1-OOJwr{';';[IJ!	K 	K 	K 	Ks%   AC;-*C/AC;/C8	4C;;Dc                 V   t        j                  d      5 }t        j                  | j                  _        t        j                  dt        t        j                        z   dz   t        t        j                        z   dz         | j                  _        | j                  | j                  _        g }t        j                  t        j                  t        j                  t        j                  t        j                   t#        j$                  t        j                         t        j&                  t        j&                  t        j(                  t        j(                  t        j*                  t        j*                  i}t-        t        j.                        j1                  ||      }| j3                  t5        |      d       | j7                  t9        |d   t:                     | j3                  |d   t        j                     t        j                         d d d        y # 1 sw Y   y xY w)NTr   r   r   r   r   r   )r   r   r   r   r   r   r   r   r    r)   r"   r0   r1   r2   	AD_FORMATDYNAMIC_ASSET_LABELDYNAMIC_CREATIVE_SPECr9   r:   HEIGHTWIDTHRENDER_TYPEr	   r3   get_previewsr5   r6   r7   r8   r
   r<   r=   r   r   previewss        r?   test_get_previewsz$AdCreativeTestCase.test_get_previews   s   $$D1 	JW-7-?-?D**-**)..)*,1247	4GHK+D' .2-?-?D*F##Y%8%8--y/L/L//I<[<[1\  )"2"2%%y'<'<F ")"7"78EE F H
 S\1-OOJx{I>?Xa[8)..I7	J 	J 	Js   G?HH(c                    t        j                  d      5 }t        j                  | j                  _        | j                  | j                  _        g }ddi}| j                  t              5  t        t        j                        j                  ||      }d d d        | j                  t        |      d       | j!                  t#        |d   j$                  t&                     d d d        y # 1 sw Y   YxY w# 1 sw Y   y xY w)NTr   render_type
wrong_typer   r   r   )r   r   r   rC   r   r   r1   r2   rD   r   r	   r"   r3   rY   r5   r6   r7   rE   rF   rG   rZ   s        r?   #test_get_previews_with_wrong_paramsz6AdCreativeTestCase.test_get_previews_with_wrong_params   s    $$D1 	JW-7-=-=D*-1-?-?D*FlF ""#78 %i&;&;<II!! J  S\1-OOJwqz':':KHI	J 	J 	J 	Js%   AC<-+C0AC<0C9	5C<<DN)	__name__
__module____qualname__r@   rH   rL   rQ   r\   r`        r?   r   r   (   s(    :GzJ(L@K(J>Jre   r   __main__)__doc__r   r9   facebook_business.sessionr   facebook_business.exceptionsr   facebook_business.apir   r   r   %facebook_business.adobjects.adaccountr   &facebook_business.adobjects.adcreativer	   %facebook_business.adobjects.adpreviewr
   integration_utilsintegration_constantIntegrationTestCaser   ra   unittestmainrd   re   r?   <module>rs      sW   *   5 = S S ; = ;   #uJ, uJp zMMO re   