Edit File: suite.cpython-311.opt-1.pyc
� �����f�4����������������������������d�Z�ddlZddlmZ�ddlmZ�dZd��Z�G�d��d e������������Z�G�d ��d�e������������Z �G�d��de������������Z d ��Z�G�d��de������������ZdS�)� TestSuite�����N����)�case)�utilTc������������������>�����t����������|�|d��������������}�|���������������d�S�)Nc������������������������d�S��N��r ���������5/opt/alt/python311/lib64/python3.11/unittest/suite.py�<lambda>z!_call_if_exists.<locals>.<lambda>���s��������r���)�getattr)�parent�attr�funcs��� r����_call_if_existsr������s$�������6�4���.�.�D��D�F�F�F�F�Fr���c��������������������Z�����e�Zd�ZdZdZdd�Zd��Zd��Zd��Zd��Z d ��Z d ��Zd��Zd��Z d ��Zd��ZdS�)� BaseTestSuitezNA simple test suite that doesn't provide class or module shared fixtures. Tr ���c������������������L�����g�|�_���������d|�_��������|����������������������|�������������d�S��Nr���)�_tests�_removed_tests�addTests)�self�testss��� r����__init__zBaseTestSuite.__init__���s)������������� � �e�����r���c������������������\�����dt����������j��������|�j���������������������dt����������|��������������d�S�)N�<z tests=�>)r����strclass� __class__�list�r���s��� r����__repr__zBaseTestSuite.__repr__���s+��������"&�-���"?�"?�"?�"?��d�����L�Lr���c������������������z�����t����������||�j��������������������st����������S�t����������|�������������t����������|������������k����S�r ���)� isinstancer!����NotImplementedr"���)r����others��� r����__eq__zBaseTestSuite.__eq__���s3�������%���0�0�� "�!�!��D�z�z�T�%�[�[�(�(r���c������������������*�����t����������|�j��������������������S�r ���)�iterr���r#���s��� r����__iter__zBaseTestSuite.__iter__"���s�������D�K� � � r���c������������������P�����|�j���������}|�D�]}|r||�����������������������������������z ��}�|S�r ���)r����countTestCases)r����cases�tests��� r���r.���zBaseTestSuite.countTestCases%���s=�������#���� /�� /�D��� /���,�,�.�.�.����r���c������������������@����t����������|������������s/t����������d���������������������t����������|�������������������������������������t ����������|t ����������������������r0t ����������|t����������j��������t����������f������������rt����������d�������������|�j �����������������������������|�������������d�S�)Nz{} is not callablezNTestCases and TestSuites must be instantiated before passing them to addTest())�callable� TypeError�format�reprr&����type� issubclassr����TestCaser���r����append�r���r0���s��� r����addTestzBaseTestSuite.addTest,���s���������~�~�� E��0�7�7��T� � �C�C�D�D�D��d�D�!�!�� @�j��26�-��1K�'M��'M�� @���?��@��@�� @�����4� � � � � r���c�����������������������t����������|t����������������������rt����������d�������������|D�]}|����������������������|��������������d�S�)Nz0tests must be an iterable of tests, not a string)r&����strr3���r;���)r���r���r0���s��� r���r���zBaseTestSuite.addTests6���sR�������e�S�!�!�� P��N�O�O�O��� �� �D��L�L������ �� r���c�����������������������t����������|�������������D�]5\��}}|j��������r�n(�||�������������|�j��������r|����������������������|��������������6|S�r ���)� enumerate� shouldStop�_cleanup�_removeTestAtIndex)r����result�indexr0���s��� r����runzBaseTestSuite.run<���s\������$�T�?�?�� /�� /�K�E�4�� �� ����D��L�L�L��}�� /��'�'��.�.�.��� r���c����������������������� �|�j���������|���������}t����������|d������������r"|�xj��������|�����������������������������������z ��c_��������d|�j���������|<���dS�#�t����������$�r�Y�dS�w�xY�w)z2Stop holding a reference to the TestCase at index.r.���N)r����hasattrr���r.���r3���)r���rD���r0���s��� r���rB���z BaseTestSuite._removeTestAtIndexE���s~������ &��;�u�%�D���t�-�.�.�� =��#�#�t�':�':�'<�'<�<�#�#�!%�D�K��������� �� �� ��D�D� ���s���� A �� A�Ac������������������������|�j���������|i�|��S�r ����rE���)r����args�kwdss��� r����__call__zBaseTestSuite.__call__S���s�������t�x��&��&�&�&r���c������������������8�����|�D�]}|��������������������������������������dS�)�7Run the tests without collecting errors in a TestResultN)�debugr:���s��� r���rO���zBaseTestSuite.debugV���s*�������� �� �D��J�J�L�L�L�L� �� r���N)r ���)�__name__� __module__�__qualname__�__doc__rA���r���r$���r)���r,���r.���r;���r���rE���rB���rL���rO���r ���r���r���r���r������s�������������������H�������� M��M��M�)��)��)� !��!��!������!��!��!�����������&��&��&�'��'��'���������r���r���c��������������������R�����e�Zd�ZdZd d�Zd��Zd��Zd��Zd��Z �dd �Z �dd �Z d��Zd��ZdS�)r���a���A test suite is a composite test consisting of a number of TestCases. For use, create an instance of TestSuite, then add test case instances. When all tests have been added, the suite can be passed to a test runner, such as TextTestRunner. It will run the individual test cases in the order in which they were added, aggregating the results. When subclassing, do not forget to call the base class constructor. Fc������������������l����d}t����������|dd������������du�r dx|_��������}t����������|�������������D�]�\��}}|j��������r�n�t ����������|������������rv|����������������������||�������������|����������������������||�������������|����������������������||�������������|j��������|_ ��������t����������|j��������dd������������st����������|dd������������r��|s�||�������������n|� �����������������������������������|�j��������r|����������������������|���������������|r2|����������������������d�|�������������|�� ��������������������|�������������d|_��������|S�)NF�_testRunEnteredT�_classSetupFailed�_moduleSetUpFailed)r���rV���r?���r@����_isnotsuite�_tearDownPreviousClass�_handleModuleFixture�_handleClassSetUpr!����_previousTestClassrO���rA���rB����_handleModuleTearDown)r���rC���rO����topLevelrD���r0���s��� r���rE���z TestSuite.runf���sb��������6�,�e�4�4��=�=�04�4�F�"�X�$�T�?�?�� /�� /�K�E�4�� �� ����4� � �� ��+�+�D�&�9�9�9��)�)�$��7�7�7��&�&�t�V�4�4�4�,0�N��)��D�N�,?��G�G����F�$8�%�@�@����� ���V������ � �����}�� /��'�'��.�.�.���� +��'�'��f�5�5�5��&�&�v�.�.�.�%*�F�"�� r���c������������������N�����t������������������������}|����������������������|d�������������dS�)rN���TN)�_DebugResultrE���)r���rO���s��� r���rO���zTestSuite.debug����s%�������������������r���c�����������������������t����������|dd�������������}|j��������}||k����rd�S�|j��������rd�S�t����������|dd������������rd�S�d} �d|_��������n#�t����������$�r�Y�nw�xY�wt����������|dd�������������}t����������|dd�������������}|��t����������|d������������� � ��|���������������nt#�t����������$�rg}t����������|t����������������������r��d} �d|_��������n#�t����������$�r�Y�nw�xY�wt����������j ��������|������������} |����������������������||d| �������������Y�d�}~nd�}~ww�xY�w|r6|�4�|���������������|j��������D�]"} |����������������������|| d���������d| | � ��������������#t����������|d �������������d�S�#�t����������|d �������������w�xY�wd�S�)Nr]����__unittest_skip__F� setUpClass�doClassCleanups�_setupStdoutTr�����info�_restoreStdout) r���r!���rX���rW���r3���r���� Exceptionr&���ra���r���r ����"_createClassOrModuleLevelException�tearDown_exceptions)r���r0���rC���� previousClass�currentClass�failedrd���re����e� className�exc_infos��� r���r\���zTestSuite._handleClassSetUp����s8�������(<�d�C�C� ��~���=�(�(��F��$�� ��F��<�!4�e�<�<�� ��F��� �-2�L�*�*���� �� �� �� �D� ���� ��\�<��>�>� �!�,�0A�4�H�H���!��F�N�3�3�3� :� G��J�L�L�L�L�� ��G��G��G�!�&�,�7�7����!�F��9=��6�6��$������������� $� �l� ;� ;�I��;�;�F�A�<H�<E�G��G��G��G��G��G��G��G�����G�������/�o�9�#�O�%�%�%�$0�$D��/��/���?�?� &����\�9�%-��@��/��/��/��/�� ��(8�9�9�9�9�9����(8�9�9�9�9����1�"�!sf�����A�� A�A� B��E�� D �#D�<C�D� C�D�C�/D��E��D � ;E��E)c������������������>�����d�}t����������|dd�������������}|�|j��������}|S�)Nr]���)r���rQ���)r���rC����previousModulerm���s��� r����_get_previous_modulezTestSuite._get_previous_module����s-����������(<�d�C�C� ��$�*�5�N��r���c����������������������|�����������������������|������������}|j��������j��������}||k����rd�S�|����������������������|�������������d|_�������� �t ����������j��������|���������}n#�t����������$�r�Y�d�S�w�xY�wt����������|dd�������������}|��t����������|d������������� � ��|���������������nL#�t����������$�r?}t����������|t����������������������r��d|_��������|�� ��������������������||d|�������������Y�d�}~nd�}~ww�xY�w|j��������rD �t����������j�����������������������n/#�t����������$�r"}|�� ��������������������||d|�������������Y�d�}~nd�}~ww�xY�wt����������|d�������������d�S�#�t����������|d�������������w�xY�wd�S�)NF�setUpModulerf���Tri���)ru���r!���rQ���r^���rX����sys�modules�KeyErrorr���r���rj���r&���ra���rk���r����doModuleCleanups)r���r0���rC���rt���� currentModule�modulerw���rp���s��� r���r[���zTestSuite._handleModuleFixture����s������2�2�6�:�:����1� ��N�*�*��F��"�"�6�*�*�*��%*��!� ��[��/�F�F���� �� �� ��F�F� �����f�m�T�:�:���"��F�N�3�3�3� :�K��K�M�M�M�M�� ��K��K��K�!�&�,�7�7����04�F�-��;�;�F�A�<I�<I�K��K��K��K��K��K��K��K����� K������,��O�O��-�/�/�/�/��$��O��O��O��?�?���@M�@M�O��O��O��O��O��O��O��O�����O���� � ��(8�9�9�9�9�9����(8�9�9�9�9����)�#�"sl����A�� A(�'A(� B��E�� C$�%5C�E��C$�$ E��/D��E�� D/� D*�%E��*D/�/E��ENc������������������F�����|��d|��d�}|�����������������������||||�������������d�S�)Nz (�))�_addClassOrModuleLevelException)r���rC����exc�method_namer���rh���� errorNames��� r���rk���z,TestSuite._createClassOrModuleLevelException����s8������"�/�/�f�/�/�/� ��,�,�V�S�)�T�J�J�J�J�Jr���c������������������6����t����������|������������}t����������|dd�������������}|�5t����������|t����������j��������������������r�||t����������|�������������������������d�S�|s)|���������������������|t����������j�����������������������������������d�S�|���������������������||�������������d�S�)N�addSkip) �_ErrorHolderr���r&���r����SkipTestr=����addErrorrx���rr���)r���rC���� exceptionr����rh����errorr����s��� r���r����z)TestSuite._addClassOrModuleLevelException����s��������Y�'�'���&�)�T�2�2����:�i���#G�#G���G�E�3�y�>�>�*�*�*�*�*��� -�����s�|�~�~�6�6�6�6�6�����t�,�,�,�,�,r���c������������������|����|�����������������������|������������}|�d�S�|j��������rd�S� �t����������j��������|���������}n#�t����������$�r�Y�d�S�w�xY�wt����������|d������������� �t ����������|dd�������������}|�Q ��|���������������nE#�t����������$�r8}t����������|t����������������������r��|�� ��������������������||d|�������������Y�d�}~nd�}~ww�xY�w �t����������j�����������������������nE#�t����������$�r8}t����������|t����������������������r��|�� ��������������������||d|�������������Y�d�}~nd�}~ww�xY�wt����������|d�������������d�S�#�t����������|d�������������w�xY�w)Nrf����tearDownModuleri���) ru���rX���rx���ry���rz���r���r���rj���r&���ra���rk���r���r{���)r���rC���rt���r}���r����rp���s��� r���r^���zTestSuite._handleModuleTearDown����s�������2�2�6�:�:���!��F��$�� ��F� ��[��0�F�F���� �� �� ��F�F� ����� ���/�/�/� 6�$�V�-=�t�D�D�N��)�L�"�N�$�$�$�$�� ��L��L��L�!�&�,�7�7�����;�;�F�A�<L�<J�L��L��L��L��L��L��L��L�����L���� H��%�'�'�'�'���� H�� H�� H��f�l�3�3�����7�7���8H�8F�H��H��H��H��H��H��H��H����� H����� �F�$4�5�5�5�5�5��O�F�$4�5�5�5�5���so����7�� A�A�D)��- A8��7D)��8 B:�.B5�0D)��5B:�:D)��>C��D)�� D�.D� D)��D�D)��)D;c����������������������t����������|dd�������������}|j��������}||k����s|�d�S�t����������|dd������������rd�S�t����������|dd������������rd�S�t����������|dd������������rd�S�t����������|dd�������������}t����������|dd�������������}|�|�d�S�t����������|d������������� �|�e ��|���������������nY#�t����������$�rL}t ����������|t ����������������������r��t ����������j��������|������������}|����������������������||d|�������������Y�d�}~nd�}~ww�xY�w|�e�|���������������|j ��������D�]S} t ����������|t ����������������������r| d ����������t ����������j��������|������������}|����������������������|| d ���������d|| � ��������������Tt����������|d�������������d�S�#�t����������|d�������������w�xY�w)Nr]���rW���FrX���rc���� tearDownClassre���rf���r���rg���ri���) r���r!���r���rj���r&���ra���r���r ���rk���rl���) r���r0���rC���rm���rn���r����re���rp���rq���rr���s ��� r���rZ���z TestSuite._tearDownPreviousClass��s%�������(<�d�C�C� ��~���=�(�(�M�,A��F��=�"5�u�=�=�� ��F��6�/��7�7�� ��F��=�"5�u�=�=�� ��F�� ���E�E� �!�-�1B�D�I�I��� �_�%<��F����/�/�/� 6��(�G�!�M�O�O�O�O�� ��G��G��G�!�&�,�7�7���� $� �m� <� <�I��;�;�F�A�<K�<E�G��G��G��G��G��G��G��G����� G������*���!�!�!� -� A��K��K�H�!�&�,�7�7��*�&�q�k�)� $� �m� <� <�I��;�;�F�H�Q�K�<K�<E�AI��<��K��K��K��K� � �F�$4�5�5�5�5�5��O�F�$4�5�5�5�5���s8����E5�� B#��"E5��# C9�-AC4�/E5��4C9�9A*E5��5F)Fr ���) rP���rQ���rR���rS���rE���rO���r\���ru���r[���rk���r����r^���rZ���r ���r���r���r���r���\���s�������������������������B�����,:��,:��,:�\�����#:��#:��#:�L�9=�K��K��K��K��.2� -�� -�� -�� -�!6��!6��!6�F(6��(6��(6��(6��(6r���c��������������������F�����e�Zd�ZdZdZd��Zd��Zd��Zd��Zd��Z d��Z d ��Zd ��ZdS�)r����z� Placeholder for a TestCase inside a result. As far as a TestResult is concerned, this looks exactly like a unit test. Used to insert arbitrary errors into a test suite run. Nc�����������������������||�_���������d�S�r �����description)r���r����s��� r���r���z_ErrorHolder.__init__T��s������&����r���c�����������������������|�j���������S�r ���r����r#���s��� r����idz_ErrorHolder.idW��s��������r���c�����������������������d�S�r ���r ���r#���s��� r����shortDescriptionz_ErrorHolder.shortDescriptionZ��s�������tr���c�����������������������d|�j����������d�S�)Nz<ErrorHolder description=r���r����r#���s��� r���r$���z_ErrorHolder.__repr__]��s��������15�1A�1A�1A�C�Cr���c������������������*�����|�������������������������������������S�r ���)r����r#���s��� r����__str__z_ErrorHolder.__str__`��s�������w�w�y�y�r���c�����������������������d�S�r ���r ����r���rC���s��� r���rE���z_ErrorHolder.runc��s ������� �r���c������������������,�����|�����������������������|������������S�r ���rI���r����s��� r���rL���z_ErrorHolder.__call__h��s�������x�x����r���c�����������������������dS�r���r ���r#���s��� r���r.���z_ErrorHolder.countTestCasesk��s�������qr���) rP���rQ���rR���rS����failureExceptionr���r����r����r$���r����rE���rL���r.���r ���r���r���r����r����H��s���������������������'��'��'� �� �� ������D��D��D������ �� �� � �� �� ���������r���r����c������������������J����� �t����������|��������������n#�t����������$�r�Y�dS�w�xY�wdS�)z?A crude way to tell apart testcases and suites with duck-typingTF)r+���r3���)r0���s��� r���rY���rY���n��s;��������T� � � � ����������t�t������5s������ � c�������������������������e�Zd�ZdZdZdZdZdS�)ra���zCUsed by the TestSuite to hold previous class when running in debug.NF)rP���rQ���rR���rS���r]���rX���r@���r ���r���r���ra���ra���w��s%��������������I�I������J�J�Jr���ra���) rS���rx�����r���r���� __unittestr����objectr���r���r����rY���ra���r ���r���r����<module>r�������s�������� � � � ������������������������� � ������ I��I��I��I��I�F��I��I��I�Xi6��i6��i6��i6��i6� ��i6��i6��i6�X$��$��$��$��$�6��$��$��$�L��������������6����������r���