�
�"Kb� � � � d Z ddlZddlZddlZ G d� dej � � Z G d� dej � � Zedk r ej � � dS dS )z"Unit tests for the common.py file.� Nc � � e Zd Zd� Zd� ZdS )�TestTopologicallySortedc � �� ddgg dgdgd���fd�}| � t j � �� � � |� � g d�� � dS )zATest that sorting works on a valid graph with one possible order.�b�c�d��ar r r c �. �� t �| � � S �N��tuple��node�graphs ��1/usr/lib/python3/dist-packages/gyp/common_test.py�GetEdgez3TestTopologicallySorted.test_Valid.<locals>.GetEdge � �� �
�5��;�
�
�� )r
r r r N)�assertEqual�gyp�common�TopologicallySorted�keys��selfr r s @r �
test_Validz"TestTopologicallySorted.test_Valid s� �� � �3�Z�
��U��U�
�
�E� � � � � ���� �j�$�$�U�Z�Z�\�\�7�;�;����� � � � r c � �� dgdgdgdgd���fd�}| � t j j t j j �� � � |� � dS )z3Test that an exception is thrown on a cyclic graph.r r r r
r c �. �� t �| � � S r r
r s �r r z3TestTopologicallySorted.test_Cycle.<locals>.GetEdge% r r N)�assertRaisesr r �
CycleErrorr r r s @r �
test_Cyclez"TestTopologicallySorted.test_Cycle s| �� � �U��U��U��U�
�
�E� � � � � ���� �j��S�Z�;��j�j�l�l�G�� � � � r N)�__name__�
__module__�__qualname__r r" |