Current File : //usr/local/apps/python3/lib/python3.11/test/__pycache__/test_audioop.cpython-311.opt-1.pyc
�

�KeEq��~�ddlZddlmZddlZejd��Zd�Zd�Zd�dD��Zd�dD��Z	d	�dD��Z
d
edddd
dddd��edddddddd��edddddddd��d�Zgd�ZGd�d ej
��Zed!krej��dSdS)"�N)�warnings_helper�audioopc�F��d��fd�|D����S)N�c3�\�K�|]&}|��tjd���V��'dS)T��signedN)�to_bytes�sys�	byteorder)�.0�v�widths  ��;/usr/local/apps/python3/lib/python3.11/test/test_audioop.py�	<genexpr>zpack.<locals>.<genexpr>	s7�����P�P�a�A�J�J�u�c�m�D�J�A�A�P�P�P�P�P�Pr)�join�r�datas` r�packrs*����8�8�P�P�P�P�4�P�P�P�P�P�Prc�\�����fd�tdt������D��S)Nc�t��g|]4}t��||�z�tjd�����5S)Tr)�int�
from_bytesrr)r
�irrs  ��r�
<listcomp>zunpack.<locals>.<listcomp>sJ���1�1�1��
�N�N�4��1�u�9��-�s�}�T�N�J�J�1�1�1rr)�range�lenrs``r�unpackrsF����1�1�1�1�1��1�c�$�i�i��/�/�1�1�1�1rc��i|]	}||d�d���
S))rc�"�t||��S)N)rrs  r�<lambda>z<dictcomp>.<lambda>s��D���$5�$5�r��r
�ws  r�
<dictcomp>r%s&��M�M�M�1���
5�
5�
5�
5�M�M�Mr�����c�,�i|]}|dd|zdz
zdz
��S)r'�r"r#s  rr%r%s,��=�=�=�1�Q��q�1�u�q�y�!�Q�&�=�=�=rc�&�i|]}|dd|zdz
z��S)���r,r'r"r#s  rr%r%s'��8�8�8�a�Q��q�1�u�q�y�!�8�8�8rsE���r(�4�gEi���������r.r)�V4�gEiw�������r*ixV4i��gEiUv������))�abcr)r9r()sabr))r9r*c���eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Z!d S)!�TestAudioopc
�$�dD�]}|�t�d|��d��|�t�t��|��d��|�t�t	d��|��d��t
|}|�t�|d��|��d��|�t�|ddd��|��d��|�t�|t|��|��t|��|�t�|t|��|��t|��|�t�t||��t|����
dS)Nr&rr����r.r,)	�assertEqualr�max�	bytearray�
memoryview�packs�	maxvalues�	minvalues�datas��selfr$�ps   r�test_maxzTestAudioop.test_max%s����		F�		F�A����W�[�[��a�0�0�!�4�4�4����W�[�[����a�8�8�!�<�<�<����W�[�[��C���!�<�<�a�@�@�@��a��A����W�[�[���1���q�1�1�1�5�5�5����W�[�[���1�b�"���q�9�9�1�=�=�=����W�[�[���9�Q�<���!�<�<�i��l�K�K�K����W�[�[���9�Q�<���!�<�<�y��|�m�L�L�L����W�[�[��q��1�5�5�	�!��}�E�E�E�E�		F�		Frc
�n�dD�]0}|�t�d|��d��|�t�t��|��d��|�t�t	d��|��d��t
|}|�t�|d��|��d��|�t�|ddd��|��d��|�t�|t|��|��t|t|f��|�t�|t|��|��t|t|f��|�t�t||��t|t|f����2dS)	Nr&r)r7r8r=)r=r=r>r.)r>r=)	r?r�minmaxrArBrCrDrErFrGs   r�test_minmaxzTestAudioop.test_minmax1s����	;�	;�A����W�^�^�C��3�3�6�
8�
8�
8����W�^�^�I�K�K��;�;�6�
8�
8�
8����W�^�^�J�s�O�O�Q�?�?�6�
8�
8�
8��a��A����W�^�^�A�A�a�D�D�!�4�4�f�=�=�=����W�^�^�A�A�a��R�L�L�!�<�<�g�F�F�F����W�^�^�A�A�i��l�O�O�Q�?�?�'��l�I�a�L�9�
;�
;�
;����W�^�^�A�A�i��l�O�O�Q�?�?�'��l�I�a�L�9�
;�
;�
;����W�^�^�E�!�H�a�8�8�'��l�I�a�L�9�
;�
;�
;�
;�	;�	;rc
�&�dD�]�}|�t�d|��d��|�t�t��|��d��|�t�t	d��|��d��|�t�t|t
d���|��d��|�t�t|dddddd��|��d��|�t�t||��t|t|z
�����dS)	Nr&rr�d�	�
r=r')
r?r�maxpprArBrCrrFrDrE�rHr$s  r�
test_maxppzTestAudioop.test_maxppCs?���	:�	:�A����W�]�]�3��2�2�A�6�6�6����W�]�]�9�;�;��:�:�A�>�>�>����W�]�]�:�c�?�?�A�>�>��B�B�B����W�]�]�5��8�U�3�Z�Z�+@�!�D�D�a�H�H�H����W�]�]�5��8�A�r�1�a��A�+F�+F��J�J�B�O�O�O����W�]�]�5��8�Q�7�7�&�q�\�I�a�L�8�
:�
:�
:�
:�
	:�	:rc
�B�dD�]}|�t�d|��d��|�t�t��|��d��|�t�t	d��|��d��t
|}|�t�|d��|��d��|�t�|dd��|��d��|�t�|dd��|��d��|�t�|t|t|��|��t|��|�t�|t|t|��|��t|����|�t�td	d
d��d	��d��|�t�td	d
d��d	��d��dS)Nr&rrr=r,�r>���r*iPipi`i�i�i�)r?r�avgrArBrCrDrErGs   r�test_avgzTestAudioop.test_avgMs���	+�	+�A����W�[�[��a�0�0�!�4�4�4����W�[�[����a�8�8�!�<�<�<����W�[�[��C���!�<�<�a�@�@�@��a��A����W�[�[���1���q�1�1�1�5�5�5����g�k�k�!�!�A�q�'�'�1�5�5�q�9�9�9����W�[�[���1�b���1�5�5�r�:�:�:����W�[�[���9�Q�<��1��)F�)F��J�J�&�q�\�
+�
+�
+����W�[�[���9�Q�<��1��)F�)F��J�J�&�q�\�
+�
+�
+�
+�������U�1�X�j�*�%E�%E�q�I�I�#�	%�	%�	%�������U�1�X�k�;�%G�%G��K�K�$�	&�	&�	&�	&�	&rc
�P�dD�]9}|�t�d|��d��|�t�t��|��d��|�t�t	d��|��d��|�t�t|t
d���|��d��|�t�t|dddddd��|��d����;|�t�tdd��d	��|�t�td
d
��d��|�t�tdd��d
��|�t�tdd��d��dS)Nr&rrrOrPrQr=r'��r(if�r)i�g�r*l�	�
)r?r�avgpprArBrCrrFrSs  r�
test_avgppzTestAudioop.test_avgpp_s����	P�	P�A����W�]�]�3��2�2�A�6�6�6����W�]�]�9�;�;��:�:�A�>�>�>����W�]�]�:�c�?�?�A�>�>��B�B�B����W�]�]�5��8�U�3�Z�Z�+@�!�D�D�a�H�H�H����W�]�]�5��8�A�r�1�a��A�+F�+F��J�J�B�O�O�O�O�������u�Q�x��3�3�S�9�9�9�������u�Q�x��3�3�U�;�;�;�������u�Q�x��3�3�X�>�>�>�������u�Q�x��3�3�Z�@�@�@�@�@rc
��dD�]�}|�t�d|��d��|�t�t��|��d��|�t�t	d��|��d��t
|}|�t�|t
d���|��d��|�t�|t|��dz|��t|d���|�t�|t|��dz|��t|d������|�t�tdd��d	��|�t�td
d
��d��|�t�tdd��d
��|�t�tdd��d��dS)Nr&rrrO�9r=r')�delta�Mr(i!Nr)i"Nr*i"N)r?r�rmsrArBrCr�assertAlmostEqualrDrErFrGs   r�test_rmszTestAudioop.test_rmsks����		;�		;�A����W�[�[��a�0�0�!�4�4�4����W�[�[����a�8�8�!�<�<�<����W�[�[��C���!�<�<�a�@�@�@��a��A����W�[�[���E�#�J�J���;�;�R�@�@�@��"�"�7�;�;�q�q��1�����/B�A�#F�#F�#,�Q�<�q�
#�
:�
:�
:��"�"�7�;�;�q�q��1�����/B�A�#F�#F�$-�a�L�=��
#�
;�
;�
;�
;�������U�1�X�q�1�1�2�6�6�6�������U�1�X�q�1�1�5�9�9�9�������U�1�X�q�1�1�7�;�;�;�������U�1�X�q�1�1�:�>�>�>�>�>rc��dD�]�}|�t�d|��d��|�t�t��|��d��|�t�t	d��|��d��t
|}|�t�|ddd��|��d��|�t�|dddd��|��d��|�t�|dd	d
d��|��d��|�t�|dt|��|��d��|�t�|t|t|��|��d�����dS)Nr&rr.rr'r(������rWr)r*)r?r�crossrArBrCrErDrGs   r�
test_crosszTestAudioop.test_cross{s����		Q�		Q�A����W�]�]�3��2�2�B�7�7�7����W�]�]�9�;�;��:�:�B�?�?�?����W�]�]�:�c�?�?�A�>�>��C�C�C��a��A����W�]�]�1�1�Q��1�:�:�q�9�9�1�=�=�=����W�]�]�1�1�Q��2�r�?�?�A�>�>��B�B�B����W�]�]�1�1�R��Q��?�?�A�>�>��B�B�B����W�]�]�1�1�Q�	�!��+=�+=�q�A�A�1�E�E�E����W�]�]�1�1�Y�q�\�9�Q�<�+H�+H�!�L�L�a�P�P�P�P�		Q�		Qrc� �dD�]&}|�t�dd|��d��|�t�t��t��|��d��|�t�t	d��t	d��|��d��|�t�t
|dt
t
|��z|��t
|����(|�t�t
dt
dd��d��|�t�t
dt
dd��tdddd	d
d	d
d����|�t�t
dt
dd��tddd
ddddd����|�t�t
dt
dd��tdddddddd����dS)Nr&r�r'�$���r(r�h$r1r2rWr)�h$r5r6r*��h$r7r8)r?r�addrArBrFrrCrSs  r�test_addzTestAudioop.test_add�s���	'�	'�A����W�[�[��c�1�5�5�s�;�;�;����W�[�[����i�k�k�1�E�E�s�K�K�K����W�[�[��C���*�S�/�/�1�M�M�s�S�S�S����W�[�[��q��5�3�u�Q�x�=�=�3H�!�L�L�"�1�X�
'�
'�
'�
'�������U�1�X�u�Q�x��;�;�8�	:�	:�	:�������U�1�X�u�Q�x��;�;��a���F�F�G�V�W�b�I�I�	K�	K�	K�������U�1�X�u�Q�x��;�;��a���H�h�	���B�0�0�	1�	1�	1�	
������U�1�X�u�Q�x��;�;��a���J�
�K�!�;��4�4�	5�	5�	5�	5�	5rc��dD]�}dD]�}|�t�d||��d��|�t�t��||��d��|�t�t	d��||��d������|�t�t
ddd��d��|�t�t
ddd��d��|�t�t
ddd��d��|�t�t
ddd	��t
d��|�t�t
d
d
d��t
d
dddd
ddd����|�t�t
d
d
d��t
d
ddddddd����|�t�t
d
d
d��t
d
ddddddd����|�t�t
d
d
d	��t
d
��|�t�t
ddd��t
dddddddd����|�t�t
ddd��t
dddddd d!d����|�t�t
ddd��t
dddddd d!d����|�t�t
ddd	��t
d��|�t�t
d"d"d��t
d"dd#d$d%d	d&d����|�t�t
d"d"d��t
d"dd'd(d)d*dd����|�t�t
d"d"d��t
d"dd+d,d-ddd*����|�t�t
d"d"d	��t
d"d	d.d/d0ddd����dS)1Nr&)rr'r.�i����r7r8rr'sF���r.s�D�~�r7r8r(i5ihEi����r2i���ri3ifE阺��i�r1rWr)iW4i�gEix���r6i��iU4i�gE�v���i��r5r*iyV4i��gEiVv��i�iwV4i��gEiTv��i���iwV4�i��g�iTv�:ixV4�i��g�iUv�:)r?r�biasrArBrFrC)rHr$rvs   r�	test_biaszTestAudioop.test_bias�s����	N�	N�A�D�
N�
N��� � ����c�1�d�!;�!;�S�A�A�A�� � ����i�k�k�1�d�!C�!C�S�I�I�I�� � ����j��o�o�q�$�!G�!G��M�M�M�M�
N�	
������e�A�h��1�5�5�8�	:�	:�	:�������e�A�h��2�6�6�8�	:�	:�	:�������e�A�h��:�>�>�8�	:�	:�	:�������e�A�h��;�?�?��q��	#�	#�	#�������e�A�h��1�5�5��a���F�F�G�W�g�q�I�I�	K�	K�	K�������e�A�h��2�6�6��a���V�V�W�f�f�b�I�I�	K�	K�	K�������e�A�h��:�>�>��a���V�V�W�f�f�b�I�I�	K�	K�	K�������e�A�h��;�?�?��a��	�	�	�������e�A�h��1�5�5��a���H�h�	�"�I�q�2�2�	3�	3�	3�	
������e�A�h��2�6�6��a���X�x��!�8�R�1�1�	2�	2�	2�	
������e�A�h��:�>�>��a���X�x��!�8�R�1�1�	2�	2�	2�	
������e�A�h��;�?�?��a��	�	�	�������e�A�h��1�5�5��a���J�
�K�$�k�1�6�6�	7�	7�	7�	
������e�A�h��2�6�6��a���Z��[�#�Z��5�5�	6�	6�	6�	
������e�A�h��:�>�>��a���[�+�z��R��-�-�	.�	.�	.�	
������e�A�h��;�?�?��a���k�;�
��Q�
�,�,�	-�	-�	-�	-�	-rc�2	�dD]�}|�t�t|||��t|��|�t�t	t|��||��t|��|�t�tt|��||��t|����|�t�tddd��t
ddddddd	d
����|�t�tddd��t
dddd
dddd����|�t�tddd��t
dddddddd����|�t�tddd��d��|�t�tddd��t
dddddddd
����|�t�tddd��t
ddddd d!dd����|�t�tddd��d��|�t�tddd��t
ddd"d#d$d%d	d&����|�t�tddd��t
ddd'd(d)d*dd
����|�t�tddd��d��|�t�tddd��t
ddd"d#d$d%d	d&����|�t�tddd��t
ddd+d,d-d.dd&����dS)/Nr&r'r(riiEi���ir2i���r)iiEi��ir6i��r*iiEi�ir8i�sE���i4igEi���i�i4igEi��i�r/r0rtr1r.iV4i�gEiw��i��r3r4rur5)r?r�lin2linrFrArBrCrSs  r�test_lin2linzTestAudioop.test_lin2lin�s���	'�	'�A����W�_�_�U�1�X�q�!�<�<�e�A�h�G�G�G����W�_�_�Y�u�Q�x�-@�-@�!�Q�G�G�"�1�X�
'�
'�
'����W�_�_�Z��a��-A�-A�1�a�H�H�"�1�X�
'�
'�
'�
'�	
�������q��1�a�8�8��!�H�Q������&�I�I�	K�	K�	K��������q��1�a�8�8��!�H�Q��(�I��y�(�
4�
4�	5�	5�	5�	
�������q��1�a�8�8��!�H�Q�
�J����j�
:�
:�	;�	;�	;�	
�������q��1�a�8�8�+�	-�	-�	-��������q��1�a�8�8��!�H�Q��(�I��y�&�
2�
2�	3�	3�	3�	
�������q��1�a�8�8��!�H�Q�
�J����h�
8�
8�	9�	9�	9�	
�������q��1�a�8�8�+�	-�	-�	-��������q��1�a�8�8��!�H�Q������"�E�E�	G�	G�	G��������q��1�a�8�8��!�H�Q�
�J����f�
6�
6�	7�	7�	7�	
�������q��1�a�8�8�+�	-�	-�	-��������q��1�a�8�8��!�H�Q������"�E�E�	G�	G�	G��������q��1�a�8�8��!�H�Q��(�I��y�"�
.�
.�	/�	/�	/�	/�	/rc��|�t�ddd��d��|�t�td��dd��d��|�t�t	d��dd��d��|�t�ddd��tdddddd	d
��df��|�t�ddd��tddd
dddd��df��|�t�ddd��tddddddd��df��dD]:}|�t�d|d��d|zdzdf���;dS)N�r')s����M����(r(r��)i���rr~r}r)ii)i�iriM��r*ii)i�iriM�r&�rkrQ�rr)r?r�	adpcm2linrArBrCrSs  r�test_adpcm2linzTestAudioop.test_adpcm2lin�s�������*�*�?�A�t�D�D�B�	D�	D�	D�����*�*�9�_�+E�+E�q�$�O�O�B�	D�	D�	D�����*�*�:�o�+F�+F��4�P�P�B�	D�	D�	D�����*�*�?�A�t�D�D���(�1�c�4���e�D�D�j�Q�	S�	S�	S�����*�*�?�A�t�D�D���(�1�e�V�W�f�#*�,�,�-7�9�	:�	:�	:�	
����*�*�?�A�t�D�D���(�1�g�x��H�#,�.�.�/9�;�	<�	<�	<�
�	7�	7�A����W�.�.�y�!�T�B�B�#�a�i�"�n�f�5�
7�
7�
7�
7�	7�	7rc��|�t�tddd��d��|�t�t	td��dd��d��|�t�ttd��dd��d��dD]=}|�t�t||d��d���>dD]8}|�t�d|zdz|d��d���9dS)	Nr')r|)i#����'�r(r)r*)r|)�r�r&rkrQ)r�r�)r?r�	lin2adpcmrFrArBrSs  r�test_lin2adpcmzTestAudioop.test_lin2adpcmsI������*�*�5��8�Q��=�=�6�	8�	8�	8�����*�*�9�U�1�X�+>�+>��4�H�H�6�	8�	8�	8�����*�*�:�e�A�h�+?�+?��D�I�I�6�	8�	8�	8��	:�	:�A����W�.�.�u�Q�x��D�A�A�8�
:�
:�
:�
:��	2�	2�A����W�.�.�u�q�y�2�~�q�$�G�G�0�
2�
2�
2�
2�	2�	2rc�&�|�ttjddd��|�ttjddd��|�t
tjddd��|�t
tjddd��|�t
tjddd��|�t
tjddd��|�t
tjddd��|�t
tjddd��|�t
tjddd��|�t
tjddd��dS)Nrkr'i+)rr.)r�Y)i���r)i�r)�assertRaises�	TypeErrorrr�r��
ValueError�rHs r�test_invalid_adpcm_statez$TestAudioop.test_invalid_adpcm_states>�����)�W�%6��q�#�F�F�F����)�W�%6��q�#�F�F�F����*�g�&7���7�K�K�K����*�g�&7���7�K�K�K����*�g�&7���7�K�K�K����*�g�&7���7�K�K�K����*�g�&7���<�P�P�P����*�g�&7���;�O�O�O����*�g�&7���<�P�P�P����*�g�&7���;�O�O�O�O�Orc��|�t�tdd��d��|�t�t	td��d��d��|�t�ttd��d��d��dD]<}|�t�t||��d���=dS)Nr'sՇ�$�*Zr�sՇ�$�*U)r?r�lin2alawrFrArBrSs  r�
test_lin2alawzTestAudioop.test_lin2alaw"��������)�)�%��(�A�6�6�8�	:�	:�	:�����)�)�)�E�!�H�*=�*=�q�A�A�8�	:�	:�	:�����)�)�*�U�1�X�*>�*>��B�B�8�	:�	:�	:��	>�	>�A����W�-�-�e�A�h��:�:�<�
>�
>�
>�
>�	>�	>rc�x��d}gd�}dD]Ċt��fd�|D���}|�t�|���|��|�t�t	|�����|��|�t�t|�����|����t
td����}dD]L�t�|���}|�t�|���|���MdS)Ns$*QTUXkq����������)iP���i0���i@���i@�i����rfr.i��i���i����i����i�i�i�i�rPr)r'����R�jr&c3�.�K�|]}|�dzzdz	V��dS)r,�
Nr"�r
�xr$s  �rrz,TestAudioop.test_alaw2lin.<locals>.<genexpr>3�0����� A� A���q�1�u���!3� A� A� A� A� A� Ar�r�)	rCr?r�alaw2linrArB�bytesrr��rH�encoded�src�decodedr$s    @r�
test_alaw2linzTestAudioop.test_alaw2lin-sF���B��@�@�@���	P�	P�A��A�h� A� A� A� A�S� A� A� A�B�G����W�-�-�g�q�9�9�7�C�C�C����W�-�-�i��.@�.@�!�D�D�g�N�N�N����W�-�-�j��.A�.A�1�E�E�w�O�O�O�O���c�
�
�#�#���	D�	D�A��&�&�w��2�2�G����W�-�-�g�q�9�9�7�C�C�C�C�	D�	Drc��|�t�tdd��d��|�t�t	td��d��d��|�t�ttd��d��d��dD]<}|�t�t||��d���=dS)Nr's����gr�s����~)r?r�lin2ulawrFrArBrSs  r�
test_lin2ulawzTestAudioop.test_lin2ulaw=r�rc���d}gd�}dD]Ċt��fd�|D���}|�t�|���|��|�t�t	|�����|��|�t�t|�����|����t
td����t
tdd����z}dD]L�t�|���}|�t�|���|���MdS)	Ns(?Wjv|~��������)i��i��iA���i���i]���i���i��i����rWri_i_i�i���5�rVr(rr&c3�.�K�|]}|�dzzdz	V��dS)r,�Nr"r�s  �rrz,TestAudioop.test_ulaw2lin.<locals>.<genexpr>Nr�rrs�r�r�)	rCr?r�ulaw2linrArBr�rr�r�s    @r�
test_ulaw2linzTestAudioop.test_ulaw2linHsY���>��<�<�<���	P�	P�A��A�h� A� A� A� A�S� A� A� A�B�G����W�-�-�g�q�9�9�7�C�C�C����W�-�-�i��.@�.@�!�D�D�g�N�N�N����W�-�-�j��.A�.A�1�E�E�w�O�O�O�O���c�
�
�#�#�e�E�#�s�O�O�&<�&<�<���	D�	D�A��&�&�w��2�2�G����W�-�-�g�q�9�9�7�C�C�C�C�	D�	Drc��dD�]H}|�t�d|d��d��|�t�t��|d��d��|�t�t	d��|d��d��|�t�t
||d��dt
t
|��z��|�t�t
||d��t
|����J|�t�t
ddd��d��|�t�t
ddd��tdddd	d
d	d
d����|�t�t
ddd��tddd
ddddd����|�t�t
ddd��tdddddddd����dS)Nr&rr(rrkr'rlrmr1r2rWr)rnr5r6r*ror7r8)r?r�mulrArBrFrrCrSs  r�test_mulzTestAudioop.test_mulYs,���	'�	'�A����W�[�[��a��3�3�S�9�9�9����W�[�[����a��;�;�S�A�A�A����W�[�[��C���!�Q�?�?��E�E�E����W�[�[��q��1�a�8�8�"�S��q��]�]�2�
4�
4�
4����W�[�[��q��1�a�8�8�"�1�X�
'�
'�
'�
'�������U�1�X�q�!�4�4�8�	:�	:�	:�������U�1�X�q�!�4�4��a���F�F�G�V�W�b�I�I�	K�	K�	K�������U�1�X�q�!�4�4��a���H�h�	�!�9�b�2�2�	3�	3�	3�	
������U�1�X�q�!�4�4��a���J�
�K�#�[�"�6�6�	7�	7�	7�	7�	7rc
��dD�]�}|�t�d|dddd��d��|�t�t��|dddd��d��|�t�t	d��|dddd��d��|�t�d|dddd��d��|�t�d|dddd��d	��|�t�t
||dddd��d
t
|��|�t�t
||dddddd
��d
t
|�����d}t�ddddd|��\}}t�ddddd|��\}}|�||zd��dD]�}t�t
||dddd��\}}d
\}}t
d
tt
|��|��D]?}t�t
||||z�|ddd|��\}}||z
}�@|�||��|�||����tdd
dddddd��tdd
dddddd��tdd
ddddd d!��td"d
d#d$d%d&d'd(��d�}	dD]�}|�t�t
||dddddd��d
|	|��|�t�t
||ddddd)d*��d
|	|����|�	ttjdddddd+��|�	ttjdddddd,��dS)-Nr&rr'i@)r)r.�r�r=)r)r.)r�r�r�r�r�i�>)r)rWr�rss)rNr��7i����Ui����i��r(i�
iw7i���isVi����if�r)i@�
ivw7i6��itVi���i@g�r*i�@�
ivww7i�6��i�
tVij��i�@g��rQ�*)r')r�)r?r�ratecvrArBrFrrrCr�r�)
rHr$�state�d1�d2�d0�state0�dr�expecteds
          r�test_ratecvzTestAudioop.test_ratecvmsU���	'�	'�A����W�^�^�C��A�t�T�4�H�H�3�
5�
5�
5����W�^�^�I�K�K��A�t�T�4�P�P�3�
5�
5�
5����W�^�^�J�s�O�O�Q��4��t�T�T�3�
5�
5�
5����W�^�^�C��A�t�T�4�H�H�7�
9�
9�
9����W�^�^�C��A�t�U�D�I�I�3�
5�
5�
5����W�^�^�E�!�H�a��D�$��M�M�a�P�"�1�X�
'�
'�
'����W�^�^�E�!�H�a��D�$��a�QR�S�S�TU�V�"�1�X�
'�
'�
'�
'����N�N�?�A�q�$��u�M�M�	��E��N�N�?�A�q�$��u�M�M�	��E�����b��"Q�R�R�R��	,�	,�A� ����a��!�Q��e�T�J�J�J�B�� �H�A�u��1�c�%��(�m�m�Q�/�/�
�
��#�N�N�5��8�A�a�!�e�G�+<�a��+/���?�?�	��E��R�������Q��#�#�#����U�F�+�+�+�+��Q�x��4��u�d�E�5�A�A��Q�x��6�6�7�F�G�W�M�M��Q�x��8�X�y� �)�Y�8�8��Q�x��:�z�;�"�K��>�>�
�
���	*�	*�A����W�^�^�E�!�H�a��D�$��a�QR�S�S�TU�V�%�a�[�
*�
*�
*����W�^�^�E�!�H�a��D�$��b�RT�U�U�VW�X�%�a�[�
*�
*�
*�
*�	
���)�W�^�S�!�Q��d�B�O�O�O����)�W�^��q�!�T�4��	=�	=�	=�	=�	=rc
��dD�]}|�t�d|��d��|�t�t��|��d��|�t�t	d��|��d��|�t�t|ddd��|��t|ddd������dS)Nr&rrr'r()r?r�reverserArBrCrSs  r�test_reversezTestAudioop.test_reverse�s����	0�	0�A����W�_�_�S�!�4�4�c�:�:�:����W�_�_�Y�[�[�!�<�<�c�B�B�B����W�_�_�Z��_�_�a�@�@�#�F�F�F����W�_�_�U�1�X�a��A�->�->��B�B�"�1�X�a��A�.�.�
0�
0�
0�
0�		0�	0rc	�H�dD�]�}t|}tdt|��z��}t|��D]}||d|�||dd|z�<�|�t
�||dd��|��|�t
�||dd��dt|��z��t|��D]}||d|�|||zdd|z�<�|�t
�||dd��|��|�t
�t|��|dd��|��|�t
�t|��|dd��|�����dS)Nr&r(r'rrk��?)rFrArrr?r�tomonorB�rHr$�data1�data2�ks     r�test_tomonozTestAudioop.test_tomono�s����
	$�
	$�A��!�H�E��a�#�e�*�*�n�-�-�E��1�X�X�
,�
,�� %�a�d��d���a�f��1��f�
�
����W�^�^�E�1�a��;�;�U�C�C�C����W�^�^�E�1�a��;�;�U�S��Z�Z�=O�P�P�P��1�X�X�
.�
.��"'���1��+��a��c�h�1�Q�3�h������W�^�^�E�1�c�3�?�?��G�G�G����W�^�^�I�e�,<�,<�a��c�J�J�"�
$�
$�
$����W�^�^�J�u�,=�,=�q�#�s�K�K�"�
$�
$�
$�
$�
	$�
	$rc	�H�dD�]�}t|}tdt|��z��}t|��D]}||d|�||dd|z�<�|�t
�||dd��|��|�t
�||dd��dt|��z��t|��D]}||d|�|||zdd|z�<�|�t
�||dd��|��|�t
�t|��|dd��|��|�t
�t|��|dd��|�����dS)Nr&r(r'rrk)rFrArrr?r�tostereorBr�s     r�
test_tostereozTestAudioop.test_tostereo�s����	$�	$�A��!�H�E��a�#�e�*�*�n�-�-�E��1�X�X�
,�
,�� %�a�d��d���a�f��1��f�
�
����W�-�-�e�Q��1�=�=�u�E�E�E����W�-�-�e�Q��1�=�=�u�s�5�z�z�?Q�R�R�R��1�X�X�
.�
.��"'���1��+��a��c�h�1�Q�3�h������W�-�-�e�Q��1�=�=�u�E�E�E����W�-�-�i��.>�.>��1�a�H�H�%�P�P�P����W�-�-�j��.?�.?��A�q�I�I�"�
$�
$�
$�
$�	$�	$rc	��|�t�tdtd��d��|�t�t	td��t	td����d��|�t�ttd��ttd����d��|�t�dt
td��ztd��d��dS)Nr(��?rkg)r?r�
findfactorrFrArBrr�s r�test_findfactorzTestAudioop.test_findfactor�s������+�+�E�!�H�e�A�h�?�?��E�E�E�����+�+�I�e�A�h�,?�,?�,5�e�A�h�,?�,?�A�A�BE�	G�	G�	G�����+�+�J�u�Q�x�,@�,@�,6�u�Q�x�,@�,@�B�B�CF�	H�	H�	H�����+�+�E�C��a��M�M�,A�5��8�L�L��	�	�	�	�	rc
�f�|�t�tdtd��d��|�t�t	td��t	td����d��|�t�ttd��ttd����d��|�t�tdt
dddd����d��|�t�tddd�dztdztd��d��dS)	Nr()rr�r'r)r'g�����f�@rWr=)r�r�)r?r�findfitrFrArBrCr�s r�test_findfitzTestAudioop.test_findfit�sV���������q��5��8�<�<�h�G�G�G��������5��8�)<�)<�)2�5��8�)<�)<�>�>�?G�	I�	I�	I��������E�!�H�)=�)=�)3�E�!�H�)=�)=�?�?�@H�	J�	J�	J��������q��5��8�A�q�!�3D�3D�E�E�$�	&�	&�	&��������q��#�2�#���):�U�1�X�)E�u�Q�x�P�P�"�	$�	$�	$�	$�	$rc��|�t�tdd��d��|�t�t	td��d��d��|�t�ttd��d��d��dS)Nr(r'r=)r?r�findmaxrFrArBr�s r�test_findmaxzTestAudioop.test_findmax�s����������q��1�5�5�q�9�9�9��������5��8�)<�)<�a�@�@�!�D�D�D��������E�!�H�)=�)=�q�A�A�1�E�E�E�E�Erc	�r�dD�]�}t|dddt|t|��}|�t�||d��d��|�t�t
|��|d��d��|�t�t|��|d��d��|�t�||d��d��|�t�||d��d��|�t�||d��t|��|�t�||d��t|�����dS)Nr&rr'r.r(r)r*)rCrDrEr?r�	getsamplerArB)rHr$rs   r�test_getsamplezTestAudioop.test_getsample�sq���	J�	J�A���8�A�q�"�i��l�I�a�L�A�A�D����W�.�.�t�Q��:�:�A�>�>�>����W�.�.�y�����1�E�E�q�I�I�I����W�.�.�z�$�/?�/?��A�F�F��J�J�J����W�.�.�t�Q��:�:�A�>�>�>����W�.�.�t�Q��:�:�B�?�?�?����W�.�.�t�Q��:�:�I�a�L�I�I�I����W�.�.�t�Q��:�:�I�a�L�I�I�I�I�	J�	Jrc�`�tdtdddddddd	��td
dddd
ddd	��tdddddddd	��d�}dD�]L}|�t�d|��d��|�t�t||��||��|�t�|||��t|��|�t�tt|��|��||��|�t�t
t|��|��||����NdS)Nr'r(ri4iEgi����i���r�r.r)i4ViEg��i��wr*i4VxiEg��i��vUr&r)rFrCr?r�byteswaprArB)rH�
swapped_datasr$s   r�
test_byteswapzTestAudioop.test_byteswap�s����Q�x��Q�x��6�6�7�E�4��D�D��Q�x��8�Y��%��r�J�J��Q�x��:�{�J��t�R�)�)�	
�
�
��	/�	/�A����W�-�-�c�1�5�5�s�;�;�;����W�-�-�e�A�h��:�:�M�!�<L�M�M�M����W�-�-�m�A�.>��B�B�E�!�H�M�M�M����W�-�-�i��a��.A�.A�1�E�E�*�1�-�
/�
/�
/����W�-�-�j��q��.B�.B�A�F�F�*�1�-�
/�
/�
/�
/�
	/�	/rc	��|�tjtjt	td����d��dS)Nr�i�~�)r�r�errorr�r�rr�s r�test_negativelenzTestAudioop.test_negativelen�s?�����'�-��O�U�5��:�:�.�.��	:�	:�	:�	:�	:rc���d}tD�]Z\}}|}|�tjtj||d��|�tjtj||��|�tjtj||��|�tjtj||��|�tjtj||��|�tjtj	||��|�tjtj
||��|�tjtj||��|�tjtj||d��|�tjtj
||dd��|�tjtj||dd��|�tjtj|||��|�tjtj||d��|�tjtj||��|�tjtj|||��|�tjtj||ddd|��|�tjtj||��|�tjtj||��|�tjtj|||����\dS)Nrr�r�r')�INVALID_DATAr�rr�r�r@rLrXrbr\rRrhr�r�r�rprvr�ryr�r�r�r�)rHr�r�size�size2s     r�test_issue7673zTestAudioop.test_issue7673s�����&�	S�	S�J�D�$��E����g�m�W�->��d�A�N�N�N����g�m�W�[�$��E�E�E����g�m�W�^�T�4�H�H�H����g�m�W�[�$��E�E�E����g�m�W�[�$��E�E�E����g�m�W�]�D�$�G�G�G����g�m�W�]�D�$�G�G�G����g�m�W�]�D�$�G�G�G����g�m�W�[�$��c�J�J�J����g�m�W�^�T�4��c�R�R�R����g�m�W�-=�t�T�3�PS�T�T�T����g�m�W�[�$��d�K�K�K����g�m�W�\�4��q�I�I�I����g�m�W�_�d�D�I�I�I����g�m�W�_�d�D�%�P�P�P����g�m�W�^�T�4��A�q�RW�X�X�X����g�m�W�-=�t�T�J�J�J����g�m�W�-=�t�T�J�J�J����g�m�W�->��d�E�R�R�R�R�)	S�	Src
���d}d}|�ttj||d��|�ttj||��|�ttj||��|�ttj||��|�ttj||��|�ttj||��|�ttj	||��|�ttj
||��|�ttj||d��|�ttj||dd��|�ttj
||dd��|�ttj|||��|�ttj||d��|�ttj||��|�ttj|||��|�ttj||dddd��|�ttj||��|�ttj||��|�ttj||d��dS)N�abcdr(rr�r�r')r�r�rr�r@rLrXrbr\rRrhr�r�r�rprvr�ryr�r�r�r�)rHrr�s   r�test_stringzTestAudioop.test_stringsG���������)�W�%6��d�A�F�F�F����)�W�[�$��=�=�=����)�W�^�T�4�@�@�@����)�W�[�$��=�=�=����)�W�[�$��=�=�=����)�W�]�D�$�?�?�?����)�W�]�D�$�?�?�?����)�W�]�D�$�?�?�?����)�W�[�$��c�B�B�B����)�W�^�T�4��c�J�J�J����)�W�%5�t�T�3��L�L�L����)�W�[�$��d�C�C�C����)�W�\�4��q�A�A�A����)�W�_�d�D�A�A�A����)�W�_�d�D�$�G�G�G����)�W�^�T�4��A�q�$�O�O�O����)�W�%5�t�T�B�B�B����)�W�%5�t�T�B�B�B����)�W�%6��d�D�I�I�I�I�Irc�"�d}d}dD]�}|�tjtj||��|�tjtj||��|�tjtj|||����dS)Nsabcdefgh)r.rr=i)r�rr�r�r�r�)rHrr�r�s    r�test_wrongsizezTestAudioop.test_wrongsize/s�������$�	S�	S�D����g�m�W�-=�t�T�J�J�J����g�m�W�-=�t�T�J�J�J����g�m�W�->��d�E�R�R�R�R�	S�	SrN)"�__name__�
__module__�__qualname__rJrMrTrYr]rdrirqrwrzr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r"rrr;r;#s������
F�
F�
F�;�;�;�$:�:�:�&�&�&�$
A�
A�
A�?�?�?� 
Q�
Q�
Q�5�5�5�$,-�,-�,-�\%/�%/�%/�N7�7�7�*2�2�2� 
P�
P�
P�	>�	>�	>�D�D�D� 	>�	>�	>�D�D�D�"7�7�7�(0=�0=�0=�d0�0�0�$�$�$� 
$�
$�
$����	$�	$�	$�F�F�F�
	J�	J�	J�/�/�/�":�:�:�
S�S�S�0J�J�J�.S�S�S�S�Srr;�__main__)r�test.supportr�unittest�import_deprecatedrrrrCrDrErFr��TestCaser;r��mainr"rr�<module>r�sz��
�
�
�
�(�(�(�(�(�(�����
+�/�
+�I�
6�
6��Q�Q�Q�1�1�1�	N�M��M�M�M��=�=��=�=�=�	�8�8�<�8�8�8�	�'��u�Q�x��6�6�7�F�G�R�@�@��u�Q�x��8�X�y�(�I�r�J�J��u�Q�x��:�z�;��K��-�-�		�	������RS�RS�RS�RS�RS�(�#�RS�RS�RS�h�z����H�M�O�O�O�O�O��r