
    	h@                         S SK r S SKrS SKrS SKrS SKrS SKJr  S SKJrJ	r	  SR                  5       rS qSS jr " S S5      r " S S	\ R                  5      r\S
:X  a  S SKJr  \R(                  " 5         gg)    N)COMException)NewEnumwrapzGetData GetDataHere QueryGetData
                         GetCanonicalFormatEtc SetData EnumFormatEtc
                         DAdvise DUnadvise EnumDAdvisec                     [        XSS9$ )Nr   )iiduseDispatcher)r   )obr   s     nC:\Users\julio\OneDrive\Documentos\Trabajo\Ideas Frescas\venv\Lib\site-packages\win32com/test/testClipboard.pyWrapCOMObjectr      s    1--    c                   z    \ rS rSr\R
                  /r\rS r	S r
S rS rS rS rS rS	 rS
 rS rS rS rSrg)TestDataObject   c                     [         S-  q Xl        / U l        [        R                  [        R
                  4 HA  nUS [        R                  S[        R                  4nU R                  R                  U5        MC     g )N   )
num_do_objectsbytesvalsupported_fewin32conCF_TEXTCF_UNICODETEXT	pythoncomDVASPECT_CONTENTTYMED_HGLOBALappend)selfr   cffes       r
   __init__TestDataObject.__init__   sd    ! ##X%<%<=BT955r9;R;RRB$$R( >r   c                     [         S-  q g )Nr   )r   r   s    r
   __del__TestDataObject.__del__$   s    !r   c                 T    U[         R                  :X  a  [        U R                  US9$ g )Nr   )r   IID_IEnumFORMATETCr   r   )r   r   s     r
   _query_interface_ TestDataObject._query_interface_(   s(    )...4,,#66 /r   c                    S nUu  p4pVnU[         R                  -  (       a  U[         R                  :X  a  U[        R                  :X  a@  [         R
                  " 5       nUR                  [         R                  U R                  5        ObU[        R                  :X  aN  [         R
                  " 5       nUR                  [         R                  U R                  R                  S5      5        Uc  [        [        R                  S9eU$ )Nlatin1hresult)r   r   r   r   r   	STGMEDIUMsetr   r   decoder   winerror	E_NOTIMPL)r   r   ret_stgr   targetaspectindextymeds           r
   GetDataTestDataObject.GetData,   s    +-(F5I...5I<S<S3SX%%%#--/I33T]]Cx...#--/I33T]]5I5I(5ST?x'9'9::r   c                 0    [        [        R                  S9eNr-   r   r2   r3   r   r   s     r
   GetDataHereTestDataObject.GetDataHere;       8#5#566r   c                     Uu  p#pEnU[         R                  -  S:X  a  [        [        R                  S9eU[         R
                  :w  a  [        [        R                  S9eg )Nr   r-   )r   r   r   r2   DV_E_DVASPECTr   
DV_E_TYMED)r   r   r   r5   r6   r7   r8   s          r
   QueryGetDataTestDataObject.QueryGetData>   sT    +-(F5I...!3x'='=>>I+++x':':;;r   c                 4    [        [        R                  5      eN)r   r2   DATA_S_SAMEFORMATETCr>   s     r
   GetCanonicalFormatEtc$TestDataObject.GetCanonicalFormatEtcF   s    88899r   c                 0    [        [        R                  S9er<   r=   )r   r   mediums      r
   SetDataTestDataObject.SetDataI   rA   r   c                     U[         R                  :w  a  [        [        R                  S9e[        U R                  [         R                  S9$ )Nr-   r'   )r   DATADIR_GETr   r2   r3   r   r   r(   )r   	directions     r
   EnumFormatEtcTestDataObject.EnumFormatEtcL   s:    	---x'9'9::t((i.J.JKKr   c                 0    [        [        R                  S9er<   r=   )r   r   flagssinks       r
   DAdviseTestDataObject.DAdviseQ   rA   r   c                 0    [        [        R                  S9er<   r=   )r   
connections     r
   	DUnadviseTestDataObject.DUnadviseT   rA   r   c                 0    [        [        R                  S9er<   r=   r#   s    r
   EnumDAdviseTestDataObject.EnumDAdviseW   rA   r   )r   r   N)__name__
__module____qualname____firstlineno__r   IID_IDataObject_com_interfaces_IDataObject_Methods_public_methods_r    r$   r)   r9   r?   rE   rJ   rN   rS   rX   r\   r_   __static_attributes__ r   r
   r   r      sT    !112*)77:7L
777r   r   c                   >    \ rS rSrS rS rS rS rS rS r	S r
S	rg
)ClipboardTester[   c                 .    [         R                  " 5         g rH   )r   OleInitializer#   s    r
   setUpClipboardTester.setUp\   s    !r   c                 d     [         R                  " 5         g ! [         R                   a     g f = frH   )r   OleFlushClipboard	com_errorr#   s    r
   tearDownClipboardTester.tearDown_   s+    	'')"" 		s    //c                     [        S5      n[        U[        R                  S9n[        R                  " U5        U R                  [        R                  " U5      5        g )N   Hello from Pythonr'   )r   r   r   re   OleSetClipboard
assertTrueOleIsCurrentClipboardr   dos     r
   testIsCurrentClipboard&ClipboardTester.testIsCurrentClipboardf   sD    0129#<#<=!!"%	77;<r   c                    [        S5      n[        U[        R                  S9n[        R                  " U5        [
        R                  " 5         [
        R                  " [        R                  5      nSnU R                  X#5        [
        R                  " [        R                  5      nU R                  US5        [
        R                  " 5         g )Nrx   r'   zHello from Python)r   r   r   re   ry   win32clipboardOpenClipboardGetClipboardDatar   r   assertEqualr   CloseClipboard)r   r}   gotexpecteds       r
   testComToWin32ClipboardTester.testComToWin32l   s    0129#<#<=!!"%$$&--h.>.>?''--h.E.EF12%%'r   c                    Sn[         R                  " 5         [         R                  " [        R                  U5        [         R
                  " 5         [        R                  " 5       n[        R                  S [        R                  S[        R                  4nUR                  U5      nUR                  nU R                  US5        g )Ns   Hello again!r   s   Hello again! )r   r   SetClipboardDatar   r   r   r   OleGetClipboardr   r   r9   datarz   )r   valr}   r   stgr   s         r
   testWin32ToComClipboardTester.testWin32ToCom|   s    $$&''(8(8#>%%'&&(&&##
 jjnhh 	./r   c                     [        S5      n[        U[        R                  S9n[        R                  " U5        U R                  [        S5        S n[        R                  " 5         U R                  [        S5        g )Nrx   r'   r   r   )r   r   r   re   ry   r   r   rs   r|   s     r
   testDataObjectFlush#ClipboardTester.testDataObjectFlush   s^    0129#<#<=!!"%+##%+r   c                     [        S5      n[        U5      n[        R                  " U5        S nU R	                  [
        S5        [        R                  " S 5        U R	                  [
        S5        g )Nrx   r   r   )r   r   r   ry   r   r   r|   s     r
   testDataObjectReset#ClipboardTester.testDataObjectReset   sX    012!!"%+!!$'+r   rj   N)ra   rb   rc   rd   rp   ru   r~   r   r   r   r   ri   rj   r   r
   rl   rl   [   s%    "=( 0,,,r   rl   __main__)utilrH   )unittestr   r   r   r2   win32com.server.exceptionr   win32com.server.utilr   r   splitrg   r   r   r   TestCaserl   ra   win32com.testr   testmainrj   r   r
   <module>r      st         2 .::?%' 
 .A7 A7HH,h'' H,V z"MMO r   