B |D]6}tj||d }t|}t|jtjt|jdq$WqWdS) N)r) r)rrr)rrr)rrr)rrr)rrr)rrrz ?bBhHiIlLqQ)r )remptyrrr rshape)shapesrr!rrrrrtest_packbits_emptys    r#c Csddgfddddgfddddgfddd d gfd d d d gfd d dd gfddddgfddddgfg}xjdD]b}x\|D]T\}}xJt|D]>\}}tj||d}tj||d}t|jtjt|j|qWqpWqfWdS)N)r)rrr)rr)rr)rrr)r$rr)rrr%)rrr)rr$r)rrr%)rrr)r%rr)rrr)rr%r)rrr)rrr%)rrrz ?bBhHiIlLqQ)r )r ) enumeraterr rrr rr!)r"rin_shapeZ out_shapesax out_shaperrrrrtest_packbits_empty_with_axis#s       r*c.s tddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddg,}|d}xdD]}tj||dtjdd}t|jtjddd dd d ddd d d dddddddddd ddd ddddddddd d ddddddd ddddddddddddddd ddddddddddd dd ddddddddddddddd ddddddddddddddd ddddddddddddd dgq}t||tt|dd |fd!d"t dd#D}t|dddd d$dd%d#ddddd&d'd g d(d)tjdd}t|jtjt|d*d+d,d,d-d.d/d0d0d1dd2d3d3d4d4d5d5d6d7d8d9d:d;ddddd1d?d@d@d0d0dAddBdCdDdEdFdGdHdIdJdKd@dLgddMdd>dNd%dOdPdQd-d-d-dRdSdSdTdddUdVdWdXdXdYdZgd[dSdSdDd\d]d]dd=ddMdSdgd,dddSdgd,dd>dDd gd-ddNd\djgd.d1d%d]dgd/d?dOd]dkgd0d@dPddlgd0d@dQd=dlgd1d0d-d[sz'test_packbits_large..$WS(ikKJXHZwmIr-)hzx<4D\Nn'P0r Z bBhHiIlLqQ)ZlowZhighsizer r )rrrepeatrrr rr unpackbitsrangeZreshapeTcopyZrandomZrandintZiinfominmaxrZastyperrr)rr rrZrndr)rrtest_packbits_large8s ,(((((((((((((0  "                                                                      rcCsFx@tddD]2}x,dD]$}tjd|ftd}tj|ddqWq WdS)Niiz ?bBhHiIlLqQ)r r )r )rrZonesboolr)srxrrrtest_packbits_very_larges rcCstjdgdgdggtjd}tj|dd}t|jtjt|tddddddddgddddddddgddddddddggdS)Nr$r.)r r )r r)rrrrrr r)rrrrrtest_unpackbitss rcCs<tjdtjd}t|}t|jtjt|tddS)N)r)r )rr rrrr r)rrrrrtest_unpackbits_emptys rc Csdgdfdddgdfdddgdfdd d gdfd d d gd fd dd gd fdddgdfdddgdfg}x^|D]V\}}xLt|D]@\}}tj|tjd}tj||d}t|jtjt|j|qxWqfWdS)N)r)r$rIr)rGr%r)rGrIr)r$rrI)rGrrI)rGrr%)rrGrI)rr$rI)rrGr%)r%rr)rIrr)rrIr)rr%r)rrrI)rrr%)rrr)r )r )r&rr rrrr r!)r"Z in_shapesr)r(r'rrrrrtest_unpackbits_empty_with_axiss      rc Cstjdtjd}ttt||ttt|ddd|dddt|d}ttjtj|dddd||j}ttjtj|dddd|dS)Ni)r r$)r%r r )r r) rZarangerrrrZtilerr)drrrtest_unpackbits_larges*  r__main__)Z __future__rrrZnumpyrZ numpy.testingrrrrrr#r*rrrrrr__name__rrrrs  !