ó
 ,µ[c           @   s˜   d  d l  Z  d  d l Td  d l Z d  d l Td e f d „  ƒ  YZ d f  d „  ƒ  YZ d „  Z d „  Z	 d	 „  Z
 d
 „  Z d „  Z d „  Z d „  Z d S(   iÿÿÿÿN(   t   *t   TestFunctionc           B   sû   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z	 d „  Z
 d	 „  Z d
 „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z RS(   c         C   s`  t  j i d d d g d 6d d d g d 6g  d 6d d ƒ|  _ i d d 6d d 6d d 6d d 6d d 6|  _ t t d ƒ ƒ |  _ d	 d
 d d d d g |  _ t  j i d d d g d 6d d d g d 6g  d 6ƒ |  _	 i d d 6d d 6d d 6d d 6d d 6|  _
 i d d 6d d 6d d 6d d 6d d 6|  _ t t d ƒ ƒ |  _ d d d d d d g |  _ d  S(   Ni   i   i   i    i   t   namet   Testi   (   i    i   (   i    i   (   i    i   (   i   i    (   i   i   (   i   i   (   i    i   (   i    i   (   i    i   (   i   i    (   i   i   (   i   i   (   t   nxt   Grapht   Gt   Gdegreet   listt   ranget   Gnodest   Gedgest   DiGrapht   DGt   DGin_degreet   DGout_degreet   DGnodest   DGedges(   t   self(    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   setUp	   s    ?,9,,c         C   sT   t  |  j j ƒ  t t j |  j ƒ ƒ ƒ t  |  j j ƒ  t t j |  j ƒ ƒ ƒ d  S(   N(   t   assert_nodes_equalR   t   nodesR   R   R   (   R   (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt
   test_nodes   s    (c      	   C   sì   t  |  j j ƒ  t t j |  j ƒ ƒ ƒ t t |  j j ƒ  ƒ t t j |  j ƒ ƒ ƒ t  |  j j d d d d g ƒ t t j |  j d d d d g ƒƒ ƒ t t |  j j d d d d g ƒ ƒ t t j |  j d d d d g ƒƒ ƒ d  S(   Nt   nbunchi    i   i   (   t   assert_edges_equalR   t   edgesR   R   t   assert_equalt   sortedR   (   R   (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt
   test_edges   s    (.($c         C   sN  t  |  j j ƒ  t t j |  j ƒ ƒ ƒ t t |  j j ƒ  ƒ t t j |  j ƒ ƒ ƒ t  |  j j d d d g ƒ t t j |  j d d d g ƒƒ ƒ t t |  j j d d d g ƒ ƒ t t j |  j d d d g ƒƒ ƒ t  |  j j d d ƒ t t j |  j d d ƒƒ ƒ t t |  j j d d ƒ ƒ t t j |  j d d ƒƒ ƒ d  S(   NR   i    i   t   weight(   R   R   t   degreeR   R   R   R   R   (   R   (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_degree    s    (.%!%c         C   sl   t  t |  j j d ƒ ƒ t t j |  j d ƒ ƒ ƒ t  t |  j j d ƒ ƒ t t j |  j d ƒ ƒ ƒ d  S(   Ni   (   R   R   R   t	   neighborsR   R   (   R   (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_neighbors,   s    4c         C   sH   t  |  j j ƒ  t j |  j ƒ ƒ t  |  j j ƒ  t j |  j ƒ ƒ d  S(   N(   R   R   t   number_of_nodesR   R   (   R   (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_number_of_nodes0   s    "c         C   sH   t  |  j j ƒ  t j |  j ƒ ƒ t  |  j j ƒ  t j |  j ƒ ƒ d  S(   N(   R   R   t   number_of_edgesR   R   (   R   (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_number_of_edges4   s    "c         C   sH   t  |  j j ƒ  t j |  j ƒ ƒ t  |  j j ƒ  t j |  j ƒ ƒ d  S(   N(   R   R   t   is_directedR   R   (   R   (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_is_directed8   s    "c      	   C   sÎ   |  j  j ƒ  } d d d d g } t j | | ƒ t | j | ƒ d d	 d
 g ƒ |  j  j ƒ  } t j | | d d ƒt | j | d t ƒd d i d d 6f d d i d d 6f d d i d d 6f g ƒ d  S(   Ni   i   i   i   R   g       @t   data(   i   i   (   i   i   (   i   i   (   R   t   copyR   t   add_starR   R   t   True(   R   R   t   nlist(    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_add_star<   s    c      	   C   sô  |  j  j ƒ  } d d d d g } t j | | ƒ t | j | ƒ d d	 d
 g ƒ |  j  j ƒ  } t j | | d d ƒt | j | d t ƒd d i d d 6f d d i d d 6f d d i d d 6f g ƒ |  j  j ƒ  } d  g } t j | | ƒ t | j | ƒ g  ƒ t | t	 |  j  ƒ d  g ƒ |  j  j ƒ  } t
 d  g ƒ } t j | | ƒ t | j d  g ƒ g  ƒ t | t	 |  j  ƒ d  g ƒ |  j  j ƒ  } d g } t j | | ƒ t | j | ƒ g  ƒ t | t	 |  j  ƒ d g ƒ |  j  j ƒ  } t
 d g ƒ } t j | | ƒ t | j d g ƒ g  ƒ t | t	 |  j  ƒ d g ƒ |  j  j ƒ  } g  } t j | | ƒ t | j |  j  j ƒ t | t	 |  j  ƒ ƒ |  j  j ƒ  } t
 g  ƒ } t j | | ƒ t | j |  j  j ƒ t | t	 |  j  ƒ ƒ d  S(   Ni   i   i   i   R   g       @R(   (   i   i   (   i   i   (   i   i   (   R   R)   R   t   add_pathR   R   R+   t   NoneR   R   t   iter(   R   R   R,   (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_add_pathH   sP    		c      	   C   sf  |  j  j ƒ  } d d d d g } d d	 d
 d g d d d d g g } t j | | ƒ t t | j | ƒ ƒ | k ƒ |  j  j ƒ  } d d i d d 6f d d i d d 6f d d i d d 6f d d i d d 6f g d d i d d 6f d d i d d 6f d d i d d 6f d d i d d 6f g g } t j | | d d ƒt t | j | d t ƒƒ | k ƒ d  S(   Ni   i   i   i   g      ð?R   R(   (   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (   R   R)   R   t	   add_cyclet   assert_trueR   R   R+   (   R   R   R,   t   oklists(    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_add_cyclex   s"    c         C   sŠ  t  |  j j d d d d g ƒ j t j |  j d d d d g ƒ j ƒ t  |  j j d d d d g ƒ j t j |  j d d d d g ƒ j ƒ t  |  j j d d d d g ƒ j t j |  j d d d d g ƒ j ƒ t  |  j j d d d d g ƒ j t j |  j d d d d g ƒ j ƒ t j |  j j d d d d g ƒ d d d g ƒ } t | j |  j ƒ t  | j |  j j d d d g ƒ j ƒ d  S(   Ni    i   i   i   (	   R   R   t   subgrapht   adjR   R   t   induced_subgrapht   assert_is_nott   _graph(   R   t   H(    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_subgraph‹   s    !%!%!%!%3c         C   sx   t  |  j j d d g ƒ j t j |  j d d g ƒ j ƒ t  |  j j d	 d
 g ƒ j t j |  j d d g ƒ j ƒ d  S(   Ni   i   i    i   (   i   i   (   i    i   (   i   i   (   i    i   (   i   i   (   i    i   (   i   i   (   i    i   (   R   R   t   edge_subgraphR7   R   R   (   R   (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_edge_subgraph™   s    c         C   sc   t  j |  j d d d g d d g ƒ } t t | j ƒ d d d h ƒ t t | j ƒ d	 h ƒ d  S(
   Ni    i   i   i   i   i   (   i   i   (   i   i   (   i   i   (   R   t   restricted_viewR   R   t   setR   R   (   R   R;   (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_restricted_viewŸ   s    'c         C   s  t  j |  j d t ƒ} t | t |  j ƒ ƒ t | j i  ƒ t | j i  j	 |  j j
 ƒ  i  ƒ ƒ t | j i  j	 |  j j
 ƒ  i  ƒ ƒ t  j |  j ƒ } t | t |  j ƒ ƒ t | j |  j j ƒ t | j |  j j ƒ t | j i  j	 |  j j
 ƒ  i  ƒ ƒ d  S(   Nt	   with_data(   R   t   create_empty_copyR   t   FalseR   R   R   t   grapht   _nodet   fromkeysR   t   _adj(   R   R   (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_create_empty_copy¤   s    %%c         C   s,   t  t j |  j ƒ d d d d d g ƒ d  S(   Ni   (   R   R   t   degree_histogramR   (   R   (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_degree_histogram°   s    c         C   se   t  t j |  j ƒ d ƒ t  t j |  j ƒ d ƒ t j ƒ  } | j d ƒ t  t j | ƒ d ƒ d  S(   Ng      à?g333333Ó?i   g        (   R   R   t   densityR   R   R   t   add_node(   R   R   (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_density³   s
    c         C   s\   t  j ƒ  } | j d d ƒ t t  j | ƒ d ƒ | j d d ƒ t t  j | ƒ d ƒ d  S(   Ni   g        i   g       @(   R   R   t   add_edgeR   RL   (   R   R   (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_density_selfloopº   s
    c         C   sû   t  j |  j ƒ } t | j t ƒ t t  j | j d ƒ t t  j | j	 d g ƒ t t  j | j
 d ƒ t t  j | j d g ƒ t t  j | j d d ƒ t t  j | j d g ƒ t t  j | j d d ƒ t t  j | j d g ƒ t t  j | j ƒ d  S(   Ni   i   (   i   i   (   i   i   (   R   t   freezeR   R   t   frozenR+   t   assert_raisest   NetworkXErrorRM   t   add_nodes_fromt   remove_nodet   remove_nodes_fromRO   t   add_edges_fromt   remove_edget   remove_edges_fromt   clear(   R   R   (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_freezeÁ   s    c         C   s[   t  t j |  j ƒ t ƒ t j |  j ƒ } t  | j t j |  j ƒ ƒ t  | j t ƒ d  S(   N(   R   R   t	   is_frozenR   RD   RQ   RR   R+   (   R   R   (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_is_frozenÎ   s    c         C   s   t  j d ƒ } d | _ t  j | ƒ } d j d d d d d g ƒ } t | | ƒ t  j | d	 d
 ƒ} d j d d d g ƒ } t | | ƒ d  S(   Ni   s   path_graph(5)s   
s   Name: path_graph(5)s   Type: Graphs   Number of nodes: 5s   Number of edges: 4s   Average degree:   1.6000t   ni   s$   Node 1 has the following properties:s	   Degree: 2s   Neighbors: 0 2(   R   t
   path_graphR   t   infot   joinR   (   R   R   Ra   t   expected_graph_infot   expected_node_info(    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt	   test_infoÔ   s    		c         C   sÈ   t  j d d ƒ } t  j | d d d d d g ƒ t  j | ƒ } d j d	 d
 d d d d g ƒ } t | | ƒ t  j | d d ƒ} d j d d d g ƒ } t | | ƒ t t  j t  j | d d ƒd  S(   NR   s   path_graph(5)i    i   i   i   i   s   
s   Name: path_graph(5)s   Type: DiGraphs   Number of nodes: 5s   Number of edges: 4s   Average in degree:   0.8000s   Average out degree:   0.8000R_   s$   Node 1 has the following properties:s	   Degree: 2s   Neighbors: 2iÿÿÿÿ(   R   R   R.   Ra   Rb   R   RS   RT   (   R   R   Ra   Rc   Rd   (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_info_digraphæ   s"    	c         C   s"  t  j d ƒ } t j t | ƒ d ƒ } t t  j | | d ƒ ƒ } t t | ƒ t | ƒ d ƒ t  j d ƒ } t j t | ƒ d ƒ d } t t  j | | ƒ ƒ } | d k rÑ | d k rÑ t t | ƒ d ƒ n t t | ƒ d ƒ t  j	 d ƒ } t t  j | d ƒ ƒ } t t | ƒ d ƒ d  S(   Nid   i   i    ic   i   (
   R   t   complete_grapht   randomt   sampleR   R    R   t   lenR`   t
   star_graph(   R   RE   t   popt   nborst   node(    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_neighbors_complete_graphû   s    c         C   sb  t  j d ƒ } t j t | ƒ d ƒ } t t  j | | d ƒ ƒ } t t | ƒ d ƒ t  j d ƒ } t j t | ƒ d ƒ d } t t  j | | ƒ ƒ } | d k rÇ | d k rÇ t t | ƒ d ƒ n t t | ƒ d ƒ t  j	 d ƒ } t t  j | d ƒ ƒ } t t | ƒ d ƒ t  j
 ƒ  } | j t d ƒ ƒ t t  j | d ƒ ƒ } t t | ƒ d ƒ d  S(	   Nid   i   i    ic   ia   ib   i
   i	   (   R   Rg   Rh   Ri   R   t   non_neighborsR   Rj   R`   Rk   R   RU   R	   (   R   RE   Rl   Rm   Rn   (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_non_neighbors  s"    c         C   s  t  j d ƒ } t t  j | ƒ ƒ } t t | ƒ d ƒ t  j d ƒ } d d d	 g } t t  j | ƒ ƒ } x< | D]4 \ } } t | | f | k p¡ | | f | k ƒ qq Wt  j d ƒ } d
 d d d d d g } t t  j | ƒ ƒ } x< | D]4 \ } } t | | f | k p| | f | k ƒ qì Wt  j	 ƒ  } | j
 d d d g ƒ d d d g } t t  j | ƒ ƒ } x | D] } t | | k ƒ qqWd  S(   Ni   i    i   i   i   i   (   i    i   (   i    i   (   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (   i    i   (   i   i    (   i   i   (   i    i   (   i   i    (   i   i   (   R   Rg   R   t	   non_edgesR   Rj   R`   R3   Rk   R   RX   (   R   RE   t   nedgest   expectedt   ut   vt   e(    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_non_edges+  s&    ,,c      	   C   sI  t  j ƒ  } t t  j | ƒ ƒ t  j d ƒ } t t  j | ƒ ƒ t t  j | d ƒ ƒ | j d ƒ | j d d d d ƒt t  j | ƒ ƒ t t  j | d ƒ ƒ t  j ƒ  } | j	 d d d d d d g ƒ t t  j | ƒ ƒ t t  j | d ƒ ƒ | j
 ƒ  } t t  j | ƒ ƒ t t  j | d ƒ ƒ t t  j t  j | d ƒ d  S(   Ni   i   i   R   t   0t   3t   1iûÿÿÿt   2i   (   i   i   (   i   i   (   Ry   Rz   i   (   Ry   R{   iûÿÿÿ(   R{   Ry   iûÿÿÿ(   Ry   R|   i   (   R{   R|   i   (   R|   Rz   i   (   R{   Ry   (   R{   Ry   (   i   i   (   R   R   t   assert_falset   is_weightedR`   RM   RO   R3   R   t   add_weighted_edges_fromt   to_undirectedRS   RT   (   R   R   (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_is_weightedE  s&    c      	   C   s—  t  j ƒ  } t t  j | ƒ ƒ | j d ƒ | j d d d d g ƒ t t  j | ƒ ƒ | j d d d d ƒt t  j | d ƒ ƒ | j d d d g ƒ d | d d d	 <t t  j | ƒ ƒ t t  j | d ƒ ƒ d
 | d d d <t t  j | d ƒ ƒ t t  j | ƒ ƒ t  j	 ƒ  } | j
 d d d d d d g ƒ t t  j | ƒ ƒ t t  j | d ƒ ƒ t t  j | d ƒ ƒ t t  j t  j | d ƒ d  S(    Ni   i   i   i   i   R   i   t   bluet   coloriþÿÿÿRy   Rz   R{   iûÿÿÿR|   iýÿÿÿ(   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (   Ry   Rz   i   (   Ry   R{   iûÿÿÿ(   R{   Ry   iþÿÿÿ(   Ry   R|   i   (   R{   R|   iýÿÿÿ(   R|   Rz   i   (   Ry   Rz   (   R{   Ry   (   i   i   (   R   R   R}   t   is_negatively_weightedRM   RU   RO   RX   R3   R   R   RS   RT   (   R   R   (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_is_negatively_weighted_  s,    (   t   __name__t
   __module__R   R   R   R   R!   R#   R%   R'   R-   R1   R5   R<   R>   RA   RI   RK   RN   RP   R\   R^   Re   Rf   Ro   Rq   Rx   R   R…   (    (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyR      s6   										0																t   TestCommonNeighborsc           B   s_   e  Z d  „  Z d „  Z d „  Z d „  Z e e j ƒ d „  ƒ Z	 d „  Z
 d „  Z d „  Z RS(   c            s(   t  j ˆ  _ ‡  f d †  } | ˆ  _ d  S(   Nc            s,   t  ˆ  j |  | | ƒ ƒ } t | | ƒ d  S(   N(   R   t   funcR   (   R   Ru   Rv   Rt   t   result(   R   (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt	   test_func‚  s    (   R   t   common_neighborsR‰   t   test(   R   R‹   (    (   R   sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyR     s    c         C   s2   t  j d ƒ } |  j | d d d d d g ƒ d  S(   Ni   i    i   i   i   i   (   R   Rg   R   (   R   R   (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_K5‡  s    c         C   s,   t  j d ƒ } |  j | d d d g ƒ d  S(   Ni   i    i   i   (   R   R`   R   (   R   R   (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_P3‹  s    c         C   s,   t  j d ƒ } |  j | d d d g ƒ d  S(   Ni   i   i   i    (   R   Rk   R   (   R   R   (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_S4  s    c         C   s6   t  j ƒ  } | j d d g ƒ |  j | d d ƒ d  S(   Ni    i   i   (   i    i   (   i   i   (   R   R   RX   R‰   (   R   R   (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_digraph“  s    c         C   sg   t  j d ƒ } t t  j t  j | d d ƒ t t  j t  j | d d ƒ t t  j t  j | d d ƒ d  S(   Ni   i   i   (   R   Rg   RS   RT   RŒ   (   R   R   (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_nonexistent_nodes™  s    c         C   s9   t  j ƒ  } | j d d g ƒ |  j | d d g  ƒ d S(   s   Case of no common neighbors.i    i   N(   R   R   RU   R   (   R   R   (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_custom1Ÿ  s    c         C   s2   t  j d ƒ } |  j | d d d d d g ƒ d S(   s   Case of equal nodes.i   i    i   i   i   N(   R   Rg   R   (   R   R   (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_custom2¥  s    (   R†   R‡   R   RŽ   R   R   t   raisesR   t   NetworkXNotImplementedR‘   R’   R“   R”   (    (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyRˆ   ~  s   						c          C   s   t  j ƒ  t  j ƒ  t  j ƒ  t  j ƒ  g }  xÏ|  D]Ç} t  j d d | ƒ} d } d } t  j | | | ƒ t | j d | | ƒ t | j d | | ƒ t | j d | | ƒ t  j d d | ƒ} t	 t
 t | j ƒ  ƒ t t | ƒ ƒ ƒ ƒ } d } t  j | | | ƒ t | j d | d ƒ t | j d | d ƒ t | j d | d ƒ t  j d d | ƒ} i d d 6d	 d 6} t	 j | j ƒ  | ƒ } | j d ƒ t  j | | ƒ t | j d i  ƒ t | j d d d ƒ t | j d d d	 ƒ q1 Wd  S(
   Ni   t   create_usingid   t   helloi    i   i   t   hiiÈ   (   R   R   R   t
   MultiGrapht   MultiDiGraphR`   t   set_node_attributesR   R   t   dictt   zipR   R	   Rj   RG   Rl   (   t   graphsR   t   valst   attrt   d(    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_set_node_attributes«  s0    *-c          C   s»  t  j ƒ  t  j ƒ  g }  xœ|  D]”} t  j d d | ƒ} d } d } t  j | | | ƒ t | d d | | ƒ t | d d | | ƒ t  j d d | ƒ} d } d	 d
 g } t t | t t	 | ƒ ƒ ƒ ƒ } t  j | | | ƒ t | d d | d ƒ t | d d | d ƒ t  j d d | ƒ} i d d 6d d 6} d g } t j
 | | ƒ } t  j | | ƒ t | d d d d ƒ t | d d d d ƒ t | d d i  ƒ q Wd  S(   Ni   R—   R˜   i    i   i   R™   iÈ   (   i    i   (   i   i   (   i    i   (   R   R   R   R`   t   set_edge_attributesR   R   Rž   R	   Rj   RG   (   RŸ   R   R¡   R    R   R¢   (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_set_edge_attributesË  s.    !	c          C   s×  t  j ƒ  t  j ƒ  g }  x¸|  D]°} t  j d d | ƒ} d } d } t  j | | | ƒ t | d d d | | ƒ t | d d d | | ƒ t  j d d | ƒ} d } d	 d
 g } t t | t t	 | ƒ ƒ ƒ ƒ } t  j | | | ƒ t | d d d | d ƒ t | d d d | d ƒ t  j d d | ƒ} i d d 6d d 6} d g } t j
 | | ƒ } t  j | | ƒ t | d d d d d ƒ t | d d d d d ƒ t | d d d i  ƒ q Wd  S(   Ni   R—   R˜   i    i   i   R™   iÈ   (   i    i   i    (   i   i   i    (   i    i   i    (   R   Rš   R›   R`   R¤   R   R   Rž   R	   Rj   RG   (   RŸ   R   R¡   R    R   R¢   (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_set_edge_attributes_multiê  s.    !	c          C   s¸   t  j ƒ  t  j ƒ  t  j ƒ  t  j ƒ  g }  x‡ |  D] } t  j d d | ƒ} d } d } t  j | | | ƒ t  j | | ƒ } t | d | ƒ t | d | ƒ t | d | ƒ q1 Wd  S(   Ni   R—   R˜   id   i    i   i   (	   R   R   R   Rš   R›   R`   Rœ   t   get_node_attributesR   (   RŸ   R   R¡   R    t   attrs(    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_get_node_attributes	  s    *c    	      C   s‚  t  j ƒ  t  j ƒ  t  j ƒ  t  j ƒ  g }  xQ|  D]I} t  j d d | ƒ} d } d } t  j | | | ƒ t  j | | ƒ } t t	 | ƒ d ƒ | j
 ƒ  rd d	 g } xÏ | D][ \ } } } y t | | | | f d ƒ Wq¯ t k
 r	t | | | | f d ƒ q¯ Xq¯ Wq1 d
 d g } xZ | D]R \ } } y t | | | f d ƒ Wq$t k
 rut | | | f d ƒ q$Xq$Wq1 Wd  S(   Ni   R—   R˜   id   i   i    i   (   i    i   i    (   i   i   i    (   i    i   (   i   i   (   R   R   R   Rš   R›   R`   R¤   t   get_edge_attributesR   Rj   t   is_multigrapht   KeyError(	   RŸ   R   R¡   R    R¨   t   keysRu   Rv   t   k(    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_get_edge_attributes  s*    *%c          C   sž   t  j ƒ  t  j ƒ  t  j ƒ  t  j ƒ  g }  xm |  D]e } t t  j | ƒ ƒ | j t d ƒ ƒ t t  j | ƒ ƒ | j	 d d g ƒ t
 t  j | ƒ ƒ q1 Wd  S(   Ni   i   i   i   i   (   i   i   (   i   i   (   R   R   R   Rš   R›   R3   t   is_emptyRU   R	   RX   R}   (   RŸ   R   (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_is_empty0  s    *c       	   C   sG  t  j ƒ  t  j ƒ  t  j ƒ  t  j ƒ  g }  x|  D]} t  j d d | ƒ} | j d d ƒ t t  j | ƒ d g ƒ t	 t  j
 | ƒ d g ƒ t	 t  j
 | d t ƒd d i  f g ƒ t t  j | ƒ d ƒ | j d d d d ƒt	 t  j
 | d t ƒd d i  f d d i d d 6f g ƒ t	 t  j
 | d d ƒd	 d
 g ƒ q1 Wd  S(   Ni   R—   i    R(   i   R   i   (   i    i    (   i    i    N(   i   i   i   (   R   R   R   Rš   R›   Rg   RO   R   t   nodes_with_selfloopsR   t   selfloop_edgesR+   R   t   number_of_selfloopsR/   (   RŸ   RE   R   (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   test_selfloops:  s    *(&(   Rh   t
   nose.toolst   networkxR   t   networkx.testing.utilst   objectR   Rˆ   R£   R¥   R¦   R©   R¯   R±   Rµ   (    (    (    sC   lib/python2.7/site-packages/networkx/classes/tests/test_function.pyt   <module>   s   

ÿ w-	 					
