U
    :vf  ã                   @   sF   d dl Z e  d¡Zd dlZdd„ Zdd„ Zdd„ Zd	d
„ Zdd„ Z	dS )é    NZnumpyc                     s¦   t  ¡ ‰ ˆ jddddd ˆ jddddd ˆ jdddd ˆ jdddd ‡ fdd„} ‡ fd	d
„}t jˆ || d}tj |d t dgg¡¡ |d dgks¢t‚d S )Nr   é   é   ©Ú	thicknessÚweighté   ©r   c                    s   ˆ j |   dd¡d S )NÚsizeç      à?r   )ZnodesÚget)Úu©ÚG© úI/tmp/pip-unpacked-wheel-_lngutwb/networkx/linalg/tests/test_attrmatrix.pyÚ	node_attr   s    z#test_attr_matrix.<locals>.node_attrc                    s   ˆ |  |   dd¡S )Nr   r
   )r   )r   Úvr   r   r   Ú	edge_attr   s    z#test_attr_matrix.<locals>.edge_attr)r   r   g      @g      ø?)	ÚnxÚGraphÚadd_edgeÚattr_matrixÚnpÚtestingÚassert_equalÚarrayÚAssertionError)r   r   ÚMr   r   r   Útest_attr_matrix   s    r   c                  C   sš   t  ¡ } | jddddd | jddddd | jdddd | jdddd t j| dddgd}t dd	d	gddd	gdddgg¡}tj |t |¡¡ d S )
Nr   r   r   r   r   r   ©Úrc_orderç        ç      ð?)r   ÚDiGraphr   r   r   r   r   r   ©r   r   Údatar   r   r   Útest_attr_matrix_directed   s    þÿr&   c                  C   sD  t  ¡ } | jddddd | jddddd | jddddd | jdddd | jdddd t j| dddgd}t dd	d
gd	dd
gd
d
dgg¡}tj |t |¡¡ t j| ddddgd}t ddd
gddd
gd
d
dgg¡}tj |t |¡¡ t j| ddddgd}t dd	dgd	dd	gdd	dgg¡}tj |t |¡¡ d S )Nr   r   r   r   r   r   r   r!   g      @r"   r   )r   r    g      "@r   g       @)r   Z
MultiGraphr   r   r   r   r   r   r$   r   r   r   Útest_attr_matrix_multigraph+   s<    þÿþÿþÿr'   c                  C   s    t  d¡ t ¡ } | jddddd | jdddd | jdddd t | ¡}|d }t dt¡}t 	|d¡ tj
 | ¡ t |¡¡ |d dddgksœt‚d S )	NÚscipyr   r   r   r   r   r   )r   r   )ÚpytestÚimportorskipr   r   r   Úattr_sparse_matrixr   ZonesÚfloatZfill_diagonalr   r   Útodenser   r   )r   r   Zmtxr%   r   r   r   Útest_attr_sparse_matrixO   s    

r.   c                  C   s¨   t  d¡ t ¡ } | jddddd | jddddd | jdddd | jdddd tj| dddgd}t d	d
d
gd	d	d
gd	d	d	gg¡}tj 	| 
¡ t |¡¡ d S )Nr(   r   r   r   r   r   r   r   r!   r"   )r)   r*   r   r#   r   r+   r   r   r   r   r-   r$   r   r   r   Ú test_attr_sparse_matrix_directed]   s    
þÿr/   )
r)   r*   r   Znetworkxr   r   r&   r'   r.   r/   r   r   r   r   Ú<module>   s   
$