+
    �°³jÚ  ã                   óô  € R t ^ RIt^ RIt^ RItR t]P                  P                  R]! ^^4      4      R 4       t	R t
]P                  P                  R]! ^^4      4      R 4       t]P                  P                  R]! ^^4      4      R 4       t]P                  P                  R]P                  ]P                  .4      ]P                  P                  R	]P                  ]P                   ]P"                  .4      R
 4       4       t]P                  P                  R]P                  ]P                  .4      ]P                  P                  R]P&                  ]P(                  .4      R 4       4       tR tR# )z'Unit tests for the broadcasting module.Nc                 óD  € . ROp \         P                  ! V 4      p\         P                  ! V4      w  r#V^8X  g   Q hV^^	08X  g   Q h\         P                  ! V^4      ^8X  g   Q h\         P                  ! V^4      ^	8X  g   Q h\         P                  ! V4      ^
8X  g   Q hR# )zg
Test the BROADCAST algorithm on the example in the paper titled: "Information Dissemination in Trees"
N))é    é   )r   é   )r   é   )é   é   )é   r   )r   r   )é   r   )r   é	   )é   r   )r   é   )r   é   )r   é   )r   é   )r   é   )r   é   )r   é
   )r   é   )r   é   )r   é   )r   é   )ÚnxÚGraphÚtree_broadcast_centerÚtree_broadcast_time)Ú	edge_listÚGÚb_TÚb_Cs       Úl/home/luca/screen-checking/.venv/lib/python3.14/site-packages/networkx/algorithms/tests/test_broadcasting.pyÚtest_example_tree_broadcastr!   
   s•   € ò€Iô, 	�Š�Ó€AÜ×'Ò'¨Ó*�H€CØ�!Œ8€Oˆ8Ø�2�q�'Œ>Ðˆ>ä×!Ò! ! RÓ(¨AÔ-Ð-Ð-Ü×!Ò! ! QÓ'¨1Ô,Ð,Ð,ä×!Ò! !Ó$¨Ô*Ð*Ò*ó    Únc                 ó°  € \         P                  ! V 4      p\         P                  ! V4      w  r#V\        P                  ! V ^,          4      8X  g   Q hV\        P                  ! V ^,          4      V ^,          \        P                  ! V ^,          ^,
          4      V ^,          ^,
          08X  g   Q h\         P
                  ! V4      V ^,
          8X  g   Q hR# )r   N)r   Ú
path_graphr   ÚmathÚceilr   ©r#   r   r   r   s   &   r    Útest_path_broadcastr)   /   s©   € ä
�Š�aÓ€AÜ×'Ò'¨Ó*�H€CØ”$—)’)˜A �EÓ"Ô"Ð"Ð"ØÜ�	Š	�!�a•%ÓØ	ˆQ�Ü�	Š	�!�a•%˜!•)ÓØ	ˆQ���
ð	ô ð ð ô ×!Ò! !Ó$¨¨A­Ô-Ð-Ò-r"   c                  óÂ   € \         P                  ! ^4      p \         P                  ! V 4      w  rV^ 8X  g   Q hV^ 08X  g   Q h\         P                  ! V 4      ^ 8X  g   Q hR# )r   N)r   Úempty_graphr   r   )ÚHr   r   s      r    Útest_empty_graph_broadcastr-   =   sT   € Ü
�Š�qÓ€AÜ×'Ò'¨Ó*�H€CØ�!Œ8€Oˆ8Ø�1�#Œ:Ðˆ:Ü×!Ò! !Ó$¨Ô)Ð)Ò)r"   c                 óì   € \         P                  ! V 4      p\         P                  ! V4      w  r#W 8X  g   Q hV\        VP	                  4       4      8X  g   Q h\         P
                  ! V4      V8X  g   Q hR # )N)r   Ú
star_graphr   ÚsetÚnodesr   r(   s   &   r    Útest_star_broadcastr2   E   s\   € ä
�Š�aÓ€AÜ×'Ò'¨Ó*�H€CØŒ8€Oˆ8Ø”#�a—g‘g“i“.Ô Ð Ð Ü×!Ò! !Ó$¨Ô+Ð+Ò+r"   c                 óú   € \         P                  ! V 4      p\         P                  ! V4      w  r#W 8X  g   Q hV^ ^V ^,
          ,          08X  g   Q h\         P                  ! V4      ^V ,          ^,
          8X  g   Q hR# )r   N)r   Úbinomial_treer   r   r(   s   &   r    Útest_binomial_tree_broadcastr5   N   si   € ä
×Ò˜Ó€AÜ×'Ò'¨Ó*�H€CØŒ8€Oˆ8Ø�1�a˜A �E•lÐ#Ô#Ð#Ð#Ü×!Ò! !Ó$¨¨A­°­	Ô1Ð1Ò1r"   ÚfnÚ
graph_typec                óÜ   € \         P                  ! ^VR7      p\        P                  ! \         P                  RR7      ;_uu_ 4        V ! V4       RRR4       R#   + '       g   i     R# ; i)zPCheck that broadcast functions properly raise for directed and multigraph types.)Úcreate_usingznot implemented for©ÚmatchN)r   r%   ÚpytestÚraisesÚNetworkXNotImplemented)r6   r7   r   s   && r    Útest_raises_graph_typer?   W   sC   € ô 	�Š�a jÔ1€AÜ	�Š”r×0Ñ0Ð8N×	OÖ	OÙ
ˆ1Œ÷ 
P×	O×	OÒ	Oús   Á	AÁA+	Úgenc                ó¼   € V! ^4      p\         P                  ! \        P                  RR7      ;_uu_ 4        V ! V4       RRR4       R#   + '       g   i     R# ; i)zACheck that broadcast functions properly raise for nontree graphs.z
not a treer:   N)r<   r=   r   ÚNotATree)r6   r@   r   s   && r    Útest_raises_not_treerC   `   s8   € ñ 	ˆA‹€AÜ	�Š”r—{‘{¨-×	8Ö	8Ù
ˆ1Œ÷ 
9×	8×	8Ò	8ús   ·	A
Á
A	c                 óø   € \         P                  ! ^4      p \        P                  ! \         P                  RR7      ;_uu_ 4        \         P
                  ! V ^
R7       RRR4       R#   + '       g   i     R# ; i)zCCheck that `tree_broadcast_time` properly raises for invalid nodes.znode.*not in Gr:   )ÚnodeN)r   r%   r<   r=   ÚNodeNotFoundr   )r   s    r    Útest_raises_node_not_in_GrG   i   sF   € ä
�Š�aÓ€AÜ	�Š”r—‘Ð.?×	@Ö	@Ü
×Ò˜q rÕ*÷ 
A×	@×	@Ò	@ús   ÁA(Á(A9	)Ú__doc__r&   r<   Únetworkxr   r!   ÚmarkÚparametrizeÚranger)   r-   r2   r5   r   r   ÚDiGraphÚ
MultiGraphÚMultiDiGraphr?   r+   Úcycle_graphrC   rG   © r"   r    Ú<module>rR      sd  ðÙ -ã ã ã ò"+ðJ ‡�×Ñ˜™e A r›lÓ+ñ
.ó ,ð
.ò*ð ‡�×Ñ˜™e A r›lÓ+ñ,ó ,ð,ð ‡�×Ñ˜™e A q›kÓ*ñ2ó +ð2ð ‡�×Ñ˜ × 8Ñ 8¸"×:PÑ:PÐQÓRØ‡�×Ñ˜¨¯
©
°B·M±MÀ2Ç?Á?Ð'SÓTñó Uó Sðð ‡�×Ñ˜ × 8Ñ 8¸"×:PÑ:PÐQÓRØ‡�×Ñ˜ §¡°·±Ð @ÓAñó Bó Sðô+r"   