a :jgD2@sddlZddlZddlmZmZmZddZdZdZ ddZ Gd d d Z Gd d d e Z Gd dde Z Gddde ZGdddZGdddeZGdddeZGdddeZGdddeZGdddeZGdddeZGdd d ZGd!d"d"eZGd#d$d$eZGd%d&d&eZGd'd(d(eZGd)d*d*eZGd+d,d,eZGd-d.d.ZGd/d0d0eZGd1d2d2eZGd3d4d4eZ Gd5d6d6eZ!Gd7d8d8eZ"Gd9d:d:eZ#dS);N)assert_ assert_equalassert_array_equalcCst|trR|sd}ntdd|D}|dkr4d}n|dkrBd}nd}|t|St|}|jdurrt||jSt|j|jSdS) NrcSsg|] }t|qS)ord).0crrH/usr/local/lib/python3.9/site-packages/numpy/_core/tests/test_unicode.py z!buffer_length..i) isinstancestrmaxlen memoryviewshapeitemsizenpprod)ZarrZcharmaxsizevrrr buffer_lengths   ruऀu􀤀cCstjddgdd}|d}|d}t||ktjdtdt||ktjdtdt||ktjdtdt||ktjdtdt||dS)N1234z1234Sdtypez>Uzr?r@r)rrrr rAUsrAc@seZdZdZdZdS)TestCreateZeros_2z1Check the creation of zero-valued arrays (size 2)rNrBrrrr rCZsrCc@seZdZdZdZdS)TestCreateZeros_1009z4Check the creation of zero-valued arrays (size 1009)NrBrrrr rD_srDc@s0eZdZdZddZddZddZdd Zd S) CreateValuesz0Check the creation of unicode arrays with valuescCstt|jjdd|jktt||kt||j|jkt|d|j|jdk|jtkrtt|d|jkntt|d|jkdSNrzutf-8r rr(rrr)r ucs_valuer* ucs4_valuer+rrr r/gs  zCreateValues.content_checkcCs8tj|j|jd|jd}|||dd|jdS)Nr1rrrrr rIr)r/r3rrr test_values0D|szCreateValues.test_values0DcCs^tj|j|jgdd|jd}|||dd|jd|||dd|jddS)Nrr1rrrr rKr3rrr test_valuesSDs"zCreateValues.test_valuesSDcCsztj|j|jgdgdgdd|jd}|||dd|jddd|||dd|jddddS)Nrr8rr1rr9r:rKr3rrr test_valuesMDs.$zCreateValues.test_valuesMDNr=r>r?r@r/rLrMrNrrrr rFds rFc@seZdZdZdZeZdS)TestCreateValues_1_UCS2z9Check the creation of valued arrays (size 1, UCS2 values)r Nr=r>r?r@r) ucs2_valuerIrrrr rPsrPc@seZdZdZdZeZdS)TestCreateValues_1_UCS4z9Check the creation of valued arrays (size 1, UCS4 values)r Nr=r>r?r@r)rJrIrrrr rSsrSc@seZdZdZdZeZdS)TestCreateValues_2_UCS2z9Check the creation of valued arrays (size 2, UCS2 values)rNrQrrrr rUsrUc@seZdZdZdZeZdS)TestCreateValues_2_UCS4z9Check the creation of valued arrays (size 2, UCS4 values)rNrTrrrr rVsrVc@seZdZdZdZeZdS)TestCreateValues_1009_UCS2zCheck the assignment of valued arrays (size 1009, UCS2 values)rENrQrrrr r_sr_c@seZdZdZdZeZdS)TestAssignValues_1009_UCS4z>Check the assignment of valued arrays (size 1009, UCS4 values)rENrTrrrr r`sr`c@s8eZdZdZddZddZddZdd Zd d Zd S) ByteorderValuesz?Check the byteorder of unicode arrays in round-trip conversionscCs^tj|j|jd|jd}||j}t|d|dk||j}t||dS)Nr1rr) rr rIr)viewr newbyteorderrrr,r-ua2ua3rrr rLs zByteorderValues.test_values0DcCsttj|j|jgdd|jd}||j}t||kt|d|dk||j}t ||dSNrr1rr; rr rIr)rbrrcrallrrdrrr rMs "zByteorderValues.test_valuesSDcCstj|j|jgdgdgdd|jd}||j}t||kt|d|dk||j}t ||dS)Nrr8rr1rr:rhrdrrr rN&s zByteorderValues.test_valuesMDcCstj|j|jgdd|jd}t|dddd}||fD]R}|j|jd}t||k t|d|dk|j|jd}t ||q@dSrg) rr rIr)repeatr!rrcrrir)r,test1test2r-rerfrrr test_values_cast1s" z ByteorderValues.test_values_castcCstj|j|jgdd|jd}t|dddd}||fD]d}td|jd}|j|d}t||k t|d|dk|j|jd}t ||q@dS)Nrr1rr r;) rr rIr)rjrrcr!rrir)r,rkrlr-Z longer_typererfrrr test_values_updowncast>s"  z&ByteorderValues.test_values_updowncastN) r=r>r?r@rLrMrNrmrnrrrr ra s     rac@seZdZdZdZeZdS)TestByteorder_1_UCS2z4Check the byteorder in unicode (size 1, UCS2 values)r NrQrrrr roOsroc@seZdZdZdZeZdS)TestByteorder_1_UCS4z4Check the byteorder in unicode (size 1, UCS4 values)r NrTrrrr rpUsrpc@seZdZdZdZeZdS)TestByteorder_2_UCS2z4Check the byteorder in unicode (size 2, UCS2 values)rNrQrrrr rq[srqc@seZdZdZdZeZdS)TestByteorder_2_UCS4z4Check the byteorder in unicode (size 2, UCS4 values)rNrTrrrr rrasrrc@seZdZdZdZeZdS)TestByteorder_1009_UCS2z7Check the byteorder in unicode (size 1009, UCS2 values)rENrQrrrr rsgsrsc@seZdZdZdZeZdS)TestByteorder_1009_UCS4z7Check the byteorder in unicode (size 1009, UCS4 values)rENrTrrrr rtmsrt)$ZpytestnumpyrZ numpy.testingrrrrrRrJr$r%rArCrDrFrPrSrUrVrWrXrYr[r\r]r^r_r`rarorprqrrrsrtrrrr s>"* / B