
    ¿ig                         d dl Z d dlmZ d dlT d dlmZ d dlmZm	Z	  G d de j
                  Z G d d	e j
                  Z G d
 de j
                  Zi fdZedk    rd Z e j        d           dS dS )    N)	unhexlify)*)list_test_cases)padunpadc                   8    e Zd Zd Zd Zd Zd Zd Zd Zd Z	dS )	PKCS7_Testsc                    t          t          d          d          }|                     |t          t          d                    k               t          t          d          dd          }|                     |t          t          d                    k               t	          |d          }|                     |t          d          k               d S )N    04040404pkcs7r   b
assertTrueuhr   selfpaddedbacks      a/var/www/html/afkarena/venv/lib/python3.11/site-packages/Cryptodome/SelfTest/Util/test_Padding.pytest1zPKCS7_Tests.test1+   s    QrUUA"Qz]]"3"33444QrUUAw''"Qz]]"3"33444VQ"&&&&&    c                 F   t          t          t          d                    d          }|                     |t          t          d                    k               t	          |d          }|                     |t          t          d                    k               d S )N12345678r   1234567804040404r   r   r   r   r   r   s      r   test2zPKCS7_Tests.test23   s    R*&&**"Q'9%:%:";";;<<<VQ1Z== 1 1122222r   c                 F   t          t          t          d                    d          }|                     |t          t          d                    k               t	          |d          }|                     |t          t          d                    k               d S )N123456r   12345601r   r   s      r   test3zPKCS7_Tests.test39   sz    R(__a(("Qz]]"3"33444VQ1X;;/00000r   c                 F   t          t          t          d                    d          }|                     |t          t          d                    k               t	          |d          }|                     |t          t          d                    k               d S )N
1234567890r   1234567890030303r   r   s      r   test4zPKCS7_Tests.test4?   s    R,((!,,"Q'9%:%:";";;<<<VQ1\?? 3 3344444r   c           	          |                      t          t          t          t	          d                    dd           d S )N12r   pkcs8)assertRaises
ValueErrorr   r   r   r   s    r   testn1zPKCS7_Tests.testn1E   s0    *c2agg;;7CCCCCr   c                     |                      t          t          t          d          d           |                      t          t          t          d          d           d S )Nz   r   r   r*   r+   r   r   r,   s    r   testn2zPKCS7_Tests.testn2H   sH    *eQx[[!<<<*eQrUUA66666r   c                     |                      t          t          t          d          d           |                      t          t          t          d          d           |                      t          t          t          d          d           d S )N123456r   123456 z123456r/   r,   s    r   testn3zPKCS7_Tests.testn3L   sk    *eQ|__a@@@*eQ|__a@@@*eQ/K-L-LaPPPPPr   N)
__name__
__module____qualname__r   r   r"   r&   r-   r0   r4    r   r   r	   r	   )   s        ' ' '3 3 31 1 15 5 5D D D7 7 7Q Q Q Q Qr   r	   c                   ,    e Zd Zd Zd Zd Zd Zd ZdS )
X923_Testsc                    t          t          d          dd          }|                     |t          t          d                    k               t	          |dd          }|                     |t          d          k               d S )Nr   r   x92300000004r   r   s      r   r   zX923_Tests.test1S   sq    QrUUAv&&"Qz]]"3"33444VQ''"&&&&&r   c                 J   t          t          t          d                    dd          }|                     |t          t          d                    k               t	          |dd          }|                     |t          t          d                    k               d S )Nr   r   r<   1234567800000004r   r   s      r   r   zX923_Tests.test2Y   s    R*&&622"Q'9%:%:";";;<<<VQ''1Z== 1 1122222r   c                 J   t          t          t          d                    dd          }|                     |t          t          d                    k               t	          |dd          }|                     |t          t          d                    k               d S )Nr    r   r<   r!   r   r   s      r   r"   zX923_Tests.test3_   s~    R(__a00"Qz]]"3"33444VQ''1X;;/00000r   c                 J   t          t          t          d                    dd          }|                     |t          t          d                    k               t	          |dd          }|                     |t          t          d                    k               d S )Nr$   r   r<   1234567890000003r   r   s      r   r&   zX923_Tests.test4e   s    R,((!V44"Q'9%:%:";";;<<<VQ''1\?? 3 3344444r   c                    |                      t          t          t          d          dd           |                      t          t          t          d          dd           |                      t          t          t          d          dd           |                      t          t          t          d          dd           d S )Nr2   r   r<   r3   z123456    r   r/   r,   s    r   r-   zX923_Tests.testn1k   s    *eQ|__aHHH*eQ|__aHHH*eQ/K-L-LaQWXXX*eQrUUAv>>>>>r   Nr5   r6   r7   r   r   r"   r&   r-   r8   r   r   r:   r:   Q   s_        ' ' '3 3 31 1 15 5 5? ? ? ? ?r   r:   c                   ,    e Zd Zd Zd Zd Zd Zd ZdS )ISO7816_Testsc                    t          t          d          dd          }|                     |t          t          d                    k               t	          |dd          }|                     |t          d          k               d S )Nr   r   iso781680000000r   r   s      r   r   zISO7816_Tests.test1s   sq    QrUUAy))"Qz]]"3"33444VQ	**"&&&&&r   c                 J   t          t          t          d                    dd          }|                     |t          t          d                    k               t	          |dd          }|                     |t          t          d                    k               d S )Nr   r   rH   1234567880000000r   r   s      r   r   zISO7816_Tests.test2y   s    R*&&955"Q'9%:%:";";;<<<VQ	**1Z== 1 1122222r   c                 J   t          t          t          d                    dd          }|                     |t          t          d                    k               t	          |dd          }|                     |t          t          d                    k               d S )Nr    r   rH   12345680r   r   s      r   r"   zISO7816_Tests.test3   s~    R(__a33"Qz]]"3"33444VQ	**1X;;/00000r   c                 J   t          t          t          d                    dd          }|                     |t          t          d                    k               t	          |dd          }|                     |t          t          d                    k               d S )Nr$   r   rH   1234567890800000r   r   s      r   r&   zISO7816_Tests.test4   s    R,((!Y77"Q'9%:%:";";;<<<VQ	**1\?? 3 3344444r   c                     |                      t          t          t          d          dd           |                      t          t          t          d          dd           d S )Nu   123456r   rH   r   r/   r,   s    r   r-   zISO7816_Tests.testn1   sL    *eQ|__aKKK*eQrUUAyAAAAAr   NrD   r8   r   r   rF   rF   q   sd        ' ' '3 3 31 1 15 5 5B B B B Br   rF   c                     g }|t          t                    z  }|t          t                    z  }|t          t                    z  }|S N)r   r	   r:   rF   )configtestss     r   	get_testsrU      sB    E	_[)))E	_Z(((E	_]+++ELr   __main__c                  B    t          j        t                                S rR   )unittest	TestSuiterU   r8   r   r   <lambda>rZ      s    H&y{{33 r   suite)defaultTest)rX   binasciir   r   Cryptodome.Util.py3compatCryptodome.SelfTest.st_commonr   Cryptodome.Util.Paddingr   r   TestCaser	   r:   rF   rU   r5   r[   mainr8   r   r   <module>rc      sC  D  $ $ $ $ $ $ ' ' ' ' 9 9 9 9 9 9 . . . . . . . .&Q &Q &Q &Q &Q(# &Q &Q &QP? ? ? ? ?" ? ? ?@B B B B BH% B B B>      z33EHMg&&&&&& r   