Your IP : 216.73.216.213
�
�0�iX � �2 � d dl Z d dlmZ d dlmZ ej d� � d dlmZmZmZm Z m
Z
mZmZm
Z
mZmZmZmZmZmZmZmZmZmZ G d� d� � Z edd d
ddd
ddddddd�
�
Z G d� de j � � Zedk r e j � � dS dS )� N)�
import_helper)�warnings_helper� _testcapi)�_test_structmembersType�CHAR_MAX�CHAR_MIN� UCHAR_MAX�SHRT_MAX�SHRT_MIN� USHRT_MAX�INT_MAX�INT_MIN�UINT_MAX�LONG_MAX�LONG_MIN� ULONG_MAX� LLONG_MAX� LLONG_MIN�
ULLONG_MAX�PY_SSIZE_T_MAX�PY_SSIZE_T_MINc � � e Zd Zd� Zd� ZdS )�Indexc � � || _ d S �N��value)�selfr s �H/opt/alt/python311/lib64/python3.11/test/test_capi/test_structmembers.py�__init__zIndex.__init__ s
� ���
�
�
� c � � | j S r r �r s r � __index__zIndex.__index__ s
� ��z�r! N)�__name__�
__module__�__qualname__r r$ � r! r r r s2 � � � � � �� � �� � � � r! r F� � � � � � � � � gr�t���#@g�����3$@�hic � � e Zd Zdd�Zdd�Zd� Zddd�d�Zd� Zd� Zd � Z d
� Z
d� Zd� Z e
j eed
� � d� � d� � � Zd� Zd� ZdS )�ReadWriteTestsNc � � |�|}t t ||� � | � t t |� � |� � d S r )�setattr�ts�assertEqual�getattr�r �namer �expecteds r �_test_writezReadWriteTests._test_write( sE � ����H���D�%� � � ������T�*�*�H�5�5�5�5�5r! c � � | � t t t ||� � |�+| � t t |� � |� � d S d S r )�assertWarns�RuntimeWarningr6 r7 r8 r9 r: s r �
_test_warnzReadWriteTests._test_warn. sR � ������"�d�E�B�B�B������W�R��.�.��9�9�9�9�9� �r! c �V � | � t t t ||� � d S r )�assertRaises�
OverflowErrorr6 r7 )r r; r s r �_test_overflowzReadWriteTests._test_overflow3 s$ � ����-��"�d�E�B�B�B�B�Br! )� hardlimit�
indexlimitc � � |�||f}| � ||� � | � ||� � |\ }}| � ||dz
� � | � ||dz � � | � |ddz � � | � |ddz � � ||k r0| � ||� � | � ||dz
|� � ||k r0| � ||dz |� � | � ||� � |du rl| � t t
t |t |� � � � | � t t
t |t |� � � � d S | � |t |� � |� � | � |t |� � |� � | � |t |dz
� � � � | � |t |dz � � � � | � |t ddz � � � � | � |t ddz � � � � ||k rJ| � |t |� � � � | � |t |dz
� � |� � ||k rL| � |t |dz � � |� � | � |t |� � � � d S d S )Nr) r* i� F)r= rE rA rC � TypeErrorr6 r7 r )r r; �minval�maxvalrF rG �
hardminval�
hardmaxvals r �_test_int_rangezReadWriteTests._test_int_range6 s� � �����(�I�����v�&�&�&�����v�&�&�&�!*��
�J����D�*�Q�,�/�/�/����D�*�Q�,�/�/�/����D�!�T�'�*�*�*����D�1�d�7�(�+�+�+������O�O�D�*�-�-�-��O�O�D�&��(�F�3�3�3��J����O�O�D�&��(�F�3�3�3��O�O�D�*�-�-�-��������i��"�d�E�&�M�M�J�J�J����i��"�d�E�&�M�M�J�J�J�J�J����T�5��=�=�&�9�9�9����T�5��=�=�&�9�9�9�����e�J�q�L�&9�&9�:�:�:�����e�J�q�L�&9�&9�:�:�:�����e�A�t�G�n�n�5�5�5�����e�Q��W�H�o�o�6�6�6��F�"�"�����e�J�&7�&7�8�8�8�����e�F�1�H�o�o�v�>�>�>��
�"�"�����e�F�1�H�o�o�v�>�>�>�����e�J�&7�&7�8�8�8�8�8� #�"r! c � � dt _ | � t j d� � dt _ | � t j d� � | � t t
t dd� � | � t t
t dd� � | � t t
t dd � � d S )NTF�T_BOOLr) r )r7 rP �assertIsrC rI r6 r# s r � test_boolzReadWriteTests.test_boolY s� � ��� ��
�
�b�i��&�&�&��� ��
�
�b�i��'�'�'����)�W�b�(�A�>�>�>����)�W�b�(�A�>�>�>����)�W�b�(�D�A�A�A�A�Ar! c � � | � dt t t t f�� � | � ddt
t t f�� � d S )N�T_BYTE�rF �T_UBYTEr )rN r r r r r r# s r � test_bytezReadWriteTests.test_byteb sb � ����X�x��(0�(�';� � =� =� =����Y��9�(0�(�';� � =� =� =� =� =r! c � � | � dt t t t f�� � | � ddt
t t f�� � d S )N�T_SHORTrU �T_USHORTr )rN r r
r r r r# s r �
test_shortzReadWriteTests.test_shorth sb � ����Y��(�(0�(�';� � =� =� =����Z��I�(0�(�';� � =� =� =� =� =r! c � � | � dt t t t f�� � | � ddt
t t f�� � d S )N�T_INTrU �T_UINTr )rN r r
r r r r r# s r �test_intzReadWriteTests.test_intn sb � ����W�g�w�(0�(�';� � =� =� =����X�q�(�(0�)�'<� � >� >� >� >� >r! c � � | � dt t � � | � ddt t t f�� � d S )N�T_LONG�T_ULONGr rU )rN r r r r# s r � test_longzReadWriteTests.test_longt sO � ����X�x��:�:�:����Y��9�(0�)�'<� � >� >� >� >� >r! c �L � | � dt t d�� � d S )N�
T_PYSSIZETF)rG )rN r r r# s r �test_py_ssize_tzReadWriteTests.test_py_ssize_ty s&