o
    `qi                     @   s   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 de j
ZG dd	 d	e j
ZG d
d de j
Zi fddZedkrMdd Ze jdd dS dS )    N)	unhexlify)*)list_test_cases)padunpadc                   @   sD   e Zd Zdd Zdd Zdd Zdd Zd	d
 Zdd Zdd Z	dS )PKCS7_Testsc                 C   sj   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    Z04040404Zpkcs7r   b
assertTrueuhr   selfpaddedback r   h/home/app/PaddleOCR-VL/.venv_paddleocr/lib/python3.10/site-packages/Crypto/SelfTest/Util/test_Padding.pytest1+   s   
zPKCS7_Tests.test1c                 C   L   t ttdd}| |ttdk t|d}| |ttdk d S )N12345678r	   Z1234567804040404r   r   r   r   r   r   r   r   r   test23      
zPKCS7_Tests.test2c                 C   r   )N123456r	   12345601r   r   r   r   r   test39   r   zPKCS7_Tests.test3c                 C   r   )N
1234567890r	   Z1234567890030303r   r   r   r   r   test4?   r   zPKCS7_Tests.test4c                 C   s   |  ttttddd d S )NZ12r	   Zpkcs8)assertRaises
ValueErrorr   r   r   r   r   r   r   testn1E   s   zPKCS7_Tests.testn1c                 C   s,   |  tttdd |  tttdd d S )Nz   r	   r   r   r    r   r   r!   r   r   r   testn2H   s   zPKCS7_Tests.testn2c                 C   s@   |  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!   r   r   r   testn3L   s   zPKCS7_Tests.testn3N)
__name__
__module____qualname__r   r   r   r   r"   r$   r'   r   r   r   r   r   )   s    r   c                   @   4   e Zd Zdd Zdd Zdd Zdd Zd	d
 ZdS )
X923_Testsc                 C   H   t tddd}| |ttdk t|dd}| |tdk d S )Nr   r	   x923Z00000004r
   r   r   r   r   r   S      zX923_Tests.test1c                 C   P   t ttddd}| |ttdk t|dd}| |ttdk d S )Nr   r	   r.   Z1234567800000004r   r   r   r   r   r   Y      zX923_Tests.test2c                 C   r0   )Nr   r	   r.   r   r   r   r   r   r   r   _   r1   zX923_Tests.test3c                 C   r0   )Nr   r	   r.   Z1234567890000003r   r   r   r   r   r   e   r1   zX923_Tests.test4c                 C   s\   |  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 )Nr%   r	   r.   r&   z123456    r   r#   r!   r   r   r   r"   k   s   zX923_Tests.testn1Nr(   r)   r*   r   r   r   r   r"   r   r   r   r   r,   Q       r,   c                   @   r+   )ISO7816_Testsc                 C   r-   )Nr   r	   iso7816Z80000000r
   r   r   r   r   r   s   r/   zISO7816_Tests.test1c                 C   r0   )Nr   r	   r5   Z1234567880000000r   r   r   r   r   r   y   r1   zISO7816_Tests.test2c                 C   r0   )Nr   r	   r5   Z12345680r   r   r   r   r   r      r1   zISO7816_Tests.test3c                 C   r0   )Nr   r	   r5   Z1234567890800000r   r   r   r   r   r      r1   zISO7816_Tests.test4c                 C   s0   |  tttddd |  tttddd d S )Nu   123456r	   r5   r   r#   r!   r   r   r   r"      s   zISO7816_Tests.testn1Nr2   r   r   r   r   r4   q   r3   r4   c                 C   s,   g }|t t7 }|t t7 }|t t7 }|S N)r   r   r,   r4   )configtestsr   r   r   	get_tests   s
   r9   __main__c                   C   s   t t S r6   )unittestZ	TestSuiter9   r   r   r   r   <lambda>   s    r<   suite)ZdefaultTest)r;   binasciir   r   ZCrypto.Util.py3compatZCrypto.SelfTest.st_commonr   ZCrypto.Util.Paddingr   r   ZTestCaser   r,   r4   r9   r(   r=   mainr   r   r   r   <module>   s   !( 