+
    TŎi^              	          R t ^ RIt^ RIt^ RIt^RI5  ! R R]4      t ! R R]4      t ! R R]4      t ! R	 R
]4      t	 ! R R]4      t
 ! R R]4      t ! R R]4      t ! R R]4      t ! R R]4      t ! R R]4      t ! R R]4      t ! R R]4      t ! R R]4      t ! R R]4      t ! R R ]4      t ! R! R"]4      t ! R# R$]4      t ! R% R&]4      t ! R' R(]4      t ! R) R*]4      t ! R+ R,]4      t ! R- R.]4      t ! R/ R0]4      t]R18X  Ed   ]! ]PA                  R24      R34      t!]!PE                  R44       ]!PG                  4         ]! R54      t$]PP                  ! ]$4      t)]$PG                  4        R7t*]+PY                  ])R8,          ])R9,          ])R:,          R;]-! ]*4      ,           4       ]P]                  R<R;]-! ]*4      ,           4       ]P]                  R=]*4       ]P]                  R>R?4       ]P]                  R@RA4       ]P]                  RBRC4       ]P]                  RDRE4       ]P]                  RFRG4       ]P]                  RHRI4       ]P]                  RJRK4       ]P]                  RLRM4       ]P]                  RN])RN,          4       ]/Pa                  4        R# R#   ]% d    ]&! R64       ]PN                  ! 4         ELki ; i)Oz
Unit tests for the Python Facebook Business SDK.

How to run:
    python -m facebook_business.test.docs
    python -m facebook_business.test.docs -v AdGroupDocsTestCase
N)*c                      a  ] tR t^#t o R tR tR tR tR tR t	R t
R tR	 tR
 tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tRtV t R# )AdAccountDocsTestCasec                   V P                  ^4      pV P                  ^4       V P                  ^V4      pV P                  ^V4       V P                  ^4      pV P                  ^4      pV P                  ^W#4      pV P                  ^W$4       \        P                  RVP                  4       4       V P                  4       p\        P                  RVR,          4       V P                  4       p\        P                  RVR,          4       R# )   ad_id
adlabel_ididad_account_image_hashhashN)	create_campaigncreate_adsetcreate_creative	create_adDocsDataStoresetget_idcreate_adlabelcreate_image)selfcampaignadset	creative1	creative2adadlabelimages   &       j/Users/ahmad/.openclaw/workspace/scripts/.venv/lib/python3.14/site-packages/facebook_business/test/docs.pysetUpAdAccountDocsTestCase.setUp$   s    ''*Q!!!X.!X&((+	((+	^^Au0q%+'299;/%%',6!!#15=A    c                   \        \        P                  R 4      4      pVP                  \        P
                  P                  \        P
                  P                  \        P
                  P                  .R\        P                  P                  R\        P                  P                  /R7      pV P                  V4       R# )adaccount_idleveldate_presetfieldsparamsN)	AdAccountr   getget_insightsInsightsFieldcampaign_idunique_clicksimpressionsLevelr   Preset	yesterdaystore_response)r   accountinsightss   &  r   test_get_insights'AdAccountDocsTestCase.test_get_insights:   s    M--n=>''NN&&NN((NN&&0

 X^^,,8??44
	 (  	H%r    c                    \        \        P                  R 4      4      pVP                  \        P
                  P                  \        P
                  P                  .R7      pV P                  V^ ,          4       R# r"   r&   N)	r(   r   r)   get_activitiesActivityr,   
event_type
event_timer3   )r   r4   
activitiess   &  r   test_get_activities)AdAccountDocsTestCase.test_get_activitiesF   s]    M--n=>++NN%%NN%%4
+ 
 	JqM*r    c                    \        \        P                  R 4      4      pVP                  \        P
                  P                  R.R7      pV P                  V4       R# )r"   joe@example.comschemausersN)r(   r   r)   opt_out_user_from_targetingCustomAudienceSchema
email_hashr3   )r   r4   responses   &  r    test_opt_out_user_from_targeting6AdAccountDocsTestCase.test_opt_out_user_from_targetingN   sQ    M--n=>66!((33$% 7 
 	H%r    c                    \        \        P                  R 4      4      pVP                  \        P
                  P                  \        P
                  P                  .R7      pV P                  V4       R# r9   )	r(   r   r)   get_campaignsCampaignr,   nameconfigured_statusr3   )r   r4   	campaignss   &  r   test_get_campaigns(AdAccountDocsTestCase.test_get_campaignsV   sY    M--n=>))NNNN,,2
) 	 	I&r    c                   \        \        P                  R 4      4      pVP                  \        P
                  P                  \        P
                  P                  \        P
                  P                  \        P
                  P                  \        P
                  P                  .R7      pV P                  V4       R# r9   )r(   r   r)   get_ad_setsAdSetr,   rQ   bid_inforR   daily_budget	targetingr3   )r   r4   adsetss   &  r   test_get_ad_sets&AdAccountDocsTestCase.test_get_ad_sets^   s    M--n=>$$KKKK  KK))KK$$KK!!-
$  	F#r    c                   \        \        P                  R 4      4      pVP                  \        P
                  P                  \        P
                  P                  \        P
                  P                  .R7      pV P                  V4       R# r9   )
r(   r   r)   get_adsAdr,   rQ   rR   creativer3   )r   r4   adss   &  r   test_get_ads"AdAccountDocsTestCase.test_get_adsi   sa    M--n=>ooHHMMHH&&HH&
o 
 	C r    c                    \        \        P                  R 4      4      pVP                  4       pV P	                  V4       R# r"   N)r(   r   r)   get_ad_usersr3   )r   r4   rF   s   &  r   test_get_ad_users'AdAccountDocsTestCase.test_get_ad_usersr   s3    M--n=>$$&E"r    c                    \        \        P                  R 4      4      pVP                  \        P
                  P                  \        P
                  P                  .R7      pV P                  VR,          4       R# r"   r:          NN)	r(   r   r)   get_ad_creatives
AdCreativer,   rQ   
image_hashr3   )r   r4   	creativess   &  r   test_get_ad_creatives+AdAccountDocsTestCase.test_get_ad_creativesw   sa    M--n=>,,!!''5
, 	 	IcN+r    c                    \        \        P                  R 4      4      pVP                  \        P
                  P                  .R7      pV P                  VR,          4       R# rl   )r(   r   r)   get_ad_imagesAdImager,   r   r3   )r   r4   imagess   &  r   test_get_ad_images(AdAccountDocsTestCase.test_get_ad_images   sP    M--n=>&&MM/
&  	F3K(r    c                    \        \        P                  R 4      4      pVP                  \        P
                  P                  .R7      pV P                  V4       R# r9   )r(   r   r)   get_ad_conversion_pixelsrx   r,   r   r3   r   r4   pixelss   &  r   test_get_ad_conversion_pixels3AdAccountDocsTestCase.test_get_ad_conversion_pixels   sL    M--n=>11MM:
1  	F#r    c                    \        \        P                  R 4      4      pVP                  4       pV P	                  VR,          4       R# r"   rm   N)r(   r   r)   get_broad_category_targetingr3   )r   r4   bcts   &  r   !test_get_broad_category_targeting7AdAccountDocsTestCase.test_get_broad_category_targeting   s7    M--n=>224CH%r    c                    \        \        P                  R 4      4      pVP                  4       pV Uu. uF  q3R,          R8X  g   K  VNK  	  ppV P	                  V4       R# u upi )r"   r	   606699326111137N)r(   r   r)   get_connection_objectsr3   )r   r4   connection_objectscos   &   r   test_get_connection_objects1AdAccountDocsTestCase.test_get_connection_objects   sf    M--n=>$;;=+N+2$x;L/LBB+ 	 N./Ns   A"A"c                    \        \        P                  R 4      4      pVP                  4       pV P	                  VR,          4       R# r   )r(   r   r)   get_custom_audiencesr3   )r   r4   custom_audiencess   &  r   test_get_custom_audiences/AdAccountDocsTestCase.test_get_custom_audiences   s:    M--n=>"779,S12r    c                    \        \        P                  R 4      4      pVP                  4       pV P	                  V^ ,          4       R# rg   )r(   r   r)   get_partner_categoriesr3   )r   r4   partner_categoriess   &  r   test_get_partner_categories1AdAccountDocsTestCase.test_get_partner_categories   s:    M--n=>$;;=.q12r    c                    \        \        P                  R 4      4      pVP                  4       pV P	                  VR,          4       R# r   )r(   r   r)   get_rate_cardsr3   )r   r4   
rate_cardss   &  r   test_get_rate_cards)AdAccountDocsTestCase.test_get_rate_cards   s7    M--n=>++-
JsO,r    c           
         \        \        P                  R 4      4      pVP                  RRRRRRRR.///R	7      pV P	                  V4       R
# )r"   currencyUSDoptimize_forOFFSITE_CONVERSIONStargeting_specgeo_locations	countriesUSr'   N)r(   r   r)   get_reach_estimater3   )r   r4   reach_estimates   &  r   test_get_reach_estimate-AdAccountDocsTestCase.test_get_reach_estimate   sa    M--n=> 331$"<
3  	N+r    c                    \        \        P                  R 4      4      pVP                  4       pV P	                  VR,          4       R# r   )r(   r   r)   get_transactionsr3   )r   r4   transactionss   &  r   test_get_transactions+AdAccountDocsTestCase.test_get_transactions   s8    M--n=>//1L-.r    c                    \        \        P                  R 4      4      pVP                  RRRRRRRR\        P                  R	4      /R
R/R7      pV P	                  V4       R# )r"   rb   titlezThis is the titlebodyzThis is the body
object_urlz%https://facebookmarketingpartners.comrr   r
   	ad_formatRIGHT_COLUMN_STANDARDr   N)r(   r   r)   get_ad_previewr3   )r   r4   
ad_previews   &  r   test_get_ad_preview)AdAccountDocsTestCase.test_get_ad_preview   sr    M--n=>++,*Em//0GH	 04
+ 
 	J'r    c                    \        \        P                  R 4      4      pVP                  \        P
                  P                  \        P
                  P                  .R7      pV P                  V4       R# r9   )	r(   r   r)   get_ads_pixelsAdsPixelr,   rQ   r	   r3   r~   s   &  r   test_get_ads_pixels)AdAccountDocsTestCase.test_get_ads_pixels   sY    M--n=>''NNNN0
'  	F#r    c                    \        \        P                  R 4      4      p\        P                  \        P
                  R.//pVP                  R.RV/R7      pV P                  V4       R# )r   r   targetingsentencelinesr   r%   N)ra   r   r)   TargetingSpecsFieldr   r   get_targeting_descriptionr3   )r   adgroupr[   targeting_descs   &   r   test_get_targeting_description4AdAccountDocsTestCase.test_get_targeting_description   su    ]&&w/0--#--v0
	
 !::$C
 i
 ; 
 	N+r    c                    \        \        P                  R 4      4      pVP                  \        P
                  P                  \        P
                  P                  .R7      pV P                  V4       R# r9   )	r(   r   r)   get_ad_labelsAdLabelr,   rQ   r	   r3   )r   r4   adlabelss   &  r   test_get_ad_labels(AdAccountDocsTestCase.test_get_ad_labels   sY    M--n=>((MMMM1
(  	H%r    c                &   \        \        P                  R 4      4      p\        P                  R4      pRV.RR/pVP                  \        P
                  P                  \        P
                  P                  .VR7      pV P                  V4       R# r"   r   ad_label_idsoperatorALLr%   N)	r(   r   r)   get_ad_creatives_by_labelsr   r,   rQ   r	   r3   )r   r4   r   r'   adcreativess   &    r   test_get_ad_creatives_by_labels5AdAccountDocsTestCase.test_get_ad_creatives_by_labels   s    M--n=>"&&|4
 :,
EB88MMMMA
  9  	K(r    c                &   \        \        P                  R 4      4      p\        P                  R4      pRV.RR/pVP                  \        P
                  P                  \        P
                  P                  .VR7      pV P                  V4       R# r   )	r(   r   r)   get_ads_by_labelsr   r,   rQ   r	   r3   )r   r4   r   r'   rc   s   &    r   test_get_ads_by_labels,AdAccountDocsTestCase.test_get_ads_by_labels   s    M--n=>"&&|4
 :,
EB''MMMM0
  (  	C r    c                &   \        \        P                  R 4      4      p\        P                  R4      pRV.RR/pVP                  \        P
                  P                  \        P
                  P                  .VR7      pV P                  V4       R# r   )	r(   r   r)   get_adsets_by_labelsr   r,   rQ   r	   r3   )r   r4   r   r'   r\   s   &    r   test_get_adsets_by_labels/AdAccountDocsTestCase.test_get_adsets_by_labels   s    M--n=>"&&|4
 :,
EB--MMMM6
  .  	F#r    c                &   \        \        P                  R 4      4      p\        P                  R4      pRV.RR/pVP                  \        P
                  P                  \        P
                  P                  .VR7      pV P                  V4       R# r   )	r(   r   r)   get_campaigns_by_labelsr   r,   rQ   r	   r3   )r   r4   r   r'   rS   s   &    r   test_get_campaigns_by_labels2AdAccountDocsTestCase.test_get_campaigns_by_labels  s    M--n=>"&&|4
 :,
EB33MMMM<
  4 	 	I&r    c                    \        \        P                  R 4      4      pVP                  4       pV P	                  VR,          4       R# r   )r(   r   r)   get_minimum_budgetsr3   )r   r4   min_budgetss   &  r   test_get_minimum_budgets.AdAccountDocsTestCase.test_get_minimum_budgets  s8    M--n=>113K,-r     N)!__name__
__module____qualname____firstlineno__r   r6   r@   rL   rT   r]   rd   ri   rt   rz   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   __static_attributes____classdictcell____classdict__s   @r   r   r   #   s     B,
&+&'	$!#
,)$&
03
3
-
,/
($,&)!$'. .r    r   c                   2   a  ] tR tRt o R tR tR tRtV tR# )AdUserDocsTestCasei  c                    \        R 4      pVP                  \        P                  P                  .R7      pV P                  VR,          4       R# )mer:   :rn      NN)AdUserget_ad_accountsr(   r,   rQ   r3   )r   useraccountss   &  r   test_get_ad_accounts'AdUserDocsTestCase.test_get_ad_accounts  sD    d|''OO  0
'  	HSM*r    c                    \        R 4      pVP                  \        P                  P                  .R7      pV P                  V4       R# r   r:   N)r   get_ad_accountr(   r,   rQ   r3   )r   r   r4   s   &  r   test_get_ad_account&AdUserDocsTestCase.test_get_ad_account  s@    d|%%OO  .
%  	G$r    c                    \        R 4      pVP                  \        P                  P                  .R7      pV P                  V4       R# r   )r   	get_pagesPager,   rQ   r3   )r   r   pagess   &  r   test_get_pages!AdUserDocsTestCase.test_get_pages"  s;    d|JJOO'
  	E"r    r   N)	r   r   r   r   r   r   r  r   r   r   s   @r   r   r     s     +%# #r    r   c                   ,   a  ] tR tRt o R tR tRtV tR# )AdCreativeDocsTestCasei*  c                p    V P                  ^4      p\        P                  RVP                  4       4       R# )r   creative_idN)r   r   r   r   )r   rb   s   & r   r   AdCreativeDocsTestCase.setUp+  s)    ''*-):;r    c                    \        \        P                  R 4      4      pVP                  RR/R7      pV P	                  V4       R# )r
  r   r   r   N)rq   r   r)   r   r3   )r   rb   previews   &  r   r   *AdCreativeDocsTestCase.test_get_ad_preview/  sE    m//>?))02
)  	G$r    r   N)r   r   r   r   r   r   r   r   r   s   @r   r  r  *  s     <% %r    r  c                   P   a  ] tR tRt o R tR tR tR tR tR t	R t
R	 tR
tV tR# )AdDocsTestCasei7  c                    V P                  ^4      pV P                  ^V4      pV P                  ^4      pV P                  ^W#4      p\        P                  RVP                  4       4       R# )r   r   N)r   r   create_creative_leadsr   r   r   r   )r   r   r   rb   r   s   &    r   r   AdDocsTestCase.setUp8  sZ    ''*!!!X.--a0^^Au/'299;/r    c                    \        \        P                  R 4      4      pVP                  \        P
                  P                  .R7      pV P                  V4       R# )r   r:   N)ra   r   r)   rp   rq   r,   rQ   r3   )r   r   rs   s   &  r   rt   $AdDocsTestCase.test_get_ad_creatives?  sG    !!'*+''
0@0@0E0E/F'G	I&r    c                    \        \        P                  R 4      4      pVP                  R.R7      pV P	                  V4       R# )r   r   r:   N)ra   r   r)   r   r3   )r   r   r   s   &  r   r   -AdDocsTestCase.test_get_targeting_descriptionD  sB    !!'*+55$>
5  	N+r    c                    \        \        P                  R 4      4      pVP                  4       pV P	                  V4       R# r   N)ra   r   r)   get_keyword_statsr3   )r   r   keywordss   &  r   test_get_keyword_stats%AdDocsTestCase.test_get_keyword_statsK  s3    !!'*+'')H%r    c                    \        \        P                  R 4      4      pVP                  RR/R7      pV P	                  V4       R# )r   r   r   r   N)ra   r   r)   r   r3   )r   r   r   s   &  r   r   "AdDocsTestCase.test_get_ad_previewP  sE    !!'*+&&0/
& 
 	J'r    c                    \        \        P                  R 4      4      pVP                  4       pV P	                  V4       R# r  )ra   r   r)   r   r3   )r   r   r   s   &  r   r   &AdDocsTestCase.test_get_reach_estimateW  s3    !!'*+..0N+r    c                    \        \        P                  R 4      4      pVP                  4       pV P	                  V4       R# r  )ra   r   r)   get_click_tracking_tagr3   )r   r   tags   &  r   test_get_click_tracking_tag*AdDocsTestCase.test_get_click_tracking_tag\  s3    !!'*+'')C r    c                    \        \        P                  R 4      4      pVP                  4       pV P	                  V4       R# r  )ra   r   r)   	get_leadsr3   )r   r   leadss   &  r   test_get_leadsAdDocsTestCase.test_get_leadsa  s0    !!'*+E"r    r   N)r   r   r   r   r   rt   r   r  r   r   r%  r*  r   r   r   s   @r   r  r  7  s2     0'
,&
(,
!
# #r    r  c                   >   a  ] tR tRt o R tR tR tR tR tRt	V t
R# )	AdImageDocsTestCaseig  c                R   \         P                  R \        P                  P	                  \        P                  P                  \        4      R4      4       \         P                  R\        P                  P	                  \        P                  P                  \        4      R4      4       \        \         P                  R4      R7      p\         P                  R4      V\        P                  P                  &   VP                  4        \         P                  RVR,          4       R# )		image_zipztest.zip
image_pathztest.pngr"   	parent_idimage_idr	   N)r   r   ospathjoindirname__file__rx   r)   r,   filenameremote_creater   r   s   & r   r   AdImageDocsTestCase.setUph  s    bggooh&?L	N"'',,rwwx'@*M	O-"3"3N"CD(5(9(9,(Ggmm$$%*eDk2r    c                    \        \        P                  R 4      R7      p\        P                  R4      V\         P                  P                  &   VP                  4        V P                  V4       R# )r"   r1  r0  N)rx   r   r)   r,   r9  r:  r3   r;  s   & r   test_remote_create&AdImageDocsTestCase.test_remote_creater  sP    -"3"3N"CD(5(9(9,(Ggmm$$%E"r    c                    \         P                  \        P                  R 4      \        P                  R4      R7      pV P	                  V4       R# )r/  r"   )r9  r2  N)rx   remote_create_from_zipr   r)   r3   )r   ry   s   & r   test_remote_create_from_zip/AdImageDocsTestCase.test_remote_create_from_zipx  sC    //"&&{3#''7 0 
 	F#r    c                    \        \        P                  R 4      4      pVP                  4        V P	                  V4       R# r3  N)rx   r   r)   remote_readr3   r;  s   & r   test_remote_read$AdImageDocsTestCase.test_remote_read  s1    ))*56E"r    c                    \        \        P                  R 4      4      pVP                  4        VP	                  4       pV P                  V4       R# rE  )rx   r   r)   rF  get_hashr3   )r   r   rr   s   &  r   test_get_hash!AdImageDocsTestCase.test_get_hash  s=    ))*56^^%
J'r    r   N)r   r   r   r   r   r>  rB  rG  rK  r   r   r   s   @r   r-  r-  g  s#     3#$#
( (r    r-  c                   2   a  ] tR tRt o R tR tR tRtV tR# )AdSetDocsTestCasei  c                h   V P                  ^4      pV P                  ^V4      pV P                  ^4      pV P                  ^4      pV P                  ^W#4       V P                  ^W$4       \        P                  RVP                  4       4       \        P                  RVP                  4       4       R# )r   adcampaign_idadset_idNr   r   r   r   r   r   r   )r   r   r   r   r   s   &    r   r   AdSetDocsTestCase.setUp  s    ''*!!!X.((+	((+	q%+q%+/8??+<=*elln5r    c                   \        \        P                  R 4      4      pVP                  \         P                  P
                  \         P                  P                  \         P                  P                  .R7      pV P                  V4       R# rQ  r:   N)	rX   r   r)   r`   r,   rQ   r-   rR   r3   )r   r   adgroupss   &  r   rd   AdSetDocsTestCase.test_get_ads  sc    m''
34==KKKK##KK)))
= 
 	H%r    c                P   \        \        P                  R 4      4      pVP                  \        P
                  P                  \        P
                  P                  \        P
                  P                  \        P
                  P                  .R7      pV P                  V4       R# rU  )rX   r   r)   rp   rq   r,   rQ   r	   preview_urlcall_to_action_typer3   )r   r   r   s   &  r   rt   'AdSetDocsTestCase.test_get_ad_creatives  s{    m''
34,,!!((00	5
,  	K(r    r   N)	r   r   r   r   r   rd   rt   r   r   r   s   @r   rN  rN    s     6&) )r    rN  c                   8   a  ] tR tRt o R tR tR tR tRtV t	R# )AdsPixelDocsTestCasei  c                n    V P                  4       p\        P                  R VP                  4       4       R# pixel_idN)create_ads_pixelr   r   r   )r   pixels   & r   r   AdsPixelDocsTestCase.setUp  s&    %%'*elln5r    c                   \         P                  R 4      p\         P                  R4      pVP                  RR4      p\         P                  R4      p\        V4      pVP	                  W4       V P                  V4       R# business_idr"   act_ r`  N)r   r)   replacer   share_pixel_with_ad_accountr3   )r   rf  act_iddestination_account_idr`  rb  s   &     r    test_share_pixel_with_ad_account5AdsPixelDocsTestCase.test_share_pixel_with_ad_account  si    #''6"">2!'!; $$Z0"))+NE"r    c                    \         P                  R 4      p\        V4      pVP                  4       pV P	                  V4       R# r_  )r   r)   r   get_agenciesr3   )r   r`  rb  shared_agenciess   &   r   test_get_agencies&AdsPixelDocsTestCase.test_get_agencies  s8     $$Z0",,.O,r    c                    \         P                  R 4      p\         P                  R4      P                  RR4      p\         P                  R4      p\        V4      pVP	                  W4       V P                  V4       R# re  )r   r)   ri  r   unshare_pixel_from_ad_accountr3   )r   rf  
account_idr`  rb  s   &    r   "test_unshare_pixel_from_ad_account7AdsPixelDocsTestCase.test_unshare_pixel_from_ad_account  se    #''6"&&~6>>vrJ
 $$Z0"++KDE"r    r   N)
r   r   r   r   r   rm  rr  rw  r   r   r   s   @r   r]  r]    s     6#-# #r    r]  c                   ,   a  ] tR tRt o R tR tRtV tR# )BusinessDocsTestCasei  c                    \        \        P                  R 4      4      pVP                  4       pV P	                  V^ ,          4       R# )rf  N)Businessr   r)   get_product_catalogsr3   )r   businesscatalogss   &  r   test_get_product_catalogs.BusinessDocsTestCase.test_get_product_catalogs  s7    M--m<=002HQK(r    c                   \        \        P                  R 4      4      pVP                  \        P
                  P                  \        P
                  P                  \        P
                  P                  .R\        P                  P                  R\        P                  P                  /R7      pV P                  V4       R# )rf  r#   r$   r%   N)r|  r   r)   r*   r+   r,   r-   r.   r/   r0   r   r1   r2   r3   )r   r~  r5   s   &  r   r6   &BusinessDocsTestCase.test_get_insights  s    M--m<=((NN&&NN((NN&&1

 X^^,,8??44
	 )  	H%r    r   N)r   r   r   r   r  r6   r   r   r   s   @r   rz  rz    s     )

& 
&r    rz  c                   8   a  ] tR tRt o R tR tR tR tRtV t	R# )CustomAudienceDocsTestCasei  c                n    V P                  4       p\        P                  R VP                  4       4       R# )ca_idN)create_custom_audiencer   r   get_id_assured)r   cas   & r   r    CustomAudienceDocsTestCase.setUp  s)    ((*'2#4#4#67r    c                    \        \        P                  R 4      4      pVP                  \         P                  P
                  R.R7      pV P                  V4       R# r  rC   rD   N)rH   r   r)   	add_usersrI   rJ   r3   r   custom_audiencerK   s   &  r   test_add_users)CustomAudienceDocsTestCase.test_add_users  sS    ():):7)CD",,!((33! - 
 	H%r    c                    \        \        P                  R 4      4      pVP                  \         P                  P
                  R.R7      pV P                  V4       R# r  )rH   r   r)   remove_usersrI   rJ   r3   r  s   &  r   test_remove_users,CustomAudienceDocsTestCase.test_remove_users  sS    ():):7)CD"//!((33! 0 
 	H%r    c                    \         P                  \         P                  P                  R .R7      pV P	                  V4       R# )rC   rD   N)rH   format_paramsrI   rJ   r3   )r   formatted_paramss   & r   test_format_params-CustomAudienceDocsTestCase.test_format_params  s>    )77!((33$% 8 
 	,-r    r   N)
r   r   r   r   r   r  r  r  r   r   r   s   @r   r  r    s     8&&. .r    r  c                   2   a  ] tR tRt o R tR tR tRtV tR# )CampaignDocsTestCasei  c                "   V P                  ^4      pV P                  ^V4      pV P                  ^V4       V P                  ^4      pV P                  ^W#4       V P                  ^W#4       \        P                  RVP                  4       4       R# )r   r-   NrR  )r   r   r   rb   s   &   r   r   CampaignDocsTestCase.setUp  sw    ''*!!!X.!X&''*q%*q%*-):;r    c                ,   \        \        P                  R 4      4      pVP                  \        P
                  P                  \        P
                  P                  \        P
                  P                  .R7      pV P                  V^ ,          4       R# r-   r:   N)
rP   r   r)   rW   rX   r,   rQ   r	   rZ   r3   )r   r   r\   s   &  r   r]   %CampaignDocsTestCase.test_get_ad_sets  sh    M--m<=%%KKKKNNKK$$.
% 
 	F1I&r    c                   \        \        P                  R 4      4      pVP                  \        P
                  P                  \        P
                  P                  \        P
                  P                  .R7      pV P                  V4       R# r  )
rP   r   r)   r`   ra   r,   rQ   rR   rb   r3   )r   r   rc   s   &  r   rd   !CampaignDocsTestCase.test_get_ads  sd    M--m<=HHMMHH&&HH'
 
 	C r    r   N)	r   r   r   r   r   r]   rd   r   r   r   s   @r   r  r    s     <'! !r    r  c                       ] tR tRtRtR# )ProductGroupDocsTestCasei  r   Nr   r   r   r   r   r   r    r   r  r        r    r  c                   ,   a  ] tR tRt o R tR tRtV tR# )ProductFeedDocsTestCasei  c                    V P                  4       p\        P                  R VP                  4       4       V P	                  VP                  4       4      p\        P                  RVP                  4       4       R# )dpa_catalog_iddpa_feed_idN)create_product_catalogr   r   r   create_product_feed)r   product_catalogproduct_feeds   &  r   r   ProductFeedDocsTestCase.setUp   s\    557*O,B,B,DE//0F0F0HI-)<)<)>?r    c                    \        \        P                  R 4      4      pVP                  \        P
                  P                  \        P
                  P                  .R7      pV P                  V4       R# )r  r:   N)	ProductFeedr   r)   get_productsProductr,   r   pricer3   )r   feedproductss   &  r   test_get_products)ProductFeedDocsTestCase.test_get_products&  sY    =,,];<$$MMMM-
$  	H%r    r   N)r   r   r   r   r   r  r   r   r   s   @r   r  r    s     @& &r    r  c                       ] tR tRtRtR# )ProductAudienceDocsTestCasei/  r   Nr  r   r    r   r  r  /  r  r    r  c                       ] tR tRtRtR# )ProductDocsTestCasei3  r   Nr  r   r    r   r  r  3  r  r    r  c                   >   a  ] tR tRt o R tR tR tR tR tRt	V t
R# )	ProductCatalogDocsTestCasei7  c                    V P                  4       p\        P                  R VP                  4       4       V P	                  4       p\        P                  RVP                  4       4       R# )r  r`  N)r  r   r   r   ra  )r   r  rb  s   &  r   r    ProductCatalogDocsTestCase.setUp9  sN    557*O,B,B,DE%%'*elln5r    c                    \        \        P                  R 4      4      pVP                  4       pV P	                  V^ ,          4       R# r  N)ProductCatalogr   r)   get_product_feedsr3   )r   catalogfeedss   &  r   test_get_product_feeds1ProductCatalogDocsTestCase.test_get_product_feeds?  s8     !2!23C!DE))+E!H%r    c                    \        \        P                  R 4      4      pVP                  \        P                  R4      .R7      pV P	                  V4       R# r  r`  )	pixel_idsN)r  r   r)   add_external_event_sourcesr3   r   r  rK   s   &  r   test_add_external_event_sources:ProductCatalogDocsTestCase.test_add_external_event_sourcesD  sO     !2!23C!DE55j)A
5  	H%r    c                    \        \        P                  R 4      4      pVP                  4       pV P	                  V4       R# r  )r  r   r)   get_external_event_sourcesr3   )r   r  sourcess   &  r   test_get_external_event_sources:ProductCatalogDocsTestCase.test_get_external_event_sourcesK  s4     !2!23C!DE446G$r    c                    \        \        P                  R 4      4      pVP                  \        P                  R4      .R7      pV P	                  V4       R# r  )r  r   r)   remove_external_event_sourcesr3   r  s   &  r   "test_remove_external_event_sources=ProductCatalogDocsTestCase.test_remove_external_event_sourcesP  sO     !2!23C!DE88j)D
8  	H%r    r   N)r   r   r   r   r   r  r  r  r  r   r   r   s   @r   r  r  7  s#     6&
&%
& &r    r  c                   2   a  ] tR tRt o R tR tR tRtV tR# )ProductSetDocsTestCaseiX  c                    V P                  4       p\        P                  R VP                  4       4       V P	                  VP                  4       4      p\        P                  RVP                  4       4       R# )r  
dpa_set_idN)r  r   r   r   create_product_set)r   r  product_sets   &  r   r   ProductSetDocsTestCase.setUpZ  s\    557*O,B,B,DE--o.D.D.FG,(:(:(<=r    c                    \        \        P                  R 4      4      pVP                  \        P
                  P                  \        P
                  P                  .R7      pV P                  V4       R# r  r:   N)	
ProductSetr   r)   get_product_groupsr  r,   r   r  r3   )r   r  product_groupss   &  r   test_get_product_groups.ProductSetDocsTestCase.test_get_product_groups`  sZ     !2!2<!@A$77MMMM@
7  	N+r    c                    \        \        P                  R 4      4      pVP                  \        P
                  P                  \        P
                  P                  .R7      pV P                  V4       R# r  )	r  r   r)   r  r  r,   r   r  r3   )r   r  r  s   &  r   r  (ProductSetDocsTestCase.test_get_productsh  sY     !2!2<!@A++MMMM4
+  	H%r    r   N)	r   r   r   r   r   r  r  r   r   r   s   @r   r  r  X  s     >,& &r    r  c                       ] tR tRtRtR# )"ProductFeedUploadErrorDocsTestCaseiq  r   Nr  r   r    r   r  r  q  r  r    r  c                       ] tR tRtRtR# )AdConversionPixelDocsTestCaseiu  r   Nr  r   r    r   r  r  u  r  r    r  c                       ] tR tRtRtR# )ClickTrackingTagDocsTestCaseiy  r   Nr  r   r    r   r  r  y  r  r    r  c                       ] tR tRtRtR# )InsightsDocsTestCasei}  r   Nr  r   r    r   r  r  }  r  r    r  c                   &   a  ] tR tRt o R tRtV tR# )PageDocsTestCasei  c                    \        \        P                  R 4      4      pVP                  4       pV P	                  VR,          4       R# )page_idrm   N)r  r   r)   get_leadgen_formsr3   )r   pageleadgen_formss   &  r   test_get_leadgen_forms'PageDocsTestCase.test_get_leadgen_forms  s8    M%%i01..0M#./r    r   N)r   r   r   r   r  r   r   r   s   @r   r  r    s     0 0r    r  c                   2   a  ] tR tRt o R tR tR tRtV tR# )$ReachFrequencyPredictionDocsTestCasei  c                n    V P                  4       p\        P                  R VP                  4       4       R# )rfp_idN)!create_reach_frequency_predictionr   r   r   )r   rfps   & r   r   *ReachFrequencyPredictionDocsTestCase.setUp  s&    446(CJJL1r    c                    R # Nr   r   s   &r   test_reserve1ReachFrequencyPredictionDocsTestCase.test_reserve      r    c                    R # r  r   r  s   &r   test_cancel0ReachFrequencyPredictionDocsTestCase.test_cancel  r	  r    r   N)	r   r   r   r   r   r  r  r   r   r   s   @r   r  r    s     2 r    r  c                   &   a  ] tR tRt o R tRtV tR# )TargetingSearchDocsTestCasei  c                    \         P                  R RR\         P                  P                  R^/R7      pV P	                  V4       R# )qzUnited Statestypelimitr   N)TargetingSearchsearchTargetingSearchTypescountryr3   )r   resultss   & r   test_search'TargetingSearchDocsTestCase.test_search  sE    !((O88@@Q1
( 
 	G$r    r   N)r   r   r   r   r  r   r   r   s   @r   r  r    s     % %r    r  __main__r9  wrh  z./config.jsonz)No config file found, skipping docs tests1505766289694659app_id
app_secretaccess_tokenrg  r"   adaccount_id_intrf  1454288444842444r  6026172406640r  447683242047472r  808641022536664r  1577689442497017dpa_upload_id1577690399163588
as_user_id358829457619128r`  417531085081002r  )1__doc__r4  sysjson
docs_utilsDocsTestCaser   r   r  r  r-  rN  r]  rz  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r   openr   r)   handlewritecloseconfig_fileIOErrorprintexitloadconfigrk  FacebookAdsApiinitstrr   unittestmainr   r    r   <module>r?     s  * 
 
  m.L m.`# #.
%\ 
%-#\ -#`!(, !(H) )>#< #<&< &&. .D!< !:	| 	&l &"	, 		, 	& &B&\ &2	 		L 		< 		< 	0| 0	< 	%, % z-##J/5F
LL
LLN?+ YY{#FFx|~V	 nfs6{&:;(&1m%78g/&(9:l$56m%78o'9:l$56j"34i	!23MMOA   9:
s   J# # KK