Edit File: test_linux.cpython-311.pyc
� ����n�d7t����������������������� ����d�Z�ddlmZ�ddlZddlZddlZddlZddlZddlZddl Z ddl Z ddlZddlZddl Z ddlZddlZddlZddlZddlmZ�ddlmZ�ddlmZ�ddlmZ�ddlmZ�dd lmZ�dd lmZ�ddlmZ�ddlmZ�dd lmZ�ddlmZ�ddlmZ�ddlm Z �ddlm!Z!�ddlm"Z"�ddlm#Z#�ddlm$Z$�ddlm%Z%�ddlm&Z&�ddlm'Z'�ddlm(Z(�ddlm)Z)�ddlm*Z*�ddlm+Z+�erddl,m-Z-�ddl,m.Z.�ddl,m/Z/�ddl,m0Z0�ej1���������2��������������������ej1���������3��������������������e4������������������������Z5d Z6d!Z7d"Z8d#Z9d$Z:erd%Z;�ej��������d&�������������Z<d'��Z=d(��Z>d)��Z?d*��Z@d+��ZAd,��ZBd-��ZCd.��ZDd/��ZEejF��������d0����������������ZGejF��������d1����������������ZH�ejI��������e�d2�������������G�d3��d4e"��������������������������ZJ�ejI��������e�d2�������������G�d5��d6e"��������������������������ZK�ejI��������e�d2�������������G�d7��d8e"��������������������������ZL�ejI��������e�d2�������������G�d9��d:e"��������������������������ZM�ejI��������e�d2�������������G�d;��d<e"��������������������������ZN�ejI��������e�d2�������������G�d=��d>e"��������������������������ZO�ejI��������e�d2�������������G�d?��d@e"��������������������������ZP�ejI��������e�d2�������������G�dA��dBe"��������������������������ZQ�ejI��������e�d2�������������G�dC��dDe"��������������������������ZR�ejI��������e�d2�������������G�dE��dFe"��������������������������ZS�ejI��������e�d2�������������G�dG��dHe"��������������������������ZT�ejI��������e�d2�������������G�dI��dJe"��������������������������ZU�ejI��������e�d2�������������G�dK��dLe"��������������������������ZV�ejI��������e�d2�������������G�dM��dNe"��������������������������ZW�ejI��������e�d2�������������G�dO��dPe"��������������������������ZX�ejI��������e�d2�������������G�dQ��dRe"��������������������������ZY�ejI��������e�d2�������������G�dS��dTe"��������������������������ZZ�ejI��������e�d2�������������G�dU��dVe"��������������������������Z[�ejI��������e�d2�������������ejI��������e�dW�������������G�dX��dYe"����������������������������������������Z\�ejI��������e�d2�������������G�dZ��d[e"��������������������������Z]�ejI��������e�d2�������������G�d\��d]e"��������������������������Z^�ejI��������e�d2�������������G�d^��d_e"��������������������������Z_�ejI��������e�d2�������������G�d`��dae"��������������������������Z`�ejI��������e�d2�������������G�db��dce"��������������������������Za�ejI��������e�d2�������������G�dd��dee"��������������������������Zbecdfk����rddgldmeZe��eee4�������������dS�dS�)hzLinux specific tests.�����)�divisionN)�LINUX)�PY3)�FileNotFoundError)� basestring)�u)�GITHUB_ACTIONS)�GLOBAL_TIMEOUT)�HAS_BATTERY)�HAS_CPU_FREQ)�HAS_GETLOADAVG)� HAS_RLIMIT)�PYPY)�TOLERANCE_DISK_USAGE)�TOLERANCE_SYS_MEM)�PsutilTestCase)� ThreadTask)� call_until)�mock)� reload_module)�retry_on_failure)�safe_rmpath)�sh)�skip_on_not_implemented)�which)�CLOCK_TICKS)�RootFsDeviceFinder)�calculate_avail_vmem)�open_binaryi���i���i'���i���i���i���z/sys/class/hwmon/hwmon*c����������������������dd�l�}|�d�d����������}�t����������rt����������|�d������������}�t����������j��������t����������j��������t����������j��������������������}t ����������j��������|������������5��t����������j��������|� ��������������������|� ����������������������������������t����������t����������j ��������d|�������������������������dd����������������������cd�d�d��������������S�#�1�swxY�w�Y���d�S��Nr��������ascii�256s��������)�fcntlr����bytes�socket�AF_INET� SOCK_DGRAM� contextlib�closing� inet_ntoa�ioctl�fileno�SIOCGIFADDR�struct�pack��ifnamer'����ss��� �j/builddir/build/BUILD/cloudlinux-venv-1.0.2/venv/lib64/python3.11/site-packages/psutil/tests/test_linux.py�get_ipv4_addressr8���L���s������L�L�L� �C�R�C�[�F� ��(��v�w�'�'��� �f�n�f�&7�8�8�A� � �A� � ��=��=����K�K���� � �#���F�F�3�3� 5�� 5�57��U� <�=��=�=��=��=��=��=��=��=��=��=��=��=��=�����=��=��=��=��=��=�����#AC�C�Cc����������������������dd�l�}|�d�d����������}�t����������rt����������|�d������������}�t����������j��������t����������j��������t����������j��������������������}t ����������j��������|������������5��t����������j��������|� ��������������������|� ����������������������������������t����������t����������j ��������d|�������������������������dd����������������������cd�d�d��������������S�#�1�swxY�w�Y���d�S�r!���)r'���r���r(���r)���r*���r+���r,���r-���r.���r/���r0����SIOCGIFNETMASKr2���r3���r4���s��� r7����get_ipv4_netmaskr<���Y����������L�L�L� �C�R�C�[�F� ��(��v�w�'�'��� �f�n�f�&7�8�8�A� � �A� � ��=��=����K�K���� � �&���F�F�3�3� 5�� 5�57��U� <�=��=�=��=��=��=��=��=��=��=��=��=��=��=�����=��=��=��=��=��=r9���c����������������������dd�l�}|�d�d����������}�t����������rt����������|�d������������}�t����������j��������t����������j��������t����������j��������������������}t ����������j��������|������������5��t����������j��������|� ��������������������|� ����������������������������������t����������t����������j ��������d|�������������������������dd����������������������cd�d�d��������������S�#�1�swxY�w�Y���d�S�r!���)r'���r���r(���r)���r*���r+���r,���r-���r.���r/���r0����SIOCGIFBRDADDRr2���r3���r4���s��� r7����get_ipv4_broadcastr@���f���r=���r9���c�����������������������t����������dd������������5�}g�}|�����������������������������������D�]7}|�����������������������������������}|d���������|�k����r|���������������������|��������������8t ����������|������������dk����rt����������d|�z��������������� �d�d�d��������������n#�1�swxY�w�Y���t ����������dt ����������|������������������������D�]�}||���������d���������}g�}t ����������dt ����������|������������d������������D�]"}|���������������������|||dz���������������������������#d���������������������|������������} t����������j ��������t����������j ��������| ������������} t����������j��������t����������j ��������| ������������||<�����|S�)Nz/proc/net/if_inet6�rt���r���zcould not find interface %r�����:)�open� readlines�split�append�len� ValueError�range�joinr)���� inet_pton�AF_INET6� inet_ntop)r5����f� all_fields�line�fields�i�unformatted�groups�j� formatted�packeds��� r7����get_ipv6_addressesr[���s���s������ �"�D� )� )��E�Q�� ��K�K�M�M�� *�� *�D��Z�Z�\�\�F��b�z�V�#�#��!�!�&�)�)�)���z�?�?�a����:�V�C�D�D�D�� �E��E��E��E��E��E��E��E��E��E��E�����E��E��E��E���1�c�*�o�o� &� &��B��B�� ��m�A�&�����q�#�k�*�*�A�.�.�� 0�� 0�A��M�M�+�a��A��g�.�/�/�/�/��H�H�V�$�$� ��!�&�/�9�=�=���(���&�A�A� �1� � ��s����A4B�B�Bc����������� ������������dd�l�}|�d�d����������}�t����������rt����������|�d������������}�t����������j��������t����������j��������t����������j��������������������}t ����������j��������|������������5��|���������������������|� ����������������������������������t����������t����������j��������d|�������������������������}t����������rd���ndd�l }|j���������d����������������������fd�|dd ����������D���������������������������d�d ����������cd�d�d��������������S�#�1�swxY�w�Y���d�S�)Nr���r"���r#���r$���c�����������������������|�S��N����xs��� r7����ordzget_mac_address.<locals>.ord����s��������������c������������������,������g�|�]}d���|������������z����S�)z%02x:r_���)�.0�charrb���s��� �r7���� <listcomp>z#get_mac_address.<locals>.<listcomp>����s&�������D�D�D���#�#�d�)�)�+�D�D�Drc�������r&���rC���)r'���r���r(���r)���r*���r+���r,���r-���r/���r0���� SIOCGIFHWADDRr2���r3����__builtin__rb���rM���)r5���r'���r6����infork���rb���s��� @r7����get_mac_addressrm�������se�������L�L�L� �C�R�C�[�F� ��(��v�w�'�'��� �f�n�f�&7�8�8�A� � �A� � �� K�� K��{�{� �H�H�J�J� �v�{�6�6�'B�'B�D��D���� "� �� �� �� �� �����/�C��w�w�D�D�D�D��R��U��D�D�D�E�E�c�r�c�J� K�� K�� K�� K�� K�� K�� K�� K�� K�� K�� K�� K����� K�� K�� K�� K�� K�� Ks����$BC9�9C=��C=c�����������������������t����������ddgddi�������������}�|����������������������d������������}|D�]{}|���������������������d������������rd|�����������������������������������\��}}}}t����������j��������dd������������}�|t����������|������������t����������|������������t����������|������������������������c�S��|t ����������d d���������������������|������������z���������������) zQParse 'free' cmd and return swap memory's s total, used and free values. �free�-b�LANG�C.UTF-8��env� �Swapztotal used freez&can't find 'Swap' in 'free' output: %s)r���rH���� startswith�collections� namedtuple�intrK���rM���)�out�linesrS����_�total�usedro����nts��� r7���� free_swapr��������s�������� �f�d�^�&�)�!4� 5� 5� 5�C��I�I�d�O�O�E���8��8���?�?�6�"�"�� 8�#'�:�:�<�<� �A�u�d�D��'��0A�B�B�B��2�c�%�j�j�#�d�)�)�S��Y�Y�7�7�7�7�7� 8���1�D�I�I�e�4D�4D�D�F��F��Frc���c�������������������v����t����������ddgddi�������������}�|����������������������d������������}|D�]h}|���������������������d������������rQd��|�����������������������������������d d ����������D���������������\��}}}}t����������j��������dd������������}�||||||�������������c�S��it����������dd���������������������|������������z���������������) zSParse 'free' cmd and return physical memory's total, used and free values. ro���rp���rq���rr���rs���ru����Memc������������������,�����g�|�]}t����������|��������������S�r_���)rz����rf���ra���s��� r7���rh���z free_physmem.<locals>.<listcomp>����s������3�3�3�A��Q���3�3�3rc�����������ztotal used free shared outputz%can't find 'Mem' in 'free' output: %s)r���rH���rw���rx���ry���rK���rM���)r{���r|���rS���r~���r���ro����sharedr����s��� r7����free_physmemr��������s�������� �f�d�^�&�)�!4� 5� 5� 5�C��I�I�d�O�O�E���6��6���?�?�5�!�!�� 6�3�3������a��c�!2�3�3�3�� &�E�4��v��'��7�9��9�B��2�e�T�4���5�5�5�5�5� 6���0�4�9�9�U�3C�3C�C�E��E��Erc���c����������������������t����������ddgddi�������������}|���������������������d������������D�]D}|�����������������������������������}|�|v�r*t����������|���������������������d������������d���������������������c�S��Et ����������d |�z���������������) N�vmstatz-srq���rr���rs���ru���� r���z can't find %r in 'vmstat' output)r���rH����striprz���rK���)�statr{���rS���s��� r7���r����r��������s������� �h�� �F�I�#6� 7� 7� 7�C�� � �$����+��+���z�z�|�|���4�<�<��t�z�z�#���q�)�*�*�*�*�*��� �7�$�>� ?� ?�?rc���c������������ �����������t����������ddg�����������������������������������������������}�d|�v�rt����������j��������d�������������t ����������t����������t����������t����������j��������d|�� ����������������������������������d���������������������������������������������S�)Nro���z-V�UNKNOWNzcan't determine free versionz\d+rC���) r���r�����unittest�SkipTest�tuple�maprz����re�findallrH���)r{���s��� r7����get_free_version_infor��������sl������ �f�d�^� � � "� "� $� $�C��C����� >�?�?�?���S�"�*�V�S�Y�Y�[�[��_�=�=�>�>�?�?�?rc���c��������������#�����������K��������fd�}t������������t����������rdnd}t����������j��������|d|�������������5�}|V���ddd�������������dS�#�1�swxY�w�Y���dS�)zMock open() builtin and forces it to return a certain `content` on read() if the path being opened matches `for_path`. c�������������������������|��k����rXt�����������r=t�����������t����������������������rt����������j���������������������S�t����������j���������������������S�t����������j���������������������S���|�g|�R�i�|��S�r^���)r���� isinstancer����io�StringIO�BytesIO)�name�args�kwargs�content�for_path� orig_opens��� ���r7���� open_mockz$mock_open_content.<locals>.open_mock����sx��������8����� +��g�z�2�2��/��;�w�/�/�/��:�g�.�.�.��z�'�*�*�*��9�T�3�D�3�3�3�F�3�3�3rc���� builtins.open�__builtin__.openT��create�side_effectN�rF���r���r����patch)r����r����r�����patch_point�mr����s���`` @r7����mock_open_contentr��������s�������������� 4�� 4�� 4�� 4�� 4�� 4�� 4���I�%(�@�/�/�.@�K� ��K��)� D� D� D��������������������������������������������������A�A�Ac��������������#�����������K��������fd�}t������������t����������rdnd}t����������j��������|d|�������������5�}|V���ddd�������������dS�#�1�swxY�w�Y���dS�)zZMock open() builtin and raises `exc` if the path being opened matches `for_path`. c������������������,������|��k����r����|�g|�R�i�|��S�r^���r_���)r����r����r�����excr����r����s��� ���r7���r����z&mock_open_exception.<locals>.open_mock����s3��������8����I��9�T�3�D�3�3�3�F�3�3�3rc���r����r����Tr����Nr����)r����r����r����r����r����r����s���`` @r7����mock_open_exceptionr��������s�������������� 4��4��4��4��4��4��4���I�%(�@�/�/�.@�K� ��K��)� D� D� D���������������������������������������������r����z LINUX onlyc�������������������������e�Zd�Zd��Z�e��������������d����������������Z�e��������������d����������������Z�e��������������d����������������Z�e��������������d����������������ZdS�)�"TestSystemVirtualMemoryAgainstFreec�����������������������t������������������������j��������}t����������j����������������������j��������}|����������������������||�������������d�S�r^���)r����r~����psutil�virtual_memory�assertEqual��self� cli_value�psutil_values��� r7���� test_totalz-TestSystemVirtualMemoryAgainstFree.test_total����s;������ �N�N�(� ��,�.�.�4������L�1�1�1�1�1rc���c������������������������t������������������������dk�����r|����������������������d�������������t������������������������j��������}t ����������j����������������������j��������}|����������������������||t������������������������d�S�)N�����r���������old free version��delta)r�����skipTestr����r���r����r�����assertAlmostEqualr���r����s��� r7���� test_usedz,TestSystemVirtualMemoryAgainstFree.test_used��ss�������!�"�"�Z�/�/��-�-� 2�3�3�3� �N�N�'� ��,�.�.�3�����y�,�%6�� �� 8�� 8�� 8�� 8�� 8rc���c�����������������������t������������������������j��������}t����������j����������������������j��������}|����������������������||t ������������������������d�S��Nr����)r����ro���r����r����r����r���r����s��� r7���� test_freez,TestSystemVirtualMemoryAgainstFree.test_free��sM������ �N�N�'� ��,�.�.�3�����y�,�%6�� �� 8�� 8�� 8�� 8�� 8rc���c����������� �������������t������������������������}|j��������}|dk����rt����������j��������d�������������t ����������j����������������������j��������}|����������������������||t����������|�d|�d|j������������������������d�S�)Nr���z%free does not support 'shared' columnr����� �r�����msg) r����r����r����r����r����r����r����r����output)r����ro���� free_valuer����s��� r7����test_sharedz.TestSystemVirtualMemoryAgainstFree.test_shared��s��������~�~���[� ���?�?��#�$K�L�L�L��,�.�.�5�������,=� *� � �L�L�L�$�+�+�F�� �� H�� H�� H�� H�� Hrc���c����������� �������d����t����������ddg������������}|���������������������d������������}d|d���������vrt����������j��������d�������������t ����������|d��������������������������������������������d���������������������}t����������j����������������������j��������}|����������������������||t����������|�d |�d |����������������d�S�)Nro���rp���ru���� availabler���z(free does not support 'available' columnr����rC���r����r����r����) r���rH���r����r����rz���r����r����r����r����r���)r����r{���r|���r����r����s��� r7����test_availablez1TestSystemVirtualMemoryAgainstFree.test_available#��s���������&�$�� � ��� � �$�����e�A�h�&�&��#�$N�O�O�O��U�1�X�^�^�-�-�b�1�2�2�J�!�0�2�2�<�L��"�"��L�0A�$.�J�J����c�c�B�� #�� D�� D�� D�� D�� Drc���N) �__name__� __module__�__qualname__r����r���r����r����r����r����r_���rc���r7���r����r��������s���������������2��2��2� ����� 8�� 8���� 8������8��8����8������H��H����H������D��D����D��D��Drc���r����c��������������������������e�Zd�Zd��Z�e��������������d����������������Z�e��������������d����������������Z�e��������������d����������������Z�e��������������d����������������Z�e��������������d����������������Z dS�)�$TestSystemVirtualMemoryAgainstVmstatc�����������������������t����������d������������dz��}t����������j����������������������j��������}|����������������������||t ������������������������d�S�)Nztotal memory����r����)r����r����r����r~���r����r����r�����vmstat_valuer����s��� r7���r����z/TestSystemVirtualMemoryAgainstVmstat.test_total6��sY�������n�-�-��4���,�.�.�4������,�.?�� �� A�� A�� A�� A�� Arc���c������������������������t������������������������dk�����r|����������������������d�������������t����������d������������dz��}t����������j����������������������j��������}|����������������������||t������������������������d�S�)Nr����r����zused memoryr����r����)r����r����r����r����r����r���r����r���r����s��� r7���r����z.TestSystemVirtualMemoryAgainstVmstat.test_used<��s�������!�"�"�Z�/�/��-�-� 2�3�3�3��m�,�,�t�3���,�.�.�3������,�.?�� �� A�� A�� A�� A�� Arc���c�����������������������t����������d������������dz��}t����������j����������������������j��������}|����������������������||t ������������������������d�S�)Nzfree memoryr����r����)r����r����r����ro���r����r���r����s��� r7���r����z.TestSystemVirtualMemoryAgainstVmstat.test_freeI��sY�������m�,�,�t�3���,�.�.�3������,�.?�� �� A�� A�� A�� A�� Arc���c�����������������������t����������d������������dz��}t����������j����������������������j��������}|����������������������||t ������������������������d�S�)Nz buffer memoryr����r����)r����r����r�����buffersr����r���r����s��� r7����test_buffersz1TestSystemVirtualMemoryAgainstVmstat.test_buffersP��sY�������o�.�.��5���,�.�.�6������,�.?�� �� A�� A�� A�� A�� Arc���c�����������������������t����������d������������dz��}t����������j����������������������j��������}|����������������������||t ������������������������d�S�)Nz active memoryr����r����)r����r����r�����activer����r���r����s��� r7����test_activez0TestSystemVirtualMemoryAgainstVmstat.test_activeW��sY�������o�.�.��5���,�.�.�5������,�.?�� �� A�� A�� A�� A�� Arc���c�����������������������t����������d������������dz��}t����������j����������������������j��������}|����������������������||t ������������������������d�S�)Nzinactive memoryr����r����)r����r����r�����inactiver����r���r����s��� r7���� test_inactivez2TestSystemVirtualMemoryAgainstVmstat.test_inactive^��sZ�������/�0�0�4�7���,�.�.�7������,�.?�� �� A�� A�� A�� A�� Arc���N) r����r����r����r����r���r����r����r����r����r����r_���rc���r7���r����r����3��s���������������A��A��A������ A�� A���� A������A��A����A������A��A����A������A��A����A������A��A����A��A��Arc���r����c��������������������R�����e�Zd�Zd��Z�e��������������d����������������Zd��Zd��Zd��Zd��Z dS�)�TestSystemVirtualMemoryMocksc������������������Z����t����������dt����������j��������d�����������������������������������������������������������5�}t ����������j��������d�������������5�}t ����������j��������d�������������t����������j����������������������}|j ��������sJ��|�� ��������������������t����������|������������d�������������|d���������}|����������������������dt����������|j���������������������������������|����������������������d t����������|j���������������������������������|����������������������d t����������|j���������������������������������|����������������������dt����������|j���������������������������������|����������������������dt����������|j���������������������������������|����������������������d t����������|j���������������������������������|����������������������dt����������|j���������������������������������|�� ��������������������|j��������d�������������|�� ��������������������|j��������d�������������|�� ��������������������|j��������d�������������|�� ��������������������|j��������d�������������|�� ��������������������|j��������d�������������|�� ��������������������|j��������d�������������|�� ��������������������|j��������d�������������d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)N� /proc/meminfoap�� Active(anon): 6145416 kB Active(file): 2950064 kB Inactive(anon): 574764 kB Inactive(file): 1567648 kB MemAvailable: -1 kB MemFree: 2057400 kB MemTotal: 16325648 kB SReclaimable: 346648 kB T��record�alwaysr����r���z#memory stats couldn't be determined�cachedr����r����r����r����r����)r�����textwrap�dedent�encode�warnings�catch_warnings�simplefilterr����r�����calledr����rJ����assertIn�str�messager����r����r����r����r����r�����slab�r����r�����ws�ret�ws��� r7����test_warnings_on_missesz4TestSystemVirtualMemoryMocks.test_warnings_on_missesi��s����������O�� �� �� ���V�X�X����� .��#$��(��5�5�5�� .���%�h�/�/�/��+�-�-���x����� � ��R���!�,�,�,��q�E��� � �9�3�q�y�>�>�K��K��K�� � �h��A�I���7�7�7�� � �h��A�I���7�7�7�� � �h��A�I���7�7�7�� � �j�#�a�i�.�.�9�9�9�� � �i��Q�Y���8�8�8�� � �k�3�q�y�>�>�:�:�:�� � ���Q�/�/�/�� � ���Q�/�/�/�� � ���q�1�1�1�� � ���Q�/�/�/�� � ���a�0�0�0�� � ����2�2�2�� � ���1�-�-�-�) .�� .�� .�� .�� .�� .�� .�� .�� .�� .�� .����� .�� .�� .�� .� .�� .�� .�� .�� .�� .�� .�� .�� .�� .�� .�� .����� .�� .�� .�� .�� .�� .s6����J �H1J�<J �J �J �J �J � J$�'J$c������������������d����i�}t����������d������������5�}|D�]7}|�����������������������������������}t����������|d���������������������dz��||d���������<����8 �d�d�d��������������n#�1�swxY�w�Y���t����������|������������}d|v�r8|d���������}t ����������||z ��������������|z��dz��}|����������������������|d�������������d�S�d�S�)Nr����r����r����r���s ���MemAvailable:�d���r"���)r���rH���rz���r����abs� assertLess)r�����memsrQ���rS���rT����a�b�diff_percents��� r7����test_avail_old_percentz3TestSystemVirtualMemoryMocks.test_avail_old_percent���s�������� �� )� )�� 8�Q��� 8�� 8��������"%�f�Q�i�.�.�4�"7��V�A�Y��� 8� 8�� 8�� 8�� 8�� 8�� 8�� 8�� 8�� 8�� 8�� 8����� 8�� 8�� 8�� 8� � !��&�&���t�#�#��%�&�A��q�1�u�:�:��>�C�/�L��O�O�L�"�-�-�-�-�-��$�#s����;A�A�!Ac�����������������������t����������dt����������j��������d�����������������������������������������������������������5�}t ����������j��������d�������������5�}t ����������j����������������������}d�d�d��������������n#�1�swxY�w�Y���|j��������sJ��|�� ��������������������|j ��������d�������������|d���������}|����������������������dt����������|j ���������������������������������d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)Nr����aL�� Active: 9444728 kB Active(anon): 6145416 kB Active(file): 2950064 kB Buffers: 287952 kB Cached: 4818144 kB Inactive(file): 1578132 kB Inactive(anon): 574764 kB Inactive(file): 1567648 kB MemAvailable: 6574984 kB MemFree: 2057400 kB MemTotal: 16325648 kB Shmem: 577588 kB SReclaimable: 346648 kB Tr����l���� �"�r����,inactive memory stats couldn't be determined�r����r����r����r����r����r����r����r����r����r����r����r����r����r����r����s��� r7���� test_avail_old_comes_from_kernelz=TestSystemVirtualMemoryMocks.test_avail_old_comes_from_kernel���ss���������O���� �� ���V�X�X�!���� P� �#$��(��5�5�5�� .���+�-�-�� .�� .�� .�� .�� .�� .�� .�� .�� .�� .�� .����� .�� .�� .�� .��8�O�O�O����S�]�N�;�;�;��1��A��M�M�>��A�I��� P�� P�� P�- P�� P�� P�� P�� P�� P�� P�� P�� P�� P�� P�� P����� P�� P�� P�� P�� P�� P�6����C�A+�C�+A/ �/C�2A/ �3AC�C�Cc�����������������������t����������dt����������j��������d�����������������������������������������������������������5�}t ����������j��������d�������������5�}t ����������j����������������������}d�d�d��������������n#�1�swxY�w�Y���|j��������sJ��|�� ��������������������|j ��������d�������������|d���������}|����������������������dt����������|j ���������������������������������d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)Nr����a��� Active: 9444728 kB Active(anon): 6145416 kB Buffers: 287952 kB Cached: 4818144 kB Inactive(file): 1578132 kB Inactive(anon): 574764 kB MemFree: 2057400 kB MemTotal: 16325648 kB Shmem: 577588 kB Tr���������`LG�r���r��r ��r����s��� r7����test_avail_old_missing_fieldsz:TestSystemVirtualMemoryMocks.test_avail_old_missing_fields���st���������O�� �� �� �� ����#��#�� P��'(��(��5�5�5�� .���+�-�-�� .�� .�� .�� .�� .�� .�� .�� .�� .�� .�� .����� .�� .�� .�� .��8�O�O�O����S�]�,K�L�L�L��1��A��M�M�>��A�I��� P�� P�� P�% P�� P�� P�� P�� P�� P�� P�� P�� P�� P�� P�� P����� P�� P�� P�� P�� P�� Pr��c����������� �������6����t����������dt����������j��������d�����������������������������������������������������������5��t ����������dt����������t����������j��������d������������������������5��t����������j ��������d�������������5�}t����������j����������������������}|����������������������|j ��������d�������������|d���������}|����������������������d t����������|j���������������������������������d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������d�S�#�1�swxY�w�Y���d�S�) Nr����aT�� Active: 9444728 kB Active(anon): 6145416 kB Active(file): 2950064 kB Buffers: 287952 kB Cached: 4818144 kB Inactive(file): 1578132 kB Inactive(anon): 574764 kB Inactive(file): 1567648 kB MemFree: 2057400 kB MemTotal: 16325648 kB Shmem: 577588 kB SReclaimable: 346648 kB z/proc/zoneinfo�no such file or directoryTr����r��r���r��)r����r����r����r����r�����IOError�errno�ENOENTr����r����r����r����r����r����r����r����r����)r����r����r����r���s��� r7����test_avail_old_missing_zoneinfoz<TestSystemVirtualMemoryMocks.test_avail_old_missing_zoneinfo���s������������ !�� �� �� ����#��#�� (�� (� �%�$��E�L�*E�F�F�H��H�� (�� (���,�D�9�9�9��(�R� �/�1�1�C��$�$�� �'F�H��H��H��1��A��M�M�F��A�I���(��(��(�(��(��(��(��(��(��(��(��(��(��(�����(��(��(��(� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (����� (�� (�� (�� (�! (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (����� (�� (�� (�� (�� (�� (sZ����)D�C6�4AC�C6�C#�#C6�&C#�'C6�*D�6C: �:D�=C: �>D�D�Dc������������������������fd�}t������������t����������rdnd}t����������j��������|d|�������������5�}t ����������j����������������������}|j��������sJ��|����������������������|j��������d�������������|����������������������|j ��������d�������������|����������������������|j ��������d�������������|����������������������|j��������d �������������|����������������������|j��������d �������������|����������������������|j ��������d�������������|����������������������|j��������d�������������|����������������������|j��������d �������������|����������������������|j��������d�������������d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)Nc������������������������|�dk����r8t����������j��������t����������j��������d�����������������������������������������������������������S���|�g|�R�i�|��S�)Nr����a= �� MemTotal: 100 kB MemFree: 2 kB MemAvailable: 3 kB Buffers: 4 kB Cached: 5 kB SwapCached: 6 kB Active: 7 kB Inactive: 8 kB Active(anon): 9 kB Inactive(anon): 10 kB Active(file): 11 kB Inactive(file): 12 kB Unevictable: 13 kB Mlocked: 14 kB SwapTotal: 15 kB SwapFree: 16 kB Dirty: 17 kB Writeback: 18 kB AnonPages: 19 kB Mapped: 20 kB Shmem: 21 kB Slab: 22 kB SReclaimable: 23 kB SUnreclaim: 24 kB KernelStack: 25 kB PageTables: 26 kB NFS_Unstable: 27 kB Bounce: 28 kB WritebackTmp: 29 kB CommitLimit: 30 kB Committed_AS: 31 kB VmallocTotal: 32 kB VmallocUsed: 33 kB VmallocChunk: 34 kB HardwareCorrupted: 35 kB AnonHugePages: 36 kB ShmemHugePages: 37 kB ShmemPmdMapped: 38 kB CmaTotal: 39 kB CmaFree: 40 kB HugePages_Total: 41 kB HugePages_Free: 42 kB HugePages_Rsvd: 43 kB HugePages_Surp: 44 kB Hugepagesize: 45 kB DirectMap46k: 46 kB DirectMap47M: 47 kB DirectMap48G: 48 kB )r����r����r����r����r�����r����r����r����r����s��� �r7���r����zJTestSystemVirtualMemoryMocks.test_virtual_memory_mocked.<locals>.open_mock���se���������&�&��z�(�/��13��1#��1#�b� ����c1#��1#��1#�f�!�y��7��7�7�7��7�7�7rc���r����r����Tr����i���i�������i�p��i�T��i���i� ��i�X������)rF���r���r���r����r����r����r����r����r~���ro���r����r����r����r����r����r����r����)r����r����r����r�����memr����s��� @r7����test_virtual_memory_mockedz7TestSystemVirtualMemoryMocks.test_virtual_memory_mocked���s�������5 8��5 8��5 8��5 8��5 8�n�� �),�D�o�o�2D�� �Z��D�i� H� H� H�� 6�A��'�)�)�C��8�O�O�O����S�Y� �3�3�3����S�X�x�0�0�0����S�[�(�3�3�3����S�Z��9�9�9����S�Z��3�3�3����S�Z��2�2�2����S�\�8�4�4�4����S�X�y�1�1�1����S�]�H�5�5�5� 6�� 6�� 6�� 6�� 6�� 6�� 6�� 6�� 6�� 6�� 6�� 6����� 6�� 6�� 6�� 6�� 6�� 6s����DE � E�EN) r����r����r����r��r���r ��r��r��r��r��r_���rc���r7���r����r����f��s���������������$.��$.��$.�L����� .�� .���� .�P��P��P�8P��P��P�2(��(��(�>G6��G6��G6��G6��G6rc���r����c�������������������������e�Zd�Zed����������������Zd��Z�e��������������d����������������Z�e��������������d����������������Zd��Z d��Z d��Zd��Zd S�) �TestSystemSwapMemoryc������������������������t����������d������������5�}�|������������������������������������}ddd�������������n#�1�swxY�w�Y���d|v�od|v�S�)z3Return True if /proc/meminfo provides swap metrics.r����Nz SwapTotal:z SwapFree:)rF����read)rQ����datas��� r7����meminfo_has_swap_infoz*TestSystemSwapMemory.meminfo_has_swap_infoE��s���������/� "� "�� �a��6�6�8�8�D� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� ��t�#�;��t�(;�;s����1�5�5c�����������������������t������������������������j��������}t����������j����������������������j��������}|����������������������||t �����������������������S�r����)r����r~���r�����swap_memoryr����r����r����r����r����s��� r7���r����zTestSystemSwapMemory.test_totalL��sD�������[�[�&� ��)�+�+�1���%�%���,=��&��?��?�� ?rc���c�����������������������t������������������������j��������}t����������j����������������������j��������}|����������������������||t �����������������������S�r����)r����r���r����r'��r����r���r(��s��� r7���r����zTestSystemSwapMemory.test_usedR���D�������[�[�%� ��)�+�+�0���%�%���,=��&��?��?�� ?rc���c�����������������������t������������������������j��������}t����������j����������������������j��������}|����������������������||t �����������������������S�r����)r����ro���r����r'��r����r���r(��s��� r7���r����zTestSystemSwapMemory.test_freeY��r*��rc���c������������������0����t����������j��������dd�������������5�}t����������j��������d�������������5�}t����������j��������d�������������t����������j����������������������}|j��������sJ��|����������������������t����������|������������d�������������|d���������}|�� ��������������������dt����������|j���������������������������������|����������������������|j ��������d�������������|����������������������|j��������d�������������d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������d�S�#�1�swxY�w�Y���d�S�) N�psutil._common.openT�r����r����r����r����r���z9'sin' and 'sout' swap memory stats couldn't be determined)r���r����r����r����r����r����r'��r����r����rJ���r����r����r�����sin�soutr����s��� r7����test_missing_sin_soutz*TestSystemSwapMemory.test_missing_sin_sout`��s������ �Z�-�d� ;� ;� ;�� .�q��(��5�5�5�� .���%�h�/�/�/��(�*�*���x����� � ��R���!�,�,�,��q�E��� � �$�%(���^�^�5��5��5��� � ���!�,�,�,�� � ���1�-�-�-� .�� .�� .�� .�� .�� .�� .�� .�� .�� .�� .����� .�� .�� .�� .� .�� .�� .�� .�� .�� .�� .�� .�� .�� .�� .�� .����� .�� .�� .�� .�� .�� .s5����D�B:C3�'D�3C7 �7D�:C7 �;D�D�Dc������������������T����t����������dt����������t����������j��������d������������������������5�}t ����������j��������d�������������5�}t ����������j��������d�������������t����������j����������������������}|j ��������sJ��|�� ��������������������t����������|������������d�������������|d���������}|����������������������dt����������|j���������������������������������|�� ��������������������|j��������d�������������|�� ��������������������|j��������d�������������d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������d�S�#�1�swxY�w�Y���d�S�) Nz/proc/vmstatr��Tr����r����r����r���zK'sin' and 'sout' swap memory stats couldn't be determined and were set to 0)r����r��r��r��r����r����r����r����r'��r����r����rJ���r����r����r����r/��r0��r����s��� r7����test_no_vmstat_mockedz*TestSystemSwapMemory.test_no_vmstat_mockedn��s������ �����&A�B�B�D��D�� .�GH��(��5�5�5�� .���%�h�/�/�/��(�*�*���x����� � ��R���!�,�,�,��q�E��� � �6��� �N�N�$��$��$��� � ���!�,�,�,�� � ���1�-�-�-� .�� .�� .�� .�� .�� .�� .�� .�� .�� .�� .����� .�� .�� .�� .� .�� .�� .�� .�� .�� .�� .�� .�� .�� .�� .�� .����� .�� .�� .�� .�� .�� .s5����D�B:D�9D�D � D�D � D�D!�$D!c����������������������|�������������������������������������st����������j��������d������������S�t����������j��������d������������5�}t����������j����������������������}d�d�d��������������n#�1�swxY�w�Y���|j��������rJ��dd�lm }�|� ����������������������������������\��}}}}}}}||z��}||z��}|����������������������|j��������|�������������|�� ��������������������|j��������|t������������������������d�S�)Nz!/proc/meminfo has no swap metricsz"psutil._pslinux.cext.linux_sysinfor���r����)r%��r�����skipr���r����r����r'��r�����psutil._psutil_linux� _psutil_linux� linux_sysinfor����r~���r����ro���r���)r����r�����swap�cextr}���r~���ro����unit_multipliers��� r7����test_meminfo_against_sysinfoz1TestSystemSwapMemory.test_meminfo_against_sysinfo���s+�������)�)�+�+�� F��=�!D�E�E�E� �Z�<� =� =�� (���%�'�'�D� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (����� (�� (�� (�� (��8����+�+�+�+�+�+�37�3E�3E�3G�3G�0��1�a��E�4�� �� �����������U�+�+�+����t�y�$�6G��H�H�H�H�Hs����A�A!�$A!c�����������������������t����������dd������������5�}t����������j�����������������������|j��������sJ�� �d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)Nr����rc���)r����r����r'��r�����r����r����s��� r7����#test_emulate_meminfo_has_no_metricsz8TestSystemSwapMemory.test_emulate_meminfo_has_no_metrics���s����������� 4� 4�� ���� � � ��8�O�O�O�O� �� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� �� �� s����<�A��A�N) r����r����r�����staticmethodr%��r����r���r����r����r1��r3��r<��r?��r_���rc���r7���r!��r!��B��s�����������������<��<���\�<�?��?��?������?��?����?������?��?����?�.��.��.�.��.��.�$I��I��I� ��������rc���r!��c�������������������������e�Zd�Zd��ZdS�)�TestSystemCPUTimesc������������������8����t����������j����������������������j��������}t����������j��������dt����������j����������������������d���������������������d���������}t����������t����������t����������|� ��������������������d������������������������������������}|dk����r|����������������������d|�������������n|����������������������d|�������������|dk����r|����������������������d|�������������n|����������������������d|�������������|d k����r|����������������������d |�������������d�S�|����������������������d |�������������d�S�)Nz \d+\.\d+\.\d+����r����.)rD�����������steal)rD��rF��r&����guest)r����rD��r���� guest_nice) r����� cpu_times�_fieldsr����r�����os�unamer����r����rz���rH���r�����assertNotIn)r����rT���� kernel_ver�kernel_ver_infos��� r7����test_fieldszTestSystemCPUTimes.test_fields���s ������!�#�#�+���Z� 0�"�(�*�*�Q�-�@�@��C� ���C��)9�)9�#�)>�)>� ?� ?�@�@���j�(�(��M�M�'�6�*�*�*�*����W�f�-�-�-��j�(�(��M�M�'�6�*�*�*�*����W�f�-�-�-��i�'�'��M�M�,��/�/�/�/�/����\�6�2�2�2�2�2rc���N)r����r����r����rR��r_���rc���r7���rB��rB�����s#��������������3��3��3��3��3rc���rB��c��������������������p����e�Zd�Z�ej��������ej�����������������������������d�������������d������������d����������������Z�ej��������ej�����������������������������d�������������d������������d����������������Z �ej���������e d�������������d������������d ����������������Z�ej���������e d �������������d������������d����������������Zd ��Z dS�)�TestSystemCPUCountLogical�/sys/devices/system/cpu/onlinez-/sys/devices/system/cpu/online does not existc������������������j����t����������d������������5�}|����������������������������������������������������������������������}d�d�d��������������n#�1�swxY�w�Y���dt����������|������������v�rTt ����������|���������������������d������������d���������������������dz���}|����������������������t����������j����������������������|�������������d�S�d�S�)NrU���-r����) rF���r#��r����r����rz���rH���r����r����� cpu_count)r����rQ����values��� r7����test_against_sysdev_cpu_onlinez8TestSystemCPUCountLogical.test_against_sysdev_cpu_online���s���������2� 3� 3�� %�q��F�F�H�H�N�N�$�$�E� %�� %�� %�� %�� %�� %�� %�� %�� %�� %�� %����� %�� %�� %�� %��#�e�*�*�������C�(�(��+�,�,�q�0�E����V�-�/�/��7�7�7�7�7���s����'A�A� A�/sys/devices/system/cpuz&/sys/devices/system/cpu does not existc�����������������������t����������j��������d������������}t����������d��|D���������������������������}|����������������������t ����������j����������������������|�������������d�S�)Nr[��c������������������<�����g�|�]}t����������j��������d�|�������������|��S�)zcpu\d+$)r�����searchr����s��� r7���rh���zITestSystemCPUCountLogical.test_against_sysdev_cpu_num.<locals>.<listcomp>���s)������K�K�K�1�b�i� �A�&>�&>�&J�Q�&J�&J�&Jrc���)rM���listdirrJ���r����r����rX��)r�����ls�counts��� r7����test_against_sysdev_cpu_numz5TestSystemCPUCountLogical.test_against_sysdev_cpu_num���sU��������Z�1� 2� 2���K�K��K�K�K�L�L������)�+�+�U�3�3�3�3�3rc����nprocznproc utility not availablec�����������������������t����������t����������d������������������������}|����������������������t����������j��������d�������������|�������������d�S�)Nznproc --allT��logical)rz���r���r����r����rX��)r�����nums��� r7����test_against_nprocz,TestSystemCPUCountLogical.test_against_nproc���sA�������"�]�#�#�$�$������)�$�7�7�7��=�=�=�=�=rc����lscpu�lscpu utility not availablec������������������������t����������d������������}t����������d��|���������������������d������������D���������������������������}|����������������������t ����������j��������d�������������|�������������d�S�)N�lscpu -pc������������������<�����g�|�]}|����������������������d��������������|��S�)�#�rw���r����s��� r7���rh���z@TestSystemCPUCountLogical.test_against_lscpu.<locals>.<listcomp>���s)������G�G�G��Q�\�\�#�5F�5F�G�1�G�G�Grc���ru���Tre��)r���rJ���rH���r����r����rX��)r����r{���rg��s��� r7����test_against_lscpuz,TestSystemCPUCountLogical.test_against_lscpu���s]��������n�n���G�G�c�i�i��o�o�G�G�G�H�H������)�$�7�7�7��=�=�=�=�=rc���c������������������b����dd�l�}|j�������������������������������������������}t����������j��������dt �����������������������5�}|����������������������|j�������������������������������������������|�������������|j��������sJ��t����������j��������dd�������������5�}|����������������������|j��������������������������������������������������������|����������������������|j ��������d�������������|����������������������|j ��������d���������d���������d�������������d�d�d��������������n#�1�swxY�w�Y���t����������d d ������������5�}|�����������������������������������}d�d�d��������������n#�1�swxY�w�Y���t����������j��������|������������}t����������j��������d|d�������������5�}|����������������������|j�������������������������������������������|�������������d�d�d��������������n#�1�swxY�w�Y���t����������d d������������5�}|����������������������|j�������������������������������������������|�������������|j��������sJ�� �d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������d�S�#�1�swxY�w�Y���d�S�) Nr���zpsutil._pslinux.os.sysconf�r����r-��Tr.��rD��� /proc/stat� /proc/cpuinfo�rb��return_valuer����rc���)�psutil._pslinux�_pslinux�cpu_count_logicalr���r����rK���r����r�����assertIsNone� call_count� call_argsrF���r#��r����r����r����)r����r�����originalr����rQ����cpuinfo_data� fake_files��� r7����test_emulate_fallbacksz0TestSystemCPUCountLogical.test_emulate_fallbacks���sf����������?�4�4�6�6����Z�,�*�F��F��F�� �IJ����V�_�>�>�@�@�(�K�K�K��8�O�O�O����1�$�?�?�?�� B�1��!�!�&�/�"C�"C�"E�"E�F�F�F�� � ���q�1�1�1�� � ���Q���!2�L�A�A�A� B�� B�� B�� B�� B�� B�� B�� B�� B�� B�� B����� B�� B�� B�� B���o�t�,�,�� (�� �v�v�x�x�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (����� (�� (�� (�� (�� �<�0�0�I���1�)2�4�A��A��A�� P�DE�� � ���!B�!B�!D�!D�h�O�O�O� P�� P�� P�� P�� P�� P�� P�� P�� P�� P�� P����� P�� P�� P�� P��#�?�C�8�8�� �A�� � ���!B�!B�!D�!D�h�O�O�O��x����� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� �1 �� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� �� �� s�����A H$�A/D�5H$�D �H$�D � H$�D=�1H$�=E �H$�E �.H$�3.F-�!H$�-F1 �1H$�4F1 �5H$�7H��H$�H �H$�H �H$�$H(�+H(N)r����r����r����r�����skipIfrM���path�existsrZ��rb��r���rh��rp��r���r_���rc���r7���rT��rT�����s���������������X�_�����(H�I�I�I�D�F��F�8��8�F��F�8���X�_�����(A�B�B�B�=�?��?�4��4�?��?�4� ��X�_���w���'�)F�G�G�>��>��H�G�>���X�_���w���'�)F�G�G�>��>��H�G�>� �� �� �� �� rc���rT��c��������������������b�����e�Zd�Z�ej���������ed�������������d������������d����������������Zd��Zd��ZdS�)�TestSystemCPUCountCoresri��rj��c������������������f����t����������d������������}t������������������������}|���������������������d������������D�]G}|���������������������d������������s0|���������������������d������������}|���������������������|d�����������������������H|����������������������t ����������j��������d�������������t����������|�������������������������d�S�)Nrl��ru���rn���,r����Fre��) r����setrH���rw����addr����r����rX��rJ���)r����r{����core_idsrS���rT���s��� r7���rp��z*TestSystemCPUCountCores.test_against_lscpu���s���������n�n���5�5���I�I�d�O�O�� (�� (�D��?�?�3�'�'�� (����C�������V�A�Y�'�'�'������)�%�8�8�8�#�h�-�-�H�H�H�H�Hrc���c������������������"����t�����������j�������������������������������������������}t����������j��������dg��������������5�}t�����������j�������������������������������������������}|j��������sJ�� �d�d�d��������������n#�1�swxY�w�Y���|�|����������������������||�������������d�S�d�S�)N� glob.glob�rw��)r����ry���cpu_count_coresr���r����r����r����)r�����meth_1r�����meth_2s��� r7���� test_method_2z%TestSystemCPUCountCores.test_method_2���s���������0�0�2�2�� �Z��"� 5� 5� 5�� ���_�4�4�6�6�F��8�O�O�O�O� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� �������V�V�,�,�,�,�,���s����(A*�*A.�1A.c������������������D����t����������j��������dg��������������5�}t����������j��������dd�������������5�}|����������������������t����������j��������������������������������������������������������d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������n#�1�swxY�w�Y���|j��������sJ��|j��������sJ��d�S�)Nr���r���r-��Tr.��)r���r����r{��r����ry��r���r����)r�����m1�m2s��� r7����test_emulate_nonez)TestSystemCPUCountCores.test_emulate_none��s7����� �Z��"� 5� 5� 5�� E����1�$�?�?�?�� E�2��!�!�&�/�"A�"A�"C�"C�D�D�D� E�� E�� E�� E�� E�� E�� E�� E�� E�� E�� E����� E�� E�� E�� E� E�� E�� E�� E�� E�� E�� E�� E�� E�� E�� E����� E�� E�� E�� E���y�����y�����s4����B�2A,� B�,A0 �0B�3A0 �4B�B� BN) r����r����r����r����r���r���rp��r���r���r_���rc���r7���r���r������sl����������������X�_���w���'�)F�G�G�I��I��H�G�I�-��-��-���������rc���r���c������������������������e�Zd�Z�ej��������e�d������������d����������������Z�ej��������e�d������������d����������������Z�ej��������e�d������������d����������������Z�ej��������e�d������������d����������������Z �ej��������e�d������������d����������������Z dS�)�TestSystemCPUFrequency� not supportedc�������������������������fd�}t�����������j��������j���������t����������j��������d|d�������������5��t����������j����������������������sJ�� �d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)Nc������������������H������|�����������������������d������������rdS���|�������������S�)N�&/sys/devices/system/cpu/cpufreq/policyFro��)r����orig_existss��� �r7����path_exists_mockzMTestSystemCPUFrequency.test_emulate_use_second_file.<locals>.path_exists_mock��s-����������G�H�H�� )��u�"�{�4�(�(�(rc����os.path.existsT)r����r����)rM��r���r���r���r����r�����cpu_freq)r����r���r���s��� @r7����test_emulate_use_second_filez3TestSystemCPUFrequency.test_emulate_use_second_file��s�������� )�� )�� )�� )�� )���g�n�� �Z�(�6F�#�%��%��%�� %�� %��?�$�$�$�$�$�$� %�� %�� %�� %�� %�� %�� %�� %�� %�� %�� %�� %����� %�� %�� %�� %�� %�� %s����A�A�Ac������������������������fd�}t�����������j��������j��������� �t����������j��������d|�������������5��t����������t����������j���������������������t ����������j����������������������}|sJ��|�� ��������������������|j ��������d�������������|�� ��������������������|j��������d�������������t ����������j��������d�������������D�]8}|�� ��������������������|j ��������d�������������|�� ��������������������|j��������d��������������9 �d�d�d��������������n#�1�swxY�w�Y���t����������t����������j���������������������t����������t�����������������������d�S�#�t����������t����������j���������������������t����������t�����������������������w�xY�w)Nc������������������H������|�����������������������d������������rdS���|�������������S�)Nz/sys/devices/system/cpu/Fro��)r����os_path_existss��� �r7���r���zITestSystemCPUFrequency.test_emulate_use_cpuinfo.<locals>.path_exists_mock%��s-����������9�:�:�� ,��u�%�~�d�+�+�+rc���r���rr�����������T��percpu)rM��r���r���r���r����r���r����ry��r���r�����max�min)r����r���r�����freqr���s��� @r7����test_emulate_use_cpuinfoz/TestSystemCPUFrequency.test_emulate_use_cpuinfo!��s������� ,�� ,�� ,�� ,�� ,������ "���,�:J�K�K�K�� 4�� 4��f�o�.�.�.��o�'�'��� � � �� � ���#�.�.�.�� � ���#�.�.�.�"�O�4�8�8�8��4��4�D��$�$�T�X�s�3�3�3��$�$�T�X�s�3�3�3�3�4� 4�� 4�� 4�� 4�� 4�� 4�� 4�� 4�� 4�� 4�� 4����� 4�� 4�� 4�� 4�� �&�/�*�*�*��&�!�!�!�!�!��� �&�/�*�*�*��&�!�!�!�!���s/����D+��B5C1�%D+��1C5�5D+��8C5�9D+��+/Ec�������������������������fd�}t������������t����������rdnd}t����������j��������||�������������5��t����������j��������dd�������������5��t ����������j����������������������}|����������������������|j��������d�������������|j��������d k����r|����������������������|j��������d �������������|j ��������d k����r|����������������������|j ��������d�������������d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)Nc������������������������|�����������������������d������������r)|����������������������d������������rt����������j��������d������������S�|�����������������������d������������r)|����������������������d������������rt����������j��������d������������S�|�����������������������d������������r)|����������������������d������������rt����������j��������d������������S�|�dk����rt����������j��������d ������������S���|�g|�R�i�|��S�) N�/scaling_cur_freqr�������500000�/scaling_min_freq����600000�/scaling_max_freqs���700000rt��s���cpu MHz : 500��endswithrw���r����r����r��s��� �r7���r����z;TestSystemCPUFrequency.test_emulate_data.<locals>.open_mock<��s��������� � �1�2�2�� 8��O�O�$L�M�M� 8��z�)�,�,�,��-�-� 3�4�4�� 8��O�O�$L�M�M� 8��z�)�,�,�,��-�-� 3�4�4�� 8��O�O�$L�M�M� 8��z�)�,�,�,���(�(��z�"6�7�7�7� �y��7��7�7�7��7�7�7rc���r����r����rr��r���Tr���������@@r�����������@g������@� rF���r���r���r����r����r���r�����currentr���r����r����r����r����r���r����s��� @r7����test_emulate_dataz(TestSystemCPUFrequency.test_emulate_data:��s������� 8�� 8�� 8�� 8�� 8��� �),�D�o�o�2D�� �Z��� ;� ;� ;�� 6�� 6���$�4�9��9��9�� 6�� 6���(�(��� � ���u�5�5�5���8�s�?�?��$�$�T�X�u�5�5�5��8�s�?�?��$�$�T�X�u�5�5�5� 6�� 6�� 6�� 6�� 6�� 6�� 6�� 6�� 6�� 6�� 6����� 6�� 6�� 6�� 6� 6�� 6�� 6�� 6�� 6�� 6�� 6�� 6�� 6�� 6�� 6�� 6����� 6�� 6�� 6�� 6�� 6�� 6s6����C%�A;C �C%� C �C%�C �C%�%C)�,C)c������������������������fd�}t������������t����������rdnd}t����������j��������||�������������5��t����������j��������dd�������������5��t����������j��������dd �������������5��t ����������j��������d� ������������}|����������������������|d���������j��������d�������������|d���������j��������d k����r!|����������������������|d���������j��������d�������������|d���������j ��������d k����r!|����������������������|d���������j ��������d�������������|����������������������|d���������j��������d�������������|d���������j��������d k����r!|����������������������|d���������j��������d�������������|d���������j ��������d k����r!|����������������������|d���������j ��������d�������������d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)Nc������������������<�����|�}|����������������������d������������r)|���������������������d������������rt����������j��������d������������S�|����������������������d������������r)|���������������������d������������rt����������j��������d������������S�|����������������������d������������r)|���������������������d������������rt����������j��������d������������S�|����������������������d������������r)|���������������������d������������rt����������j��������d ������������S�|����������������������d������������r)|���������������������d������������rt����������j��������d ������������S�|����������������������d������������r)|���������������������d������������rt����������j��������d������������S�|�dk����rt����������j��������d ������������S���|�g|�R�i�|��S�)Nr���z'/sys/devices/system/cpu/cpufreq/policy0s���100000r�������200000r���s���300000z'/sys/devices/system/cpu/cpufreq/policy1s���400000r���r���rt��s#���cpu MHz : 100 cpu MHz : 400r���)r����r����r�����nr����s��� �r7���r����z@TestSystemCPUFrequency.test_emulate_multi_cpu.<locals>.open_mock[��s��������A�� � �.�/�/�� 8��L�L�!J�K�K� 8��z�)�,�,�,��*�*�0�1�1�� 8��L�L�!J�K�K� 8��z�)�,�,�,��*�*�0�1�1�� 8��L�L�!J�K�K� 8��z�)�,�,�,��*�*�0�1�1�� 8��L�L�!J�K�K� 8��z�)�,�,�,��*�*�0�1�1�� 8��L�L�!J�K�K� 8��z�)�,�,�,��*�*�0�1�1�� 8��L�L�!J�K�K� 8��z�)�,�,�,���(�(��z��#7��8��8��8��!�y��7��7�7�7��7�7�7rc���r����r����rr��r���Tr����!psutil._pslinux.cpu_count_logicalrD��r���r����������Y@r���g������i@g������r@r����g������y@r���r���r���r���s��� @r7����test_emulate_multi_cpuz-TestSystemCPUFrequency.test_emulate_multi_cpuY��s������� 8�� 8�� 8�� 8�� 8�4�� �),�D�o�o�2D�� �Z��� ;� ;� ;�� =�� =���,�4�@�@�@�� =�� =��Z� C�-.�0��0��0��=��=�!�?�$�7�7�7�D��$�$�T�!�W�_�e�<�<�<��A�w�{�c�)�)��(�(��a���e�<�<�<��A�w�{�c�)�)��(�(��a���e�<�<�<��$�$�T�!�W�_�e�<�<�<��A�w�{�c�)�)��(�(��a���e�<�<�<��A�w�{�c�)�)��(�(��a���e�<�<�<�=��=��=��=��=��=��=��=��=��=��=�����=��=��=��=� =�� =�� =�� =�� =�� =�� =�� =�� =�� =�� =����� =�� =�� =�� =� =�� =�� =�� =�� =�� =�� =�� =�� =�� =�� =�� =����� =�� =�� =�� =�� =�� =sZ����F8�F �D F �=F � F � F �F �F �F8� F$ �$F8�'F$ �(F8�8F<�?F<c������������������������fd�}t������������t����������rdnd}t����������j��������||�������������5��t����������j��������dd�������������5��t����������j��������dd �������������5��t ����������j����������������������}|����������������������|j��������d �������������d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)Nc������������������������|�����������������������d������������rt����������t����������j��������d�������������|�����������������������d������������rt ����������j��������d������������S�|�dk����rt ����������j��������d������������S���|�g|�R�i�|��S�)Nr���rd���z/cpuinfo_cur_freqr���rt��s���cpu MHz : 200)r���r��r��r��r����r����r��s��� �r7���r����zOTestSystemCPUFrequency.test_emulate_no_scaling_cur_freq_file.<locals>.open_mock���s���������}�}�0�1�1�� 8��e�l�B�/�/�/����2�3�3�� 8��z�)�,�,�,���(�(��z�"6�7�7�7� �y��7��7�7�7��7�7�7rc���r����r����rr��r���Tr���r���r���������)rF���r���r���r����r����r���r����r���r���s��� @r7����%test_emulate_no_scaling_cur_freq_filez<TestSystemCPUFrequency.test_emulate_no_scaling_cur_freq_file���s������� 8�� 8�� 8�� 8�� 8��� �),�D�o�o�2D�� �Z��� ;� ;� ;�� 8�� 8���,�4�@�@�@�� 8�� 8��Z� C�-.�0��0��0��8��8�!�?�,�,�D��$�$�T�\�3�7�7�7�8��8��8��8��8��8��8��8��8��8��8�����8��8��8��8� 8�� 8�� 8�� 8�� 8�� 8�� 8�� 8�� 8�� 8�� 8����� 8�� 8�� 8�� 8� 8�� 8�� 8�� 8�� 8�� 8�� 8�� 8�� 8�� 8�� 8�� 8����� 8�� 8�� 8�� 8�� 8�� 8sY����C�B/�/B�B/�B�B/�B� B/�#C�/B3 �3C�6B3 �7C�C�CN)r����r����r����r����r���r���r���r���r���r���r���r_���rc���r7���r���r�����s�����������������X�_��%��7�7�%��%��8�7�%���X�_��%��7�7�"��"��8�7�"�0��X�_��%��7�7�6��6��8�7�6�<��X�_��%��7�7�+=��+=��8�7�+=�Z��X�_��%��7�7�8��8��8�7�8��8��8rc���r���c�������������������������e�Zd�Zd��Zd��ZdS�)�TestSystemCPUStatsc�����������������������t����������d������������}t����������j����������������������j��������}|����������������������||d��������������d�S�)Nzcontext switches����r����)r����r����� cpu_stats�ctx_switchesr����r����s��� r7����test_ctx_switchesz$TestSystemCPUStats.test_ctx_switches���sB�������0�1�1���'�)�)�6�����|�\���E�E�E�E�Erc���c�����������������������t����������d������������}t����������j����������������������j��������}|����������������������||d��������������d�S�)N� interruptsr���r����)r����r����r���r���r����r����s��� r7����test_interruptsz"TestSystemCPUStats.test_interrupts���sA�������l�+�+���'�)�)�4�����|�\���E�E�E�E�Erc���N)r����r����r����r���r���r_���rc���r7���r���r������s:��������������F��F��F� F��F��F��F��Frc���r���c��������������������D�����e�Zd�Z�ej��������e�d������������d����������������ZdS�)�TestLoadAvgr���c�����������������������t����������j����������������������}t����������dd������������5�}|����������������������������������������������������������������������}d�d�d��������������n#�1�swxY�w�Y���|����������������������t ����������|d���������������������|d���������d��������������|����������������������t ����������|d���������������������|d���������d��������������|����������������������t ����������|d���������������������|d���������d��������������d�S�)Nz /proc/loadavg�rr���r����r����rD��)r����� getloadavgrF���r#��rH���r�����float)r����r����rQ���� proc_values��� r7����test_getloadavgzTestLoadAvg.test_getloadavg���s������(�*�*�� �/�3� '� '�� *�1��������)�)�J� *�� *�� *�� *�� *�� *�� *�� *�� *�� *�� *����� *�� *�� *�� *�� ���u�Z��]�3�3�\�!�_�A��N�N�N����u�Z��]�3�3�\�!�_�A��N�N�N����u�Z��]�3�3�\�!�_�A��N�N�N�N�Ns����'A�A�AN)r����r����r����r����r���r ���r���r_���rc���r7���r���r������sF����������������X�_��'��9�9�O��O��:�9�O��O��Orc���r���c�������������������������e�Zd�Zd��ZdS�)�TestSystemNetIfAddrsc����������������������t����������j���������������������������������������������������������D��]\\��}}|D��]R}|j��������t�����������j��������k����r)|����������������������|j��������t����������|��������������������������A|j��������t����������j ��������k����r�|����������������������|j��������t����������|�������������������������|����������������������|j��������t����������|�������������������������|j ���������)|����������������������|j ��������t����������|���������������������������|����������������������t����������|������������d���������������|j��������t����������j��������k����rC|j�����������������������������d������������d���������}|����������������������|t%����������|���������������������������T��^d�S�)Nz0.0.0.0�%r���)r�����net_if_addrs�items�family�AF_LINKr�����addressrm���r)���r*���r8����netmaskr<���� broadcastr@���rO���rH���r����r[���)r����r�����addrs�addrr���s��� r7����test_ipszTestSystemNetIfAddrs.test_ips���sw�����!�.�0�0�6�6�8�8�� E�� E�K�D�%��� E�� E���;�&�.�0�0��$�$�T�\�?�4�3H�3H�I�I�I�I��[�F�N�2�2��$�$�T�\�3C�D�3I�3I�J�J�J��$�$�T�\�3C�D�3I�3I�J�J�J��~�1��(�(���);�D�)A�)A�C��C��C��C���(�(�);�D�)A�)A�9�M�M�M�M��[�F�O�3�3��#�l�0�0��5�5�a�8�G��M�M�'�+=�d�+C�+C�D�D�D��' E� E�� Erc���N)r����r����r����r���r_���rc���r7���r���r������s(��������������E��E��E��E��Erc���r���c�������������������������e�Zd�Z�ej���������ed�������������d������������d����������������Zd��Z�ej���������ed�������������d������������d����������������ZdS�)�TestSystemNetIfStats�ifconfig�ifconfig utility not availablec����������� �������b����t����������j���������������������������������������������������������D�]�\��}} �t����������d|z��������������}|����������������������|j��������d|v�|��������������|����������������������|j��������t����������t����������j ��������d|������������d�����������������������������������y#�t����������$�r�Y���w�xY�wd�S�)N�ifconfig %s�RUNNING)r����z(?i)MTU[: ](\d+)r���)r�����net_if_statsr���r���r�����isup�mturz���r����r�����RuntimeError)r����r�����statsr{���s��� r7����test_against_ifconfigz*TestSystemNetIfStats.test_against_ifconfig���s�������!�.�0�0�6�6�8�8�� O�� O�K�D�%� O����-�.�.���� � ���Y�#�-=�3� �G�G�G�� � ���!$�R�Z�0C�S�%I�%I�!�%L�!M�!M�O��O��O��O�� � �� �� �� ��� ���� O�� Os����B� B,�+B,c����������� �������J����t����������j���������������������������������������������������������D�]|\��}}t����������d|z��d������������5�}|����������������������|j��������t ����������|�����������������������������������������������������������������������������������������������d�d�d��������������n#�1�swxY�w�Y����}d�S�)Nz/sys/class/net/%s/mturB���) r����r���r���rF���r����r���rz���r#��r����)r����r����r���rQ���s��� r7����test_mtuzTestSystemNetIfStats.test_mtu���s�������!�.�0�0�6�6�8�8�� C�� C�K�D�%��-��4�d�;�;�� C�q�� � ���C��������0@�0@�,A�,A�B�B�B� C�� C�� C�� C�� C�� C�� C�� C�� C�� C�� C����� C�� C�� C�� C�� C�� Cs����A B�B �B c�����������������������d}t����������j���������������������������������������������������������D��]�\��}} �t����������d|z��������������}t ����������j��������d|������������}|r�t ����������|�����������������������������������������������dk����r�|dz ��}t����������|� ��������������������d������������� �������������������������������������������������������d������������������������}t����������|j�����������������������������d������������������������}|�� ��������������������||���������������t ����������j��������d|������������}|r�t ����������|�����������������������������������������������dk����r�|dz ��}t����������|� ��������������������d������������� ���������������������������������������������������������������������������������}t����������|j�����������������������������d������������������������}|�� ��������������������||����������������#�t����������$�r�Y����w�xY�w|s|����������������������d �������������d�S�) Nr���r���zflags=(\d+)?<(.*?)>rD��r����r���z(.*) MTU:(\d+) Metric:(\d+)r����zno matches were found)r����r���r���r���r����r^��rJ���rW���r����group�lowerrH����flagsr����r����fail)r����� matches_foundr����r���r{����match�ifconfig_flags�psutil_flagss��� r7���� test_flagszTestSystemNetIfStats.test_flags���s�������� �!�.�0�0�6�6�8�8�� G�� G�K�D�%� G����-�.�.���� �"8�#�>�>���� G�S������0�0�A�5�5�!�Q�&�M�%(����Q���)=�)=�)?�)?�)E�)E�c�)J�)J�%K�%K�N�#&�u�{�'8�'8��'=�'=�#>�#>�L��$�$�^�\�B�B�B�B���I�&F��L�L�E���G��U�\�\�^�^�!4�!4��!9�!9�%��*� �),�U�[�[��^�^�-A�-A�-C�-C�-I�-I�-K�-K�)L�)L��'*�5�;�+<�+<�S�+A�+A�'B�'B���(�(���F�F�F���#� �� �� �� ��� ����&��� 5��)�)�3�4�4�4� 5�� 5s����G � G�GN) r����r����r����r����r���r���r���r���r���r_���rc���r7���r���r������s�����������������X�_���z�*�*�*�,L�M�M� O�� O��N�M� O�C��C��C� ��X�_���z�*�*�*�,L�M�M�5��5��N�M�5��5��5rc���r���c��������������������v�����e�Zd�Z�ej���������ed�������������d�������������e��������������d������������������������������ZdS�)�TestSystemNetIOCountersr���r���c�����������������������d��}t����������j��������dd�������������}|�����������������������������������D��];\��}} ��||������������}n#�t����������$�r�Y��w�xY�w|����������������������|j��������|d���������d��������������|����������������������|j��������|d���������d��������������|����������������������|j��������|d ���������d ��������������|����������������������|j��������|d���������d ��������������|����������������������|j ��������|d���������d ��������������|����������������������|j ��������|d���������d ��������������|����������������������|j��������|d���������d ��������������|����������������������|j��������|d���������d ����������������=d�S�)Nc�����������������������i�}t����������d|�z��������������}t����������t����������j��������d|������������d���������������������|d<���t����������t����������j��������d|������������d���������������������|d<���t����������t����������j��������d|������������d���������������������|d<���t����������t����������j��������d|������������d ���������������������|d <���t����������t����������j��������d|������������d���������������������|d<���t����������t����������j��������d|������������d ���������������������|d <���t����������t����������j��������d|������������d���������������������|d<���t����������t����������j��������d|������������d���������������������|d<���|S�)Nr���zRX packets[: ](\d+)r����packets_recvzTX packets[: ](\d+)�packets_sentzerrors[: ](\d+)�errinr�����erroutzdropped[: ](\d+)�dropin�dropoutz#RX (?:packets \d+ +)?bytes[: ](\d+)� bytes_recvz#TX (?:packets \d+ +)?bytes[: ](\d+)� bytes_sent)r���rz���r����r����)�nicr����r{���s��� r7���r���z?TestSystemNetIOCounters.test_against_ifconfig.<locals>.ifconfig"��sR������C��]�S�(�)�)�C�"%�� �1�3�7�7��:�#<��#<�C���"%�� �1�3�7�7��:�#<��#<�C����r�z�*<�c�B�B�1�E�F�F�C��L��� �+=�s� C� C�A� F�G�G�C��M��� �+>�� D� D�Q� G�H�H�C��M� ���,?��!E�!E�a�!H�I�I�C� �N� #�� �A�3�G�G��J�!L��!L�C��� #�� �A�3�G�G��J�!L��!L�C����Jrc���TF)�pernic�nowrapr ��i���r����r ��r��r����r��r��� ���r��r��r��) r�����net_io_countersr���r���r����r ��r ��r��r��r��r��r��r��)r����r����nior����r����ifconfig_rets��� r7���r���z-TestSystemNetIOCounters.test_against_ifconfig��s������ �� �� �"��$�D��?�?�?���9�9�;�;�� B�� B�K�D�%� �'�x��~�~������ �� �� ��� �����"�"�� �,�|�"<�H�� #�� N�� N�� N��"�"�� �,�|�"<�H�� #�� N�� N�� N��"�"��"�L��$@��� #�� N�� N�� N��"�"��"�L��$@��� #�� N�� N�� N��"�"���\�'�2�"�� #�� >�� >�� >��"�"���l�8�4�B�� #�� @�� @�� @��"�"���l�8�4�B�� #�� @�� @�� @��"�"�� �|�I�6�b�� #�� B�� B�� B�� B�' B�� Bs����A� A� AN)r����r����r����r����r���r���r���r���r_���rc���r7���r���r�����sf����������������X�_���z�*�*�*�,L�M�M�����'B��'B�����N�M�'B��'B��'Brc���r���c��������������������z�����e�Zd�Z�ej��������de��������������ej��������dd�������������d������������������������������Zd��ZdS�) �TestSystemNetConnectionsz psutil._pslinux.socket.inet_ntoprr��zpsutil._pslinux.supports_ipv6Fr���c���������������������� �t����������j���������t�����������j��������t�����������j��������������������}|����������������������|j���������������������|���������������������d�������������n#�t�����������j��������$�r�Y�nw�xY�wt����������j��������d��������������d�S�)N)z::1r����inet6��kind) r)���rO����SOCK_STREAM� addCleanup�close�bind�errorr�����net_connections)r����� supports_ipv6rP���r6���s��� r7����test_emulate_ipv6_unsupportedz6TestSystemNetConnections.test_emulate_ipv6_unsupportedN��s������� �� �f�o�v�/A�B�B�A��O�O�A�G�$�$�$� �F�F�:�������|�� �� �� ��D� ������G�,�,�,�,�,�,s����AA��A-�,A-c�����������������������t����������dt����������j��������d������������������������5�}t����������j��������d��������������|j��������sJ�� �d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)Nz/proc/net/unixa.�� 0: 00000003 000 000 0001 03 462170 @/tmp/dbus-Qw2hMPIU3n 0: 00000003 000 000 0001 03 35010 @/tmp/dbus-tB2X8h69BQ 0: 00000003 000 000 0001 03 34424 @/tmp/dbus-cHy80Y8O 000000000000000000000000000000000000000000000000000000 �unixr��)r����r����r����r����r��r����r>��s��� r7����test_emulate_unixz*TestSystemNetConnections.test_emulate_unixZ��s������� ���O���� �� ����� ����"��/�/�/�/��8�O�O�O�O� �� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� �� �� s����A�A�AN)r����r����r����r���r����rK���r��r"��r_���rc���r7���r��r��K��sp����������������T�Z�2� �K�K�K��T�Z�/�e�D�D�D�-��-��E�D��L�K�-� �� �� �� �� rc���r��c�������������������������e�Zd�Z�ej���������eed�������������d�������������e��������������d������������������������������Zd��Z d��Z dS�)�TestSystemDiskPartitions�statvfszos.statvfs() not availablec������������������V����d��}t����������j��������d�������������D�]�}t����������j��������|j��������������������}�||j��������������������\��}}}}|����������������������|j��������|�������������|����������������������|j��������|t������������������������|����������������������|j ��������|t��������������������������d�S�)Nc����������������������t����������d|�z�������������������������������������������������}|���������������������d������������}|���������������������d�������������|���������������������d������������}|�����������������������������������d�d����������\��}}}}|dk����rd}t ����������|������������t ����������|������������t ����������|������������}}}||||fS�)Nzdf -P -B 1 "%s"ru���r���rD����nonerd���)r���r����rH����poprz���)r���r{���r|���rS����devr~���r���ro���s��� r7����dfz4TestSystemDiskPartitions.test_against_df.<locals>.dft��s��������&��-�.�.�4�4�6�6�C��I�I�d�O�O�E��I�I�a�L�L�L��9�9�Q�<�<�D�%)�Z�Z�\�\�"�1�"�%5�"�C���d��f�}�}��� #�E� � �C��I�I�s�4�y�y��4�E���t�T�)�)rc���F)�allr����) r�����disk_partitions� disk_usage� mountpointr����r~���r����ro���r���r���)r����r+���part�usager}���r~���r���ro���s��� r7����test_against_dfz(TestSystemDiskPartitions.test_against_dfo��s������� *�� *�� *���*�u�5�5�5�� ?�� ?�D��%�d�o�6�6�E�#%�2�d�o�#6�#6� �A�u�d�D����U�[�%�0�0�0��"�"�5�:�t�)=�� #�� ?�� ?�� ?��"�"�5�:�t�)=�� #�� ?�� ?�� ?�� ?� ?�� ?rc���c����������������������t����������dd������������5�}|�����������������������������������}d�d�d��������������n#�1�swxY�w�Y���d|v�r9t����������j����������������������D�]}|j��������dk����r�d�S��|����������������������d�������������t ����������j��������t����������d������������������������}t����������j ��������d|d�������������5�}t����������j ��������d d g�������������5�}t����������j����������������������}|j��������sJ��|j��������sJ��|sJ��|����������������������|d���������j��������d�������������d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������d�S�#�1�swxY�w�Y���d�S�) Nz/proc/filesystemsr����zfszcouldn't find any ZFS partitionz nodev zfs r-��Trv���$psutil._pslinux.cext.disk_partitions)z /dev/sdb3�/r4���rwr���r���) rF���r#��r����r-���fstyper���r����r����r���r���r����r����r����)r����rQ���r$��r0��r���r���r���r����s��� r7����test_zfs_fsz$TestSystemDiskPartitions.test_zfs_fs���s%����� �%�s� +� +�� �q��6�6�8�8�D� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� ��D�=�=��.�0�0�� C�� C���;�%�'�'��E�E��(���i�i� A�B�B�B����A�n�$5�$5�6�6�I���1�)2�4�A��A��A�� ;�DF��Z�>�&E�%F�H��H��H��;�KM� �0�2�2�C��9�$�$�$��9�$�$�$��J�J�J��$�$�S��V�]�E�:�:�:�;��;��;��;��;��;��;��;��;��;��;�����;��;��;��;� ;�� ;�� ;�� ;�� ;�� ;�� ;�� ;�� ;�� ;�� ;�� ;����� ;�� ;�� ;�� ;�� ;�� ;sC����2�6�6�2D9� AD!�D9�!D% �%D9�(D% �)D9�9D=��D=c������������������<���� �t����������j��������dd�������������5�}|����������������������t����������������������5��t ����������j�����������������������d�d�d��������������n#�1�swxY�w�Y���|j��������sJ�� �d�d�d��������������n#�1�swxY�w�Y���dt����������_��������d�S�#�dt����������_��������w�xY�w)Nzos.path.realpathz /non/existentr����/proc)r���r�����assertRaisesr���r����r-��r�����PROCFS_PATHr>��s��� r7����test_emulate_realpath_failz3TestSystemDiskPartitions.test_emulate_realpath_fail���s!����� )���.�)8�:��:��:�� �=>��&�&�'8�9�9��-��-��*�,�,�,�-��-��-��-��-��-��-��-��-��-��-�����-��-��-��-��x����� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� ��")�F������F��(�(�(�(sQ����B ��A4�A�A4�A �A4�A �A4�(B ��4A8�8B ��;A8�<B �� BN)r����r����r����r����r����hasattrrM��r���r2��r9��r>��r_���rc���r7���r$��r$��l��s�����������������X�_����Y�/�/�/�1M�N�N�����?��?�����O�N�?�.;��;��;�0 )�� )�� )�� )�� )rc���r$��c��������������������8�����e�Zd�Zd��Zd��Zd��Zd��Zd��Zd��Zd��Z dS�) �TestSystemDiskIoCountersc�����������������������t����������dd������������5��t����������j��������dd�������������5��t����������j��������d�������������}|����������������������|j��������d�������������|����������������������|j��������d �������������|����������������������|j��������d t����������z���������������|����������������������|j ��������d�������������|����������������������|j��������d�������������|����������������������|j��������d �������������|����������������������|j ��������dt����������z���������������|����������������������|j��������d�������������|����������������������|j��������d�������������d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)N�/proc/diskstatsz+ 3 0 1 hda 2 3 4 5 6 7 8 9 10 11 12�!psutil._pslinux.is_storage_deviceTr���F�r ��r����rD��r����rD���r����rF����������r���r����r���r����r�����disk_io_countersr����� read_count�read_merged_count� read_bytes�SECTOR_SIZE� read_time�write_count�write_merged_count�write_bytes� write_time� busy_time�r����r����s��� r7����test_emulate_kernel_2_4z0TestSystemDiskIoCounters.test_emulate_kernel_2_4���s��������!�=�?��?�� 4�� 4����?�)-�/��/��/�� 4�� 4��-�U�;�;�;��� � ����3�3�3�� � ��!6��:�:�:�� � ����[��A�A�A�� � ����2�2�2�� � ���!�4�4�4�� � ��!7��;�;�;�� � ���!�k�/�B�B�B�� � ����3�3�3�� � ����3�3�3� 4�� 4�� 4�� 4�� 4�� 4�� 4�� 4�� 4�� 4�� 4����� 4�� 4�� 4�� 4� 4�� 4�� 4�� 4�� 4�� 4�� 4�� 4�� 4�� 4�� 4�� 4����� 4�� 4�� 4�� 4�� 4�� 4�5����E%�DE �E%� E �E%�E �E%�%E)�,E)c�����������������������t����������dd������������5��t����������j��������dd�������������5��t����������j��������d�������������}|����������������������|j��������d�������������|����������������������|j��������d �������������|����������������������|j��������d t����������z���������������|����������������������|j ��������d�������������|����������������������|j��������d�������������|����������������������|j��������d �������������|����������������������|j ��������dt����������z���������������|����������������������|j��������d�������������|����������������������|j��������d�������������d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)NrC��z' 3 0 hda 1 2 3 4 5 6 7 8 9 10 11rD��Tr���FrE��r����rD��r����rD���r����rF��rF��rG��r��rH��rT��s��� r7����test_emulate_kernel_2_6_fullz5TestSystemDiskIoCounters.test_emulate_kernel_2_6_full���s��������!�9�;��;�� 4�� 4����?�)-�/��/��/�� 4�� 4��-�U�;�;�;��� � ����3�3�3�� � ��!6��:�:�:�� � ����[��A�A�A�� � ����2�2�2�� � ���!�4�4�4�� � ��!7��;�;�;�� � ���!�k�/�B�B�B�� � ����3�3�3�� � ����3�3�3� 4�� 4�� 4�� 4�� 4�� 4�� 4�� 4�� 4�� 4�� 4����� 4�� 4�� 4�� 4� 4�� 4�� 4�� 4�� 4�� 4�� 4�� 4�� 4�� 4�� 4�� 4����� 4�� 4�� 4�� 4�� 4�� 4rV��c�����������������������t����������dd������������5��t����������j��������dd�������������5��t����������j��������d�������������}|����������������������|j��������d�������������|����������������������|j��������d t����������z���������������|����������������������|j ��������d �������������|����������������������|j ��������dt����������z���������������|����������������������|j��������d�������������|����������������������|j��������d�������������|����������������������|j ��������d�������������|����������������������|j��������d�������������|����������������������|j��������d�������������d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������d�S�#�1�swxY�w�Y���d�S�) NrC��z 3 1 hda 1 2 3 4rD��Tr���FrE��r����rD��r����rD���r���)r����r���r����r����rI��r����rJ��rL��rM��rO��rQ��rK��rN��rP��rR��rS��rT��s��� r7����test_emulate_kernel_2_6_limitedz8TestSystemDiskIoCounters.test_emulate_kernel_2_6_limited���s��������!�)�+��+�� 3�� 3����?�)-�/��/��/�� 3�� 3��-�U�;�;�;��� � ����3�3�3�� � ����[��A�A�A�� � ���!�4�4�4�� � ���!�k�/�B�B�B�� � ��!6��:�:�:�� � ����2�2�2�� � ��!7��;�;�;�� � ����3�3�3�� � ����2�2�2� 3�� 3�� 3�� 3�� 3�� 3�� 3�� 3�� 3�� 3�� 3����� 3�� 3�� 3�� 3� 3�� 3�� 3�� 3�� 3�� 3�� 3�� 3�� 3�� 3�� 3�� 3����� 3�� 3�� 3�� 3�� 3�� 3rV��c������������������R����t����������dt����������j��������d������������������������5��t����������j��������dd�������������5��t����������j��������dd�������������}|����������������������t����������|������������d�������������|����������������������|d ���������j ��������d �������������|����������������������|d���������j ��������d �������������|����������������������|d ���������j ��������d�������������|����������������������|d���������j ��������d�������������d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������d�S�#�1�swxY�w�Y���d�S�) NrC���� 3 0 nvme0n1 1 2 3 4 5 6 7 8 9 10 11 3 0 nvme0n1p1 1 2 3 4 5 6 7 8 9 10 11 rD��Fr���T��perdiskr ��rD���nvme0n1r����� nvme0n1p1r����)r����r����r����r���r����r����rI��r����rJ���rJ��rO��rT��s��� r7����test_emulate_include_partitionsz8TestSystemDiskIoCounters.test_emulate_include_partitions���s��������!����!��������� B�� B����?�).�0��0��0�� B�� B��-�d�5�I�I�I��� � ��S���1�-�-�-�� � ��Y��!:�A�>�>�>�� � ��[�!1�!<�a�@�@�@�� � ��Y��!;�Q�?�?�?�� � ��[�!1�!=�q�A�A�A� B�� B�� B�� B�� B�� B�� B�� B�� B�� B�� B����� B�� B�� B�� B� B�� B�� B�� B�� B�� B�� B�� B�� B�� B�� B�� B����� B�� B�� B�� B�� B�� Bs5����D�B>D�8D�D �D�D �D�D �#D c����������������������t����������dt����������j��������d������������������������5��t����������j��������dd�������������5��t����������j��������dd�������������}|����������������������|�������������d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������n#�1�swxY�w�Y���d��}t����������dt����������j��������d������������������������5��t����������j��������dd|� ������������5��t����������j��������dd�������������}|����������������������|j ��������d �������������|����������������������|j ��������d�������������d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)NrC��r\��rD��Fr���r]��c�����������������������|�dk����S�)Nr_��r_���)r����s��� r7����is_storage_devicezSTestSystemDiskIoCounters.test_emulate_exclude_partitions.<locals>.is_storage_device��s �������9�$�$rc���Tr����r����r����)r����r����r����r���r����r����rI��r{��r����rJ��rO��)r����r����rd��s��� r7����test_emulate_exclude_partitionsz8TestSystemDiskIoCounters.test_emulate_exclude_partitions���sx�������!����!��������� '�� '����?�).�0��0��0�� '�� '��-�e�E�J�J�J���!�!�#�&�&�&� '�� '�� '�� '�� '�� '�� '�� '�� '�� '�� '����� '�� '�� '�� '� '�� '�� '�� '�� '�� '�� '�� '�� '�� '�� '����� '�� '�� '�� '� %�� %�� %���!����!��������� 5�� 5����?�#'�5F�H��H��H�� 5�� 5��-�e�E�J�J�J��� � ����3�3�3�� � ���!�4�4�4� 5�� 5�� 5�� 5�� 5�� 5�� 5�� 5�� 5�� 5�� 5����� 5�� 5�� 5�� 5� 5�� 5�� 5�� 5�� 5�� 5�� 5�� 5�� 5�� 5�� 5�� 5����� 5�� 5�� 5�� 5�� 5�� 5sk����B �,A2�&B �2A6 �6B �9A6 �:B � B �B �9E�A D*�E�*D. �.E�1D. �2E�E� Ec����������������������d��}t����������j��������d�������������}t����������j��������dd|�������������5��t����������j��������d�������������}d�d�d��������������n#�1�swxY�w�Y���|����������������������t����������|������������t����������|�������������������������d�S�)Nc�����������������������|�dk����rdS�dS�)NrC��FTr_����r���s��� r7���r���z?TestSystemDiskIoCounters.test_emulate_use_sysfs.<locals>.exists ��s�������(�(�(��u��4rc���T)r^���psutil._pslinux.os.path.existsr����)r����rI��r���r����r����rJ���)r����r����wprocfs�wsysfss��� r7����test_emulate_use_sysfsz/TestSystemDiskIoCounters.test_emulate_use_sysfs��s������� �� �� � ��)�$�7�7�7�� �Z�8�#��9��9��9�� ;�� ;��,�T�:�:�:�F� ;�� ;�� ;�� ;�� ;�� ;�� ;�� ;�� ;�� ;�� ;����� ;�� ;�� ;�� ;�� ����W���s�6�{�{�3�3�3�3�3s����A�A�Ac�����������������������d��}t����������j��������dd|�������������5��|����������������������t����������t����������j���������������������d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)Nc�����������������������dS�)NFr_���rh��s��� r7���r���z>TestSystemDiskIoCounters.test_emulate_not_impl.<locals>.exists,��s�������5rc���ri��Tr����)r���r����r<���NotImplementedErrorr����rI��)r����r���s��� r7����test_emulate_not_implz.TestSystemDiskIoCounters.test_emulate_not_impl+��s������� �� �� ���Z�8�#��9��9��9�� L�� L����1�6�3J�K�K�K� L�� L�� L�� L�� L�� L�� L�� L�� L�� L�� L�� L����� L�� L�� L�� L�� L�� Ls����&A�A�AN) r����r����r����rU��rX��rZ��ra��re��rl��rp��r_���rc���r7���rA��rA�����s���������������4��4��4�&4��4��4�(3��3��3�.B��B��B�&5��5��5�> 4�� 4�� 4�L��L��L��L��Lrc���rA��c��������������������������e�Zd�Zd��Zd��Z�ej��������ed������������d����������������Z�ej���������e d�������������d�������������ej��������ed������������d������������������������������Z d��Zd S�) �TestRootFsDeviceFinderc�����������������������t����������j��������d������������j��������}t����������j��������|������������|�_��������t����������j��������|������������|�_��������d�S�)Nr6��)rM��r�����st_dev�major�minor)r����r*��s��� r7����setUpzTestRootFsDeviceFinder.setUp7��s4�������g�c�l�l�!���X�c�]�]�� ��X�c�]�]�� � � rc���c����������������������t������������������������}t����������j�����������������������������d������������r|������������������������������������n |����������������������t����������|j���������������������t����������j�����������������������������d|�j���������d|�j���������d�������������r|� �����������������������������������n |����������������������t����������|j ���������������������|� �����������������������������������d�S��Nz/proc/partitionsz/sys/dev/block/rE���z/uevent)r���rM��r���r����ask_proc_partitionsr<��r���ru��rv���ask_sys_dev_block�ask_sys_class_block)r�����finders��� r7����test_call_methodsz(TestRootFsDeviceFinder.test_call_methods<��s�������#�%�%�� �7�>�>�,�-�-�� M��&�&�(�(�(�(����/��1K�L�L�L� �7�>�>�>�� � � �D�J�J�J�(��)��)�� K��$�$�&�&�&�&����/��1I�J�J�J��"�"�$�$�$�$�$rc���zunsupported on GITHUB_ACTIONSc������������������B����t������������������������}|����������������������|������������������������������������������������d�x}x}}t����������j�����������������������������d������������r|�����������������������������������}t����������j�����������������������������d|�j���������d|�j���������d�������������r|� ����������������������������������}|� ����������������������������������}|p|p|}|r|r|����������������������||�������������|r|r|����������������������||�������������|r|r|����������������������||�������������d�S�d�S�d�S�ry��)r����assertIsNotNone�findrM��r���r���rz��ru��rv��r|��r{��r����)r����r}��r��r���c�bases��� r7����test_comparisonsz'TestRootFsDeviceFinder.test_comparisonsI��sH�����#�%�%�����V�[�[�]�]�+�+�+�����A�� �7�>�>�,�-�-�� -��*�*�,�,�A� �7�>�>�>�� � � �D�J�J�J�(��)��)�� -��*�*�,�,�A��$�$�&�&���{�A�{����� &�A�� &����T�1�%�%�%��� &�A�� &����T�1�%�%�%��� &�A�� &����T�1�%�%�%�%�%� &�� &�� &�� &rc����findmntzfindmnt utility not availablec�����������������������t�����������������������������������������������������������}t����������d������������}|����������������������||�������������d�S�)Nzfindmnt -o SOURCE -rn /)r���r���r���r����)r����r����� findmnt_values��� r7����test_against_findmntz+TestRootFsDeviceFinder.test_against_findmnt^��sE�������*�+�+�0�0�2�2���4�5�5� �����}�5�5�5�5�5rc���c����������������������t����������j��������ddg�������������5�}t����������j����������������������d���������}|j��������sJ��t ����������sU|����������������������|j��������d�������������|����������������������|j��������t������������������������� �����������������������������������������������n|����������������������|j��������d�������������d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)Nr5��)� /dev/rootr6���ext4r7��r���r���r���)r���r����r����r-��r����r ����assertNotEqual�devicer����r���r���)r����r����r0��s��� r7����test_disk_partitions_mockedz2TestRootFsDeviceFinder.test_disk_partitions_mockede��s����� �Z�6�>�?�A��A��A�� ;�DE��)�+�+�A�.�D��8�O�O�O�!�� ;��#�#�D�K��=�=�=�� � ���.@�.B�.B�.G�.G�.I�.I�J�J�J�J�� � ���k�:�:�:� ;�� ;�� ;�� ;�� ;�� ;�� ;�� ;�� ;�� ;�� ;�� ;����� ;�� ;�� ;�� ;�� ;�� ;s����BB?�?C�CN)r����r����r����rw��r~��r����r���r ���r���r���r���r���r_���rc���r7���rr��rr��4��s���������������#��#��#� %��%��%���X�_�^�%D�E�E�&��&��F�E�&�(��X�_���y�)�)�)�+J�K�K��X�_�^�%D�E�E�6��6��F�E��L�K�6� ;�� ;�� ;�� ;�� ;rc���rr��c��������������������^�����e�Zd�Zd��Zd��Zd��Zd��Zd��Zd��Z�e ��������������d����������������Z d��Zd S�) �TestMiscc�����������������������t����������d������������}t����������j����������������������}|����������������������t ����������|������������t ����������|�������������������������d�S�)Nz boot time)r����r����� boot_timer����rz���r����s��� r7����test_boot_timezTestMisc.test_boot_timez��sI�������k�*�*���'�)�)������\�*�*�C��,=�,=�>�>�>�>�>rc���c������������������\ �����|�������������������������������������}t����������j��������|�������������t����������t����������j�����������������������������|d������������d������������5�}|���������������������d�������������|���������������������d�������������|���������������������d�������������d�d�d��������������n#�1�swxY�w�Y��� �t������������fd�}t����������rdnd}t����������j ��������||� ������������5��t����������t�����������������������|����������������������t����������t����������j���������������������|����������������������t����������t����������j��������d ��������������|����������������������t����������t����������j���������������������|����������������������t����������t����������j��������d ��������������|����������������������t����������t����������j���������������������|����������������������t����������t����������j��������d ��������������|t����������_��������|����������������������t����������j����������������������d�������������|����������������������t'����������t����������j����������������������������������d�������������t����������j��������d �������������}|����������������������t'����������|������������d�������������t����������j��������d �������������}|����������������������t'����������t)����������t&����������|������������������������d�������������t����������t����������j�����������������������������|d������������d������������5�}|���������������������d �������������|���������������������d�������������|���������������������d�������������d�d�d��������������n#�1�swxY�w�Y���|����������������������t����������j����������������������d�������������|����������������������t'����������t����������j��������d �������������������������d�������������|����������������������t'����������t����������j����������������������������������d�������������|����������������������t'����������t)����������t&����������t����������j��������d �������������������������������������d�������������d�d�d��������������n#�1�swxY�w�Y���t-����������j��������|�������������t����������t�����������������������n-#�t-����������j��������|�������������t����������t�����������������������w�xY�w|����������������������t����������j��������d�������������d�S�)Nr����r���zcpu 0 0 0 0 0 0 0 0 0 0 zcpu0 0 0 0 0 0 0 0 0 0 0 zcpu1 0 0 0 0 0 0 0 0 0 0 c������������������z������|�����������������������d������������rt����������t����������j��������d���������������|�g|�R�i�|��S�)Nr;��zrejecting access for test)rw���r��r��r��r��s��� �r7���r����z4TestMisc.test_no_procfs_on_import.<locals>.open_mock���sK��������?�?�7�+�+��M�!�%�,�0K�L�L�L� �y��7��7�7�7��7�7�7rc���r����r����rr��Tr���r���zcpu 1 0 0 0 0 0 0 0 0 0 zcpu0 1 0 0 0 0 0 0 0 0 0 zcpu1 1 0 0 0 0 0 0 0 0 0 r;��)� get_testfnrM���mkdirrF���r���rM����writer���r���r����r���r����r<��r��rK���cpu_percent�cpu_times_percentr=��r�����sumr����r����shutil�rmtree)r����� my_procfsrQ���r����r�����per_cpu_percent�per_cpu_times_percentr����s��� @r7����test_no_procfs_on_importz!TestMisc.test_no_procfs_on_import��s��������O�O�%�%� � ������ �"�'�,�,�y�&�1�1�3� 7� 7�� 3�1� �G�G�1�2�2�2� �G�G�1�2�2�2� �G�G�1�2�2�2� 3�� 3�� 3�� 3�� 3�� 3�� 3�� 3�� 3�� 3�� 3����� 3�� 3�� 3�� 3� 0 "��I� 8�� 8�� 8�� 8�� 8� �.1�H�/�/�6H�K���K�Y�?�?�?��$ M��$ M��f�%�%�%��!�!�'�6�+;�<�<�<��!�!�'�6�+;�D�!�I�I�I��!�!�'�6�+=�>�>�>��!�!�'�6�+=�d�!�K�K�K��!�!�'�6�+C�D�D�D��!�!��V�5�d��"��D��D��D��&/��"�� � ��!3�!5�!5�q�9�9�9�� � ��V�%=�%?�%?�!@�!@�!�D�D�D��#)�"4�D�"A�"A�"A��� � ��_�!5�!5�q�9�9�9��)/�(@��(M�(M�(M�%�� � ��S��.C�%D�%D�!E�!E�q�I�I�I���"�'�,�,�y�&�9�9�3�?�?��;�1��G�G�9�:�:�:��G�G�9�:�:�:��G�G�9�:�:�:�;��;��;��;��;��;��;��;��;��;��;�����;��;��;��;� ��#�#�F�$6�$8�$8�!�<�<�<��#�#���*�$�7�7�7�8�8�!�=��=��=��#�#�C��(@�(B�(B�$C�$C�Q�G�G�G��#�#���C��!9��!F�!F�!F�G�G�H�H�!�M��M��M�G$ M��$ M��$ M��$ M��$ M��$ M��$ M��$ M��$ M��$ M��$ M�����$ M��$ M��$ M��$ M�L� �M�)�$�$�$��&�!�!�!�!��� �M�)�$�$�$��&�!�!�!�!��������+�W�5�5�5�5�5sj����A�B$�$B(�+B(�0-Q��HP+�.A�L:�.P+�:L> �>P+�L> �CP+�Q��+P/�/Q��2P/�3Q��*R c����������� ������������t����������dt����������j��������d�����������������������������������������������������������5�}t ����������j�����������������������|j��������sJ��t ����������j��������d��������������t ����������j�����������������������t ����������j��������d��������������d�d�d��������������n#�1�swxY�w�Y���t����������dt����������j��������d�����������������������������������������������������������5�}t ����������j����������������������}|j��������sJ��t ����������j��������d�������������}t ����������j����������������������}t ����������j��������d�������������}|����������������������|d�������������|����������������������t����������|������������d�������������|����������������������t����������|������������d�������������|����������������������t����������|������������d�������������|����������������������t����������t����������t����������|������������������������d�������������|����������������������t����������t����������t����������|������������������������d�������������|����������������������|j��������d�������������|����������������������|j ��������d�������������d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)Nrs��z� cpu 0 0 0 0 0 0 0 1 0 0 cpu0 0 0 0 0 0 0 0 1 0 0 cpu1 0 0 0 0 0 0 0 1 0 0 Tr���z� cpu 1 0 0 0 0 0 0 0 0 0 cpu0 1 0 0 0 0 0 0 0 0 0 cpu1 1 0 0 0 0 0 0 0 0 0 r���r���)r����r����r����r����r����r���r����r���r���r���r����r����rH���user)r����r����r����cpu_percent_percpur����cpu_times_percent_percpus��� r7����test_cpu_steal_decreasez TestMisc.test_cpu_steal_decrease���s����������O���� �� ���V�X�X� ���� 2��#$�� �� � � ��8�O�O�O���d�+�+�+�+��$�&�&�&��$�D�1�1�1�1� 2�� 2�� 2�� 2�� 2�� 2�� 2�� 2�� 2�� 2�� 2����� 2�� 2�� 2�� 2� ����O���� �� ���V�X�X� ���� ;��#$� �,�.�.�K��8�O�O�O�!'�!3�4�!@�!@�!@�� &� 8� :� :��'-�'?�t�'L�'L�'L�$�����Q�/�/�/�����$6� 7� 7��;�;�;�����$5� 6� 6��:�:�:�����$5� 6� 6��>�>�>�����C��-E�$F�$F� G� G��K�K�K�����C��-E�$F�$F� G� G��O�O�O����.�4�a�8�8�8���� 1� 6��:�:�:�) ;�� ;�� ;�� ;�� ;�� ;�� ;�� ;�� ;�� ;�� ;�� ;����� ;�� ;�� ;�� ;�� ;�� ;s%����AB�B�"B�E;I"�"I&�)I&c������������������������t����������j��������dd�������������5�}|����������������������t����������t����������j��������j���������������������|j��������sJ�� �d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)Nr-��Tr.��)r���r����r<��r���r����ry��r���r����r>��s��� r7����test_boot_time_mockedzTestMisc.test_boot_time_mocked���s������� �Z�-�d� ;� ;� ;�� �q�������)� +�� +�� +���8�O�O�O�O� �� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� �� �� s����4A�A� Ac����������������������t����������j��������ddg�������������5�}|����������������������t����������j����������������������d���������j��������d�������������|j��������sJ�� �d�d�d��������������n#�1�swxY�w�Y���t����������j��������ddg�������������5�}|����������������������t����������j����������������������d���������j��������d�������������|j��������sJ�� �d�d�d��������������n#�1�swxY�w�Y���t����������j��������ddg�������������5�}|����������������������t����������j����������������������d���������j��������d�������������|j��������sJ�� �d�d�d��������������d�S�#�1�swxY�w�Y���d�S�) Nzpsutil._pslinux.cext.users)� giampaolo�pts/2z:0�����h�ATrD��r���r���� localhost)r���r���z:0.0r���TrD��)r���r����foor���TrD��r���)r���r����r����r�����users�hostr����r>��s��� r7����test_users_mockedzTestMisc.test_users_mocked���s�������Z�4�'>��&?�@��@��@�� �CD����V�\�^�^�A�.�3�[�A�A�A��8�O�O�O�O� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� � ��Z�4�'>��&?�@��@��@�� �CD����V�\�^�^�A�.�3�[�A�A�A��8�O�O�O�O� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� ���Z�4�'>��&?�@��@��@�� �CD����V�\�^�^�A�.�3�U�;�;�;��8�O�O�O�O� �� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� �� �� s5����<A!�!A%�(A%�<C�C�C�.<D8�8D<�?D<c������������������R����|�������������������������������������}t����������j��������|������������� �|t����������_��������|����������������������t����������t����������j���������������������|����������������������t����������t����������j���������������������|����������������������t����������t����������j��������d��������������|����������������������t����������t����������j ���������������������|����������������������t����������t����������j ���������������������|����������������������t����������t����������j���������������������|����������������������t����������t����������j���������������������|����������������������t����������t����������j ���������������������|����������������������t����������j��������t����������j���������������������dt����������_��������d�S�#�dt����������_��������w�xY�w)NTr���r;��)r���rM��r���r����r=��r<��r��r����rK��r���r��r��r���r-��� NoSuchProcess�Process)r�����tdirs��� r7����test_procfs_pathzTestMisc.test_procfs_path���s5�������� � �� ������ )�!%�F�����g�v�'<�=�=�=����g�v�'7�8�8�8����g�v�'7���E�E�E����g�v�'7�8�8�8����g�v�'=�>�>�>����g�v�'=�>�>�>����g�v�':�;�;�;����g�v�'=�>�>�>����f�2�F�N�C�C�C�!(�F������F��(�(�(�(s����E F��F&c����������������������t������������������������5��t����������j����������������������}|�����������������������������������}|����������������������t����������|������������d�������������t ����������|d���������������d���������j��������}|����������������������|j ��������|�������������t����������j��������|������������}|� �����������������������������������|����������������������|t����������j�����������������������������������d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)NrD��c�����������������������|�j���������S�r^���)�idr`���s��� r7����<lambda>z)TestMisc.test_issue_687.<locals>.<lambda>��s���������rc���)�keyr����) r���r����r����threadsr����rJ����sortedr���r����pid�as_dictrO���pids)r�����pr����tid�pts��� r7����test_issue_687zTestMisc.test_issue_687��s�������\�\�� 1�� 1��� � �A��i�i�k�k�G����S��\�\�1�-�-�-���n�n�5�5�5�a�8�;�C������s�+�+�+����$�$�B��J�J�L�L�L����S�&�+�-�-�0�0�0� 1�� 1�� 1�� 1�� 1�� 1�� 1�� 1�� 1�� 1�� 1�� 1����� 1�� 1�� 1�� 1�� 1�� 1s����CC.�.C2�5C2c�����������������������t����������dd������������5�}t����������j��������t����������j����������������������������������sJ��|j��������sJ�� �d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)N�/proc/%s/statusrd���)r����r����� pid_existsrM���getpidr����r>��s��� r7����test_pid_exists_no_proc_statusz'TestMisc.test_pid_exists_no_proc_status$��s���������0�"� 5� 5�� ���$�R�Y�[�[�1�1�1�1�1��8�O�O�O�O� �� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� �� �� s����1A�A�AN)r����r����r����r���r���r���r���r���r���r���r���r���r_���rc���r7���r���r���w��s���������������?��?��?� ;6��;6��;6�z';��';��';�R����������()��)��)�&�����1��1����1� ��������rc���r���z no batteryc�������������������������e�Zd�Z�ej���������ed�������������d������������d����������������Zd��Zd��Zd��Z d��Z d��Zd ��Zd ��Z d��ZdS�) �TestSensorsBattery�acpizacpi utility not availablec������������������ ����t����������d������������}t����������|���������������������d������������d�����������������������������������������������������������������dd������������������������}t����������j����������������������j��������}|����������������������||d��������������d�S�)Nzacpi -br���r����r���rd���r����) r���rz���rH���r�����replacer�����sensors_battery�percentr����)r����r{���� acpi_valuer����s��� r7����test_percentzTestSensorsBattery.test_percent6��sw��������m�m������3����*�0�0�2�2�:�:�3��C�C�D�D� ��-�/�/�7�����z�<�q��A�A�A�A�Arc���c������������������l������fd�}t������������t����������rdnd}t����������j��������||�������������5�}|����������������������t����������j����������������������j��������d�������������|����������������������t����������j����������������������j��������t ����������j ���������������������|j ��������sJ�� �d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)Nc������������������������|�����������������������d������������s|�����������������������d������������rt����������j��������d������������S���|�g|�R�i�|��S�)N� AC0/online� AC/online����1�r���r����r����r��s��� �r7���r����z@TestSensorsBattery.test_emulate_power_plugged.<locals>.open_mock?���Z��������}�}�\�*�*�� 8�d�m�m�K�.H�.H�� 8��z�$�'�'�'� �y��7��7�7�7��7�7�7rc���r����r����rr��T)rF���r���r���r����r����r����r���� power_plugged�secsleft�POWER_TIME_UNLIMITEDr�����r����r����r����r����r����s��� @r7����test_emulate_power_pluggedz-TestSensorsBattery.test_emulate_power_plugged=��s������ 8�� 8�� 8�� 8�� 8��� �),�D�o�o�2D�� �Z��� ;� ;� ;�� �q����V�3�5�5�C�T�J�J�J�����&�(�(�1�6�3N� P�� P�� P��8�O�O�O�O� �� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� �� �� s����A,B)�)B-�0B-c�������������������������fd�}t������������t����������rdnd}t����������j��������||�������������5�}|����������������������t����������j����������������������j��������d�������������|j��������sJ�� �d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)Nc�����������������������|�����������������������d������������s|�����������������������d������������rt����������t����������j��������d�������������|�����������������������d������������r!t ����������j��������t ����������d������������������������S���|�g|�R�i�|��S�)Nr���r���rd����/status�charging�r���r��r��r��r����r����r���r��s��� �r7���r����zBTestSensorsBattery.test_emulate_power_plugged_2.<locals>.open_mockP��s���������}�}�\�*�*�� 8�d�m�m�K�.H�.H�� 8��e�l�B�/�/�/����y�)�)�� 8��{�1�Z�=�=�1�1�1� �y��7��7�7�7��7�7�7rc���r����r����rr��T� rF���r���r���r����r����r����r���r���r����r���s��� @r7����test_emulate_power_plugged_2z/TestSensorsBattery.test_emulate_power_plugged_2M��s�������� 8�� 8�� 8�� 8�� 8��� �),�D�o�o�2D�� �Z��� ;� ;� ;�� �q����V�3�5�5�C�T�J�J�J��8�O�O�O�O� �� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� �� �� �����6A3�3A7�:A7c�������������������������fd�}t������������t����������rdnd}t����������j��������||�������������5�}|����������������������t����������j����������������������j��������d�������������|j��������sJ�� �d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)Nc������������������������|�����������������������d������������s|�����������������������d������������rt����������j��������d������������S���|�g|�R�i�|��S�)Nr���r�������0r���r��s��� �r7���r����zDTestSensorsBattery.test_emulate_power_not_plugged.<locals>.open_mock`��r���rc���r����r����rr��Fr���r���s��� @r7����test_emulate_power_not_pluggedz1TestSensorsBattery.test_emulate_power_not_plugged^��s�������� 8�� 8�� 8�� 8�� 8��� �),�D�o�o�2D�� �Z��� ;� ;� ;�� �q����V�3�5�5�C�U�K�K�K��8�O�O�O�O� �� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� �� �� r���c�������������������������fd�}t������������t����������rdnd}t����������j��������||�������������5�}|����������������������t����������j����������������������j��������d�������������|j��������sJ�� �d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)Nc�����������������������|�����������������������d������������s|�����������������������d������������rt����������t����������j��������d�������������|�����������������������d������������r!t ����������j��������t ����������d������������������������S���|�g|�R�i�|��S�)Nr���r���rd���r����dischargingr���r��s��� �r7���r����zFTestSensorsBattery.test_emulate_power_not_plugged_2.<locals>.open_mocko��s���������}�}�\�*�*�� 8�d�m�m�K�.H�.H�� 8��e�l�B�/�/�/����y�)�)�� 8��{�1�]�#3�#3�4�4�4� �y��7��7�7�7��7�7�7rc���r����r����rr��Fr���r���s��� @r7���� test_emulate_power_not_plugged_2z3TestSensorsBattery.test_emulate_power_not_plugged_2l��s�������� 8�� 8�� 8�� 8�� 8��� �),�D�o�o�2D�� �Z��� ;� ;� ;�� �q����V�3�5�5�C�U�K�K�K��8�O�O�O�O� �� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� �� �� r���c�������������������������fd�}t������������t����������rdnd}t����������j��������||�������������5�}|����������������������t����������j����������������������j���������������������|j��������sJ�� �d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)Nc������������������������|�����������������������d������������s|�����������������������d������������rt����������t����������j��������d�������������|�����������������������d������������rt ����������j��������d������������S���|�g|�R�i�|��S�)N�"/sys/class/power_supply/AC0/online�!/sys/class/power_supply/AC/onlinerd����#/sys/class/power_supply/BAT0/statuss���???)rw���r��r��r��r����r����r��s��� �r7���r����zETestSensorsBattery.test_emulate_power_undetermined.<locals>.open_mock���s�����������C�D�D�� 8��O�O�$G�H�H� 8��e�l�B�/�/�/����!F�G�G�� 8��z�&�)�)�)� �y��7��7�7�7��7�7�7rc���r����r����rr��) rF���r���r���r����r{��r����r���r���r����r���s��� @r7����test_emulate_power_undeterminedz2TestSensorsBattery.test_emulate_power_undetermined}��s�������� 8�� 8�� 8�� 8�� 8��� �),�D�o�o�2D�� �Z��� ;� ;� ;�� �q����f�4�6�6�D�E�E�E��8�O�O�O�O� �� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� �� �� s����5A2�2A6�9A6c������������������������t����������dd������������5�}|����������������������t����������j����������������������j��������d�������������|j��������sJ�� �d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)N�(/sys/class/power_supply/BAT0/energy_fullr���r���)r����r����r����r���r���r����r>��s��� r7����test_emulate_energy_full_0z-TestSensorsBattery.test_emulate_energy_full_0���s������� �:�D�B��B�� �EF����V�3�5�5�=�q�A�A�A��8�O�O�O�O� �� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� �� �� s����6A�A�Ac����������������������t����������dt����������t����������j��������d������������������������5��t����������dt����������t����������j��������d������������������������5��t ����������dd������������5��|����������������������t ����������j����������������������j��������d�������������d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)Nr���rd���z(/sys/class/power_supply/BAT0/charge_fullz%/sys/class/power_supply/BAT0/capacitys���88�X���) r����r��r��r��r����r����r����r���r����r����s��� r7����"test_emulate_energy_full_not_availz5TestSensorsBattery.test_emulate_energy_full_not_avail���s�������!�:����b�)�)�+��+�� K�� K��%�>��E�L�"�-�-�/��/�� K�� K��'�?��H��H��K��K��$�$�V�%;�%=�%=�%E�r�J�J�J�K��K��K��K��K��K��K��K��K��K��K�����K��K��K��K� K�� K�� K�� K�� K�� K�� K�� K�� K�� K�� K����� K�� K�� K�� K� K�� K�� K�� K�� K�� K�� K�� K�� K�� K�� K�� K����� K�� K�� K�� K�� K�� KsY����)C�B3�#-B�B3�B � B3�#B �$B3�'C�3B7 �7C�:B7 �;C�C�Cc����������� ������������t����������dt����������t����������j��������d������������������������5��t����������dt����������t����������j��������d������������������������5��t����������dt����������t����������j��������d������������������������5��|����������������������t����������j����������������������j���������������������d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)Nr���rd���r���r���)r����r��r��r��r{��r����r���r���r���s��� r7����test_emulate_no_powerz(TestSensorsBattery.test_emulate_no_power���s������ �3����b�)�)�+��+�� N�� N��%�8��E�L�"�-�-�/��/�� N�� N��)�=����b�1�1�3��3��N��N���%�%�f�&<�&>�&>�&L�M�M�M�N��N��N��N��N��N��N��N��N��N��N�����N��N��N��N� N�� N�� N�� N�� N�� N�� N�� N�� N�� N�� N����� N�� N�� N�� N� N�� N�� N�� N�� N�� N�� N�� N�� N�� N�� N�� N����� N�� N�� N�� N�� N�� NsY����)C"�)C �;,B3�'C �3B7�7C �:B7�;C �>C"� C �C"�C �C"�"C&�)C&N)r����r����r����r����r���r���r���r���r���r���r���r���r���r���r���r_���rc���r7���r���r���2��s�����������������X�_���v���&�(D�E�E�B��B��F�E�B������ �����"����������"�����$�����K��K��K�N��N��N��N��Nrc���r���c�������������������������e�Zd�Zd��ZdS�)�TestSensorsBatteryEmulatedc������������������`������fd�}t������������t����������rdnd}t����������j��������ddg�������������5�}t����������j��������||�������������5�}|����������������������t����������j�����������������������������������d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������n#�1�swxY�w�Y���|j��������sJ��|j��������sJ��d�S�)Nc������������������`�����|�����������������������d������������r!t����������j��������t����������d������������������������S�|�����������������������d������������r!t����������j��������t����������d������������������������S�|�����������������������d������������r!t����������j��������t����������d������������������������S���|�g|�R�i�|��S�)Nz/energy_now�60000000z /power_now�0z/energy_full�60000001�r���r����r����r���r��s��� �r7���r����z5TestSensorsBatteryEmulated.test_it.<locals>.open_mock���s���������}�}�]�+�+�� 8��{�1�Z�=�=�1�1�1����|�,�,�� 8��{�1�S�6�6�*�*�*����~�.�.�� 8��{�1�Z�=�=�1�1�1� �y��7��7�7�7��7�7�7rc���r����r����z os.listdir�BAT0r���rr��)rF���r���r���r����r���r����r���r����)r����r����r�����mlistdir�mopenr����s��� @r7����test_itz"TestSensorsBatteryEmulated.test_it���sC������ 8�� 8�� 8�� 8�� 8��� �),�D�o�o�2D�� �Z��F�8� <� <� <�� ?����K�Y�?�?�?�� ?�5��$�$�V�%;�%=�%=�>�>�>� ?�� ?�� ?�� ?�� ?�� ?�� ?�� ?�� ?�� ?�� ?����� ?�� ?�� ?�� ?� ?�� ?�� ?�� ?�� ?�� ?�� ?�� ?�� ?�� ?�� ?����� ?�� ?�� ?�� ?��������|�����s5����B�'A:�.B�:A> �>B�A> �B�B�BN)r����r����r����r ��r_���rc���r7���r���r������s#����������������������rc���r���c�������������������������e�Zd�Zd��Zd��ZdS�)�TestSensorsTemperaturesc������������������������fd�}t������������t����������rdnd}t����������j��������||�������������5��t����������j��������ddg�������������5��t ����������j����������������������d���������d ���������}|����������������������|j��������d �������������|����������������������|j��������d�������������|����������������������|j ��������d�������������|����������������������|j ��������d �������������d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)Nc������������������������|�����������������������d������������r!t����������j��������t����������d������������������������S�|�����������������������d������������r!t����������j��������t����������d������������������������S�|�����������������������d������������rt����������j��������d������������S�|�����������������������d������������rt����������j��������d������������S�|�����������������������d ������������rt����������j��������d ������������S���|�g|�R�i�|��S�)N�/namer����z/temp1_label�labelz/temp1_input����30000z /temp1_maxs���40000z/temp1_crit����50000)r���r����r����r���r����r��s��� �r7���r����zCTestSensorsTemperatures.test_emulate_class_hwmon.<locals>.open_mock���s���������}�}�W�%�%�� 8��{�1�V�9�9�-�-�-����~�.�.�� 8��{�1�W�:�:�.�.�.����~�.�.�� 8��z�(�+�+�+����|�,�,�� 8��z�(�+�+�+����}�-�-�� 8��z�(�+�+�+� �y��7��7�7�7��7�7�7rc���r����r����rr��r���z/sys/class/hwmon/hwmon0/temp1r���r����r���r���������>@g������D@�������I@�rF���r���r���r����r�����sensors_temperaturesr����r��r����high�critical)r����r����r�����tempr����s��� @r7����test_emulate_class_hwmonz0TestSensorsTemperatures.test_emulate_class_hwmon���s������� 8�� 8�� 8�� 8�� 8��� �),�D�o�o�2D�� �Z��� ;� ;� ;�� 6�� 6���K�*I�)J�L��L��L�� 6�� 6��2�4�4�V�<�Q�?��� � ���W�5�5�5�� � ���t�4�4�4�� � ���D�1�1�1�� � ����5�5�5� 6�� 6�� 6�� 6�� 6�� 6�� 6�� 6�� 6�� 6�� 6����� 6�� 6�� 6�� 6� 6�� 6�� 6�� 6�� 6�� 6�� 6�� 6�� 6�� 6�� 6�� 6����� 6�� 6�� 6�� 6�� 6�� 6s6����C7�BC�C7�C# �#C7�&C# �'C7�7C;�>C;c������������������������fd�}d��}t������������t����������rdnd}t����������j��������||�������������5��t����������j��������dd|�������������5��t ����������j����������������������d ���������d ���������}|����������������������|j��������d�������������|����������������������|j��������d�������������|����������������������|j ��������d �������������|����������������������|j ��������d �������������d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)Nc�����������������������|�����������������������d������������rt����������j��������d������������S�|�����������������������d������������rt����������j��������d������������S�|�����������������������d������������r!t����������j��������t ����������d������������������������S�|�����������������������d������������r!t����������j��������t ����������d������������������������S���|�g|�R�i�|��S�) N�0_tempr��r��r���0_typer���typer����)r���r����r����r����r���r��s��� �r7���r����zETestSensorsTemperatures.test_emulate_class_thermal.<locals>.open_mock���s���������}�}�X�&�&�� 8��z�(�+�+�+����v�&�&�� 8��z�(�+�+�+����x�(�(�� 8��{�1�Z�=�=�1�1�1����v�&�&�� 8��{�1�V�9�9�-�-�-� �y��7��7�7�7��7�7�7rc���c������������������L�����|�dk����rg�S�|�dk����rg�S�|�dk����rdgS�|�dk����rddgS�g�S�)Nz/sys/class/hwmon/hwmon*/temp*_*z&/sys/class/hwmon/hwmon*/device/temp*_*z /sys/class/thermal/thermal_zone*z /sys/class/thermal/thermal_zone0z,/sys/class/thermal/thermal_zone0/trip_point*z2/sys/class/thermal/thermal_zone1/trip_point_0_typez2/sys/class/thermal/thermal_zone1/trip_point_0_tempr_���rh��s��� r7���� glob_mockzETestSensorsTemperatures.test_emulate_class_thermal.<locals>.glob_mock���s\�������8�8�8�� ��A�A�A�� ��;�;�;�:�;�;��G�G�G�L�L�N��N��Irc���r����r����rr��r���Tr����r����r���rd���r��r��r��)r����r����r ��r����r��r����s��� @r7����test_emulate_class_thermalz2TestSensorsTemperatures.test_emulate_class_thermal���s������� 8�� 8�� 8�� 8�� 8� �� �� ��� �),�D�o�o�2D�� �Z��� ;� ;� ;�� 6�� 6���K��)�L�L�L�� 6�� 6��2�4�4�V�<�Q�?��� � ���R�0�0�0�� � ���t�4�4�4�� � ���D�1�1�1�� � ����5�5�5� 6�� 6�� 6�� 6�� 6�� 6�� 6�� 6�� 6�� 6�� 6����� 6�� 6�� 6�� 6� 6�� 6�� 6�� 6�� 6�� 6�� 6�� 6�� 6�� 6�� 6�� 6����� 6�� 6�� 6�� 6�� 6�� 6s6����C:� BC"�C:�"C& �&C:�)C& �*C:�:C>�C>N)r����r����r����r��r!��r_���rc���r7���r��r�����s2��������������6��6��6�6!6��!6��!6��!6��!6rc���r��c�������������������������e�Zd�Zd��ZdS�)�TestSensorsFansc������������������������fd�}t������������t����������rdnd}t����������j��������||�������������5��t����������j��������ddg�������������5��t ����������j����������������������d���������d ���������}|����������������������|j��������d �������������|����������������������|j��������d�������������d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)Nc������������������`�����|�����������������������d������������r!t����������j��������t����������d������������������������S�|�����������������������d������������r!t����������j��������t����������d������������������������S�|�����������������������d������������r!t����������j��������t����������d������������������������S���|�g|�R�i�|��S�)Nr��r����z/fan1_labelr��z/fan1_input�2000r��r��s��� �r7���r����z4TestSensorsFans.test_emulate_data.<locals>.open_mock��s���������}�}�W�%�%�� 8��{�1�V�9�9�-�-�-����}�-�-�� 8��{�1�W�:�:�.�.�.����}�-�-�� 8��{�1�V�9�9�-�-�-� �y��7��7�7�7��7�7�7rc���r����r����rr��r���z/sys/class/hwmon/hwmon2/fan1r���r����r���r��i���) rF���r���r���r����r�����sensors_fansr����r��r���)r����r����r�����fanr����s��� @r7���r���z!TestSensorsFans.test_emulate_data ��sj������ 8�� 8�� 8�� 8�� 8��� �),�D�o�o�2D�� �Z��� ;� ;� ;�� 4�� 4���K�*H�)I�K��K��K�� 4�� 4��)�+�+�F�3�A�6��� � ���G�4�4�4�� � ���d�3�3�3� 4�� 4�� 4�� 4�� 4�� 4�� 4�� 4�� 4�� 4�� 4����� 4�� 4�� 4�� 4� 4�� 4�� 4�� 4�� 4�� 4�� 4�� 4�� 4�� 4�� 4�� 4����� 4�� 4�� 4�� 4�� 4�� 4s6����C�AB)�C�)B- �-C�0B- �1C�C�CN)r����r����r����r���r_���rc���r7���r#��r#�� ��s#��������������4��4��4��4��4rc���r#��c�������������������������e�Zd�Z�e��������������d����������������Zd��Z�ej��������ed������������d����������������Z d��Z d��Zd��Zd��Z d ��Zd ��Zd��Zd��Zd ��Zd��Zd��Z�ej��������e�d������������d����������������Zd��Zd��Zd��Zd��ZdS�)�TestProcessc����������������������|�������������������������������������}t����������j�����������������������������|j�������������������������������������������������������\��}}}t����������j��������|j�����������������������������������������d�������������}|����������������������|t����������d��|D���������������������������d��������������|����������������������|t����������d��|D���������������������������d��������������|����������������������|t����������d��|D���������������������������d��������������d�S�)NF)�groupedc������������������,�����g�|�]}|j���������|j��������z�����S�r_���)� private_dirty� private_cleanr����s��� r7���rh���z?TestProcess.test_parse_smaps_vs_memory_maps.<locals>.<listcomp>0��s!������F�F�F�A�a�o���7�F�F�Frc���r��r����c�����������������������g�|�] }|j����������� S�r_���)�pssr����s��� r7���rh���z?TestProcess.test_parse_smaps_vs_memory_maps.<locals>.<listcomp>3��s������*�*�*��a�e�*�*�*rc���c�����������������������g�|�] }|j����������� S�r_���)r9��r����s��� r7���rh���z?TestProcess.test_parse_smaps_vs_memory_maps.<locals>.<listcomp>5��s������,�,�,�!�q�v�,�,�,rc���) �spawn_testprocr����ry��r���r����_parse_smaps�memory_mapsr����r���)r�����sproc�ussr1��r9���mapss��� r7����test_parse_smaps_vs_memory_mapsz+TestProcess.test_parse_smaps_vs_memory_maps*��s������#�#�%�%����0�0���;�;�H�H�J�J���S�$��~�e�i�(�(�4�4�U�4�C�C�������F�F��F�F�F�G�G��� �� �� �� �� �����*�*�T�*�*�*�+�+�4�� �� 9�� 9�� 9�����#�,�,�t�,�,�,�-�-�T�� �� ;�� ;�� ;�� ;�� ;rc���c�����������������������t����������dt����������j����������������������z��t����������j��������d�����������������������������������������������������������5�}t����������j�����������������������������t����������j����������������������������������}|� ����������������������������������\��}}}|j ��������sJ��|����������������������|d�������������|����������������������|d�������������|����������������������|d�������������d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)N�/proc/%s/smapsa��� fffff0 r-xp 00000000 00:00 0 [vsyscall] Size: 1 kB Rss: 2 kB Pss: 3 kB Shared_Clean: 4 kB Shared_Dirty: 5 kB Private_Clean: 6 kB Private_Dirty: 7 kB Referenced: 8 kB Anonymous: 9 kB LazyFree: 10 kB AnonHugePages: 11 kB ShmemPmdMapped: 12 kB Shared_Hugetlb: 13 kB Private_Hugetlb: 14 kB Swap: 15 kB SwapPss: 16 kB KernelPageSize: 17 kB MMUPageSize: 18 kB Locked: 19 kB VmFlags: rd ex i�l��r��i�<��)r����rM��r���r����r����r����r����ry��r���r4��r����r����)r����r����r���r7��r1��r9��s��� r7����test_parse_smaps_mockedz#TestProcess.test_parse_smaps_mocked7��s!����� ��r�y�{�{�*��O���� �� �,��V�X�X�1���� .�0�#$���'�'�� ���4�4�A��^�^�-�-�N�C��d��8�O�O�O����S�"5�6�6�6����S�(�+�+�+����T�9�-�-�-�= .�� .�� .�� .�� .�� .�� .�� .�� .�� .�� .�� .����� .�� .�� .�� .�� .�� .s���� BC*�*C.�1C.zunreliable on PYPYc������������������D����d��}|�������������������������������������}t����������|d������������5��|�����������������������||������������j��������d�������������d�d�d��������������n#�1�swxY�w�Y���t����������|d������������5��|�����������������������||������������j��������d�������������d�d�d��������������n#�1�swxY�w�Y���t����������|d������������5��|�����������������������||������������j��������d�������������d�d�d��������������n#�1�swxY�w�Y���t����������|d������������5��|�����������������������||������������j��������d�������������d�d�d��������������n#�1�swxY�w�Y���t����������|d������������5��|�����������������������||������������j��������d�������������d�d�d��������������n#�1�swxY�w�Y���t����������|d������������5��|�����������������������||������������j��������d�������������d�d�d��������������n#�1�swxY�w�Y���t����������r�t����������|�������������t����������|d������������5��|�����������������������||������������j��������d�������������d�d�d��������������n#�1�swxY�w�Y���t����������|�������������t����������|d ������������5��|�����������������������||������������j��������d�������������d�d�d��������������d�S�#�1�swxY�w�Y���d�S�d�S�) Nc����������������������t����������j����������������������}t����������j����������������������t����������z���} �|�����������������������������������D�]G}|j��������t����������j�����������������������������|�������������k����r|c�S�t����������j����������������������|k����r�n�H�]r^���) r����r����timer ���� open_filesr���rM���abspathr���)�fnamer���� giveup_at�files��� r7���� get_test_filez7TestProcess.test_open_files_mode.<locals>.get_test_file\��s�������� � �A�� ���n�4�I� ��L�L�N�N�����D��y�B�G�O�O�E�$:�$:�:�:�#��������y�0�0����1� rc���r���r���r��zr+zw+za+ra���zx+)r���rF���r�����moder���r���)r����rE���testfns��� r7����test_open_files_modez TestProcess.test_open_files_modeZ��s������ @�� @�� @�����"�"�� �&�#� � �� >�� >����]�]�6�2�2�7��=�=�=� >�� >�� >�� >�� >�� >�� >�� >�� >�� >�� >����� >�� >�� >�� >� �&�#� � �� >�� >����]�]�6�2�2�7��=�=�=� >�� >�� >�� >�� >�� >�� >�� >�� >�� >�� >����� >�� >�� >�� >� �&�#� � �� >�� >����]�]�6�2�2�7��=�=�=� >�� >�� >�� >�� >�� >�� >�� >�� >�� >�� >����� >�� >�� >�� >���&�$� � �� ?�� ?����]�]�6�2�2�7��>�>�>� ?�� ?�� ?�� ?�� ?�� ?�� ?�� ?�� ?�� ?�� ?����� ?�� ?�� ?�� ?� �&�$� � �� ?�� ?����]�]�6�2�2�7��>�>�>� ?�� ?�� ?�� ?�� ?�� ?�� ?�� ?�� ?�� ?�� ?����� ?�� ?�� ?�� ?� �&�$� � �� ?�� ?����]�]�6�2�2�7��>�>�>� ?�� ?�� ?�� ?�� ?�� ?�� ?�� ?�� ?�� ?�� ?����� ?�� ?�� ?�� ?���� C�������f�c�"�"�� B�� B�� � ���v�!6�!6�!;�S�A�A�A� B�� B�� B�� B�� B�� B�� B�� B�� B�� B�� B����� B�� B�� B�� B�������f�d�#�#�� C�� C�� � ���v�!6�!6�!;�T�B�B�B� C�� C�� C�� C�� C�� C�� C�� C�� C�� C�� C�� C����� C�� C�� C�� C�� C�� C� C�� Cs�����%A�A� A�4%B%�%B)�,B)��%C1�1C5�8C5�%D=�=E�E�%F � F �F �$%G�G�G�%H7�7H;�>H;�!%J�J�Jc�����������������������t����������j����������������������}|�����������������������������������}t����������|������������������������������������d������������5��t����������|j��������dt ����������|������������z���������������t����������j��������dt����������t����������j��������d�������������������������5�}|�����������������������������������}|rJ��|j��������sJ�� �d�d�d��������������n#�1�swxY�w�Y���t����������j��������dt����������t����������j ��������d�������������������������5�}|����������������������|�����������������������������������g��������������|j��������sJ�� �d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)Nr����len(ret) != %i�psutil._pslinux.os.readlinkrd���rr��)r����r���r@��rF���r���r���rJ���r���r�����OSErrorr��r��r�����EINVALr����)r����r����filesr����s��� r7����test_open_files_file_gonez%TestProcess.test_open_files_file_gone��s������ �N���������� �$�/�/�#�#�S� )� )�� �� ��q�|�%5��E� � �%B�C�C�C���9�(/���b�(A�(A�C��C��C�� �FG������� � � � ��x����� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� ����9�(/���b�(A�(A�C��C��C�� �FG�� � �������4�4�4��x����� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� � �� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� �� �� s[���� AE�"C �E� C �E�C �1E�2E�9E�E � E�E � E�E!�$E!c����������������������t����������j����������������������}|�����������������������������������}t����������|������������������������������������d������������5��t����������|j��������dt ����������|������������z���������������t����������rdnd}t����������j ��������|t����������t����������j��������d�������������������������5�}|�����������������������������������}|rJ��|j ��������sJ�� �d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)Nr���rJ��r����r����rd���rr��)r����r���r@��rF���r���r���rJ���r���r���r����r��r��r��r�����r����r���rN��r����r����s��� r7����test_open_files_fd_gonez#TestProcess.test_open_files_fd_gone���sm������ �N���������� �$�/�/�#�#�S� )� )�� �� ��q�|�%5��E� � �%B�C�C�C�-0�H�/�/�6H�K���K�(/���b�(A�(A�C��C��C�� �FG������� � � � ��x����� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� � �� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� �� �� s7���� AC0�)"C�C0�C �C0�C � C0�0C4�7C4c������������������@����t����������j����������������������}|�����������������������������������}t����������|������������������������������������d������������5��t����������|j��������dt ����������|������������z���������������d}t����������j��������|t����������t����������j��������d�������������������������5�}t����������j��������d������������5��|�����������������������������������}|rJ��|j��������sJ�� �d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)Nr���rJ��rK��rd���rr���psutil._pslinux.debug) r����r���r@��rF���r���r���rJ���r���r����rL��r���ENAMETOOLONGr����rQ��s��� r7����test_open_files_enametoolongz(TestProcess.test_open_files_enametoolong���s������� �N���������� �$�/�/�#�#�S� )� )�� $�� $��q�|�%5��E� � �%B�C�C�C�7�K���K�(/��0B�B�(G�(G�I��I��I�� $�LM��Z� 7�8�8��$��$��L�L�N�N�E�$�$�$�$��8�O�O�O�O�$��$��$��$��$��$��$��$��$��$��$�����$��$��$��$� $�� $�� $�� $�� $�� $�� $�� $�� $�� $�� $����� $�� $�� $�� $� $�� $�� $�� $�� $�� $�� $�� $�� $�� $�� $�� $����� $�� $�� $�� $�� $�� $s[���� AD� C;�5"C$�C;�$C(�(C;�+C(�,C;�/D�;C? �?D�C? �D�D�Dc������������������"����t����������j��������di��������������5�}|����������������������t����������j�����������������������������t ����������j����������������������������������������������������������������������������������|j ��������sJ�� �d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)Nz)psutil._pslinux._psposix.get_terminal_mapr���) r���r����r{��r����ry��r���rM��r����terminalr����r>��s��� r7����test_terminal_mockedz TestProcess.test_terminal_mocked���s������� �Z�C�%'�)��)��)�� �,-����f�o�5�5�b�i�k�k�B�B�K�K�M�M�N�N�N��8�O�O�O�O� �� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� �� �� s����AB�B�Bc������������������>����t����������j����������������������}t����������j��������t ����������d������������������������}t����������j��������d|d�������������5�}|����������������������|�����������������������������������ddg�������������|j ��������sJ�� �d�d�d��������������n#�1�swxY�w�Y���t����������j��������t ����������d������������������������}t����������j��������d|d�������������5�}|����������������������|�����������������������������������g�d��������������|j ��������sJ�� �d�d�d��������������d�S�#�1�swxY�w�Y���d�S�) Nzfoo�bar�r-��Trv��r����barz foo�bar���r���r[��rd���� r����r���r����r����r���r���r����r�����cmdliner�����r����r���r���r����s��� r7����test_cmdline_mockedzTestProcess.test_cmdline_mocked���s�������N�����K��"2� 3� 3�4�4� � �Z�-�%.�t�=��=��=�� �@A����Q�Y�Y�[�[�5�%�.�9�9�9��8�O�O�O�O� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� ���K��"6� 7� 7�8�8� � �Z�-�%.�t�=��=��=�� �@A����Q�Y�Y�[�[�*<�*<�*<�=�=�=��8�O�O�O�O� �� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� �� �� �$����4B � B�B�4D�D�Dc������������������>����t����������j����������������������}t����������j��������t ����������d������������������������}t����������j��������d|d�������������5�}|����������������������|�����������������������������������ddg�������������|j ��������sJ�� �d�d�d��������������n#�1�swxY�w�Y���t����������j��������t ����������d������������������������}t����������j��������d|d�������������5�}|����������������������|�����������������������������������g�d��������������|j ��������sJ�� �d�d�d��������������d�S�#�1�swxY�w�Y���d�S�) Nzfoo bar r-��Trv��r���r[��z foo bar r\��r]��r_��s��� r7����test_cmdline_spaces_mockedz&TestProcess.test_cmdline_spaces_mocked���s�������N�����K��*� � �.�.� � �Z�-�%.�t�=��=��=�� �@A����Q�Y�Y�[�[�5�%�.�9�9�9��8�O�O�O�O� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� ���K��+���/�/� � �Z�-�%.�t�=��=��=�� �@A����Q�Y�Y�[�[�*<�*<�*<�=�=�=��8�O�O�O�O� �� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� �� �� ra��c������������������6����t����������j����������������������}t����������j��������t ����������d������������������������}t����������j��������d|d�������������5�}|����������������������|�����������������������������������ddg�������������|j ��������sJ�� �d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)Nzfoo bar�r-��Trv��r���r[��r]��r_��s��� r7����test_cmdline_mixed_separatorsz)TestProcess.test_cmdline_mixed_separators���s�������� �N�����K��"2� 3� 3�4�4� � �Z�-�%.�t�=��=��=�� �@A����Q�Y�Y�[�[�5�%�.�9�9�9��8�O�O�O�O� �� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� �� �� s����4B�B�Bc������������������H����t����������j��������dd�������������5��|����������������������t����������j���������������������������������������������������������d�������������|����������������������t����������j���������������������������������������������������������d�������������d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)NrK��z/home/foo (deleted)r���z /home/foo)r���r����r����r����r����exe�cwdr���s��� r7����!test_readlink_path_deleted_mockedz-TestProcess.test_readlink_path_deleted_mocked���s������� �Z�5�%:�<��<��<�� B�� B����V�^�-�-�1�1�3�3�[�A�A�A����V�^�-�-�1�1�3�3�[�A�A�A� B�� B�� B�� B�� B�� B�� B�� B�� B�� B�� B�� B����� B�� B�� B�� B�� B�� Bs����A3B�B�Bc�������������������������fd�}t������������t����������rdnd}t����������j��������||�������������5�}t ����������j���������������������������������������������������������}|j��������sJ��|����������������������|g��������������d�d�d��������������n#�1�swxY�w�Y����fd�}t����������j��������||�������������5��|�� ��������������������t����������j ��������t ����������j����������������������j���������������������d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)Nc������������������������|�����������������������dt����������j����������������������z��������������rt����������t����������j��������d���������������|�g|�R�i�|��S��Nz /proc/%s/taskrd���)rw���rM��r���r��r��r��r��s��� �r7����open_mock_1z4TestProcess.test_threads_mocked.<locals>.open_mock_1���sT���������������<�=�=�� 8��e�l�B�/�/�/� �y��7��7�7�7��7�7�7rc���r����r����rr��c������������������������|�����������������������dt����������j����������������������z��������������rt����������t����������j��������d���������������|�g|�R�i�|��S�rl��)rw���rM��r���r��r���EPERMr��s��� �r7����open_mock_2z4TestProcess.test_threads_mocked.<locals>.open_mock_2��sT���������������<�=�=�� 8��e�k�2�.�.�.� �y��7��7�7�7��7�7�7rc���)rF���r���r���r����r����r���r���r����r����r<���AccessDenied)r����rm��r����r����r����rp��r����s��� @r7����test_threads_mockedzTestProcess.test_threads_mocked���s������� 8�� 8�� 8�� 8�� 8��� �),�D�o�o�2D�� �Z��� =� =� =�� &���.�"�"�*�*�,�,�C��8�O�O�O����S�"�%�%�%� &�� &�� &�� &�� &�� &�� &�� &�� &�� &�� &����� &�� &�� &�� &� 8�� 8�� 8�� 8�� 8���Z��� =� =� =�� M�� M����f�1�6�>�3C�3C�3K�L�L�L� M�� M�� M�� M�� M�� M�� M�� M�� M�� M�� M�� M����� M�� M�� M�� M�� M�� Ms$����AB���B�B�&7C*�*C.�1C.c������������������x����t����������j��������dt����������t����������j��������d�������������������������5�}t����������j��������dt����������j��������dd�������������������������5�}t����������j���������������������������������������������������������}|j ��������sJ��|j ��������sJ��|�� ��������������������|d�������������t����������j��������dd�������������5��|����������������������t ����������j��������t����������j����������������������j���������������������d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������d�S�#�1�swxY�w�Y���d�S�) Nzpsutil._pslinux.readlinkrd���rr��zpsutil.Process.cmdliner���zpsutil._pslinux.os.path.lexistsFr���) r���r����rL��r��r��r����rq��r���rg��r����r����r<��� ZombieProcess)r����r���r���r����s��� r7����test_exe_mockedzTestProcess.test_exe_mocked ��s0����� �Z�2�$+�E�L�"�$=�$=�?��?��?�� D�BD���4�(.�(;�A�r�(B�(B�D��D��D�� D�GI� ��n�&�&�*�*�,�,���y� � � ��y� � � �� � ��b�)�)�)���Z� A�-2�4��4��4��D��D��%�%��,�f�n�.>�.>�.B�D��D��D�D��D��D��D��D��D��D��D��D��D��D�����D��D��D��D� D�� D�� D�� D�� D�� D�� D�� D�� D�� D�� D����� D�� D�� D�� D� D�� D�� D�� D�� D�� D�� D�� D�� D�� D�� D�� D����� D�� D�� D�� D�� D�� DsZ����*D/�A$D�=7D��4D��D�D�D�D�D/�D �D/�D �D/�/D3�6D3c������������������v����t����������dt����������j����������������������z��t����������t����������j��������d������������������������5�}t ����������j����������������������}|����������������������t����������������������5��|� �����������������������������������d�d�d��������������n#�1�swxY�w�Y���|j��������sJ�� �d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)Nr;��rd���)r����rM��r���r��r��r��r����r���r<��r���r5��r�����r����r����r���s��� r7����test_issue_1014zTestProcess.test_issue_1014"��s$������!� �2�9�;�;�.����b�)�)�+��+�� �./��� � �A��"�"�#4�5�5�� �� �� � ���� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� ��8�O�O�O�O� �� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� �� �� s5����.B.�+B��B.�B �B.�B �B.�.B2�5B2r���c������������������N����t����������j��������dt����������t����������j��������d�������������������������5�}t����������j����������������������}|������������������������������������|����������������������t ����������j ��������������������5�}|� ��������������������t ����������j���������������������d�d�d��������������n#�1�swxY�w�Y���|j��������sJ�� �d�d�d��������������n#�1�swxY�w�Y���|�� ��������������������|j��������j��������|j���������������������|�� ��������������������|j��������j��������|������������������������������������������������d�S�)Nzpsutil._pslinux.prlimitrd���rr��)r���r����rL��r���ENOSYSr����r���r����r<��rt���rlimit� RLIMIT_NOFILEr����r����� exceptionr����r����r����r���r����s��� r7����test_rlimit_zombiezTestProcess.test_rlimit_zombie-��sm����� ��Z�1�$+�E�L�"�$=�$=�?��?��?�� �BC��� � �A� �F�F�H�H�H��"�"�6�#7�8�8�� /�C�����-�.�.�.� /�� /�� /�� /�� /�� /�� /�� /�� /�� /�� /����� /�� /�� /�� /��8�O�O�O�O� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� �� �����*�A�E�2�2�2������+�Q�V�V�X�X�6�6�6�6�6s6����AC�6 B"�C�"B& �&C�)B& �*C�C� Cc������������������8����t����������j��������dt����������t����������j��������d�������������������������5�}t����������j����������������������}|������������������������������������|����������������������t ����������j ��������������������5�}|� �����������������������������������d�d�d��������������n#�1�swxY�w�Y���|j��������sJ�� �d�d�d��������������n#�1�swxY�w�Y���|����������������������|j ��������j��������|j���������������������|����������������������|j ��������j��������|������������������������������������������������d�S�)NrK��rd���rr��)r���r����rL��r��r��r����r���r����r<��rt��rh��r����r����r}��r���r~��s��� r7����test_cwd_zombiezTestProcess.test_cwd_zombie<��sc����� �Z�5�$+�E�L�"�$=�$=�?��?��?�� �BC��� � �A� �F�F�H�H�H��"�"�6�#7�8�8�� �C������� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� ��8�O�O�O�O� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� �� �����*�A�E�2�2�2������+�Q�V�V�X�X�6�6�6�6�6s6����AB8�6B�B8�B �B8�B �B8�8B<�?B<c������������������^����g�d�}d����������������������|�����������������������������������������������}t����������dt����������j����������������������z��|������������5��t����������j����������������������}|����������������������|�����������������������������������d�������������|����������������������|� ����������������������������������t ����������j ���������������������|����������������������|�����������������������������������d�������������|����������������������|�����������������������������������dt����������z��t����������j����������������������z����������������|�����������������������������������}|����������������������|j��������dt����������z���������������|����������������������|j��������dt����������z���������������|����������������������|j��������d t����������z���������������|����������������������|j��������d t����������z���������������|����������������������|j��������dt����������z���������������|����������������������|�����������������������������������d�������������d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)N)*r��z(cat)�Z�1r��r��r��r��r��r��r��r��r���2�3�4�5r��r��r��r���6r��r��r��r��r��r��r��r��r��r��r��r��r��r��r��r��r���r��r���7r����z /proc/%s/stat�catr����rF��rD��r����rD���r����rF��)rM���r����r����rM��r���r����r���r����r�����status� STATUS_ZOMBIE�ppid�create_timer���r���rK��r����system� children_user�children_system�iowait�cpu_num)r����r����r����r����cpus��� r7����test_stat_file_parsingz"TestProcess.test_stat_file_parsingG��s �����+ ��+ ��+ ��X��(�(�4�.�.�'�'�)�)�� ������<�g� F� F�� -�� -��� � �A����Q�V�V�X�X�u�-�-�-����Q�X�X�Z�Z��)=�>�>�>����Q�V�V�X�X�q�)�)�)����� � ����[��6�3C�3E�3E�!E� G�� G�� G��+�+�-�-�C����S�X�q�;��7�7�7����S�Z��[��9�9�9����S�.��K��@�@�@����S�0�!�k�/�B�B�B����S�Z��[��9�9�9����Q�Y�Y�[�[�!�,�,�,� -�� -�� -�� -�� -�� -�� -�� -�� -�� -�� -�� -����� -�� -�� -�� -�� -�� -s����GH"�"H&�)H&c����������� �����������t����������dt����������j����������������������z��t����������j��������d�����������������������������������������������������������5��t ����������j����������������������}|����������������������|� ����������������������������������j ��������d�������������|����������������������|� ����������������������������������j��������d�������������|����������������������|�����������������������������������d�������������|� ����������������������������������}|����������������������|j��������d�������������|����������������������|j��������d�������������|����������������������|j��������d�������������|�����������������������������������}|����������������������|j��������d �������������|����������������������|j��������d �������������|����������������������|j��������d�������������|����������������������|j�������������������������������������������t)����������t+����������dd �������������������������������������d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)Nr���a�� Uid: 1000 1001 1002 1003 Gid: 1004 1005 1006 1007 Threads: 66 Cpus_allowed: f Cpus_allowed_list: 0-7 voluntary_ctxt_switches: 12 nonvoluntary_ctxt_switches: 13r����� ����B���i���i���i���i���i���i���r���rG��)r����rM��r���r����r����r����r����r���r�����num_ctx_switches� voluntary�involuntary�num_threads�uids�real� effective�saved�gids�_proc�_get_eligible_cpus�listrL���)r����r���r���r���s��� r7����test_status_file_parsingz$TestProcess.test_status_file_parsing���s����� ��� ���+��O��3�� 4�� 4��5;�F�H�H� >�� >�� N�� N���� � �A����Q�/�/�1�1�;�R�@�@�@����Q�/�/�1�1�=�r�B�B�B����Q�]�]�_�_�b�1�1�1��6�6�8�8�D����T�Y��-�-�-����T�^�T�2�2�2����T�Z��.�.�.��6�6�8�8�D����T�Y��-�-�-����T�^�T�2�2�2����T�Z��.�.�.����Q�W�7�7�9�9�4��a����;L�;L�M�M�M�- N�� N�� N�� N�� N�� N�� N�� N�� N�� N�� N�� N����� N�� N�� N�� N�� N�� Ns���� F(G>�>H�Hc������������������R����t����������j��������dt����������t����������j��������d�������������������������5�}t����������j����������������������}t����������j��������d������������5��|�����������������������������������rJ��|j��������sJ�� �d�d�d��������������n#�1�swxY�w�Y���d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)NrK��rd���rr��rT��) r���r����rL��r��rU��r����r����connectionsr����rw��s��� r7����test_connections_enametoolongz)TestProcess.test_connections_enametoolong���s'�������Z�5�$+�E�,>��$C�$C�E��E��E�� �HI��� � �A���3�4�4�� �� ��=�=�?�?�*�*�*��x����� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� � �� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� �� �� s5����(B� B�8B�B �B�B �B�B �#B N)r����r����r����r���r9��r<��r����r���r���rH��rO��rR��rV��rY��r`��rc��re��ri��rr��ru��rx��r���r��r���r���r���r���r_���rc���r7���r*��r*��'��s������������������� ;�� ;���� ;� .�� .�� .�F��X�_�T�/�0�0�"C��"C��1�0�"C�H �� �� �( �� �� � $��$��$�&��������������������B��B��B�M��M��M�:D��D��D�* �� �� ���X�_��^�_�5�5�7��7��6�5�7� 7�� 7�� 7�;-��;-��;-�zN��N��N�2 �� �� �� �� rc���r*��c�������������������������e�Zd�ZdZed����������������Zd��Zd��Zd��Zd��Z d��Z d��Zd ��Z�e ��������������d ����������������Zd��Zd��Zd S�)�TestProcessAgainstStatusa��/proc/pid/stat and /proc/pid/status have many values in common. Whenever possible, psutil uses /proc/pid/stat (it's faster). For all those cases we check that the value found in /proc/pid/stat (by psutil) matches the one found in /proc/pid/status. c������������������6�����t����������j����������������������|�_��������d�S�r^���)r����r����proc)�clss��� r7���� setUpClassz#TestProcessAgainstStatus.setUpClass���s�������>�#�#����rc���c����������������������t�����������j�����������������������������d|�j��������j��������z��������������5�}|D�]�}|�����������������������������������}|���������������������|������������rY|���������������������d������������d���������} �t����������|������������c�cd�d�d��������������S�#�t����������$�r�|cY�c�cd�d�d��������������S�w�xY�w��t����������d|z���������������#�1�swxY�w�Y���d�S�)Nr���� rD��z can't find %r) r�����_psplatform� open_textr���r���r����rw���� partitionrz���rK���)r����� linestartrQ���rS���rY��s��� r7����read_status_filez)TestProcessAgainstStatus.read_status_file���sM����� � � )� )�!�D�I�M�1�3��3�� :�67��� %�� %���z�z�|�|���?�?�9�-�-��%� �N�N�4�0�0��3�E�%�"�5�z�z�)�)� :�� :�� :�� :�� :�� :�� :�� :���&��%��%��%�$����� :�� :�� :�� :�� :�� :�� :�� :�%���� %���_�y�8�9�9�9� :�� :�� :�� :����� :�� :�� :�� :�� :�� :s6����A C�7B�C�B1� C�0B1�1C�C�Cc�����������������������|�����������������������d������������}|����������������������|�j�������������������������������������������|�������������d�S�)NzName:)r���r����r���r�����r����rY��s��� r7���� test_namez"TestProcessAgainstStatus.test_name����=�������%�%�g�.�.���������)�)�5�1�1�1�1�1rc���c����������������������|�����������������������d������������}||���������������������d������������dz���|���������������������d����������������������}|���������������������dd������������}|����������������������|�j�������������������������������������������|�������������d�S�)NzState:�(r�����)r����rW��)r���r����rfindr���r����r���r���r���s��� r7����test_statusz$TestProcessAgainstStatus.test_status���s|�������%�%�h�/�/���e�j�j��o�o��)�%�+�+�c�*:�*:�:�;��� � �c�3�'�'�������)�)�+�+�U�3�3�3�3�3rc���c�����������������������|�����������������������d������������}|����������������������|�j�������������������������������������������|�������������d�S�)NzPPid:)r���r����r���r���r���s��� r7���� test_ppidz"TestProcessAgainstStatus.test_ppid���r���rc���c�����������������������|�����������������������d������������}|����������������������|�j�������������������������������������������|�������������d�S�)NzThreads:)r���r����r���r���r���s��� r7����test_num_threadsz)TestProcessAgainstStatus.test_num_threads���s?�������%�%�j�1�1�������.�.�0�0�%�8�8�8�8�8rc���c����������������������|�����������������������d������������}t����������t����������t����������|�����������������������������������dd����������������������������������}|����������������������|�j�������������������������������������������|�������������d�S�)NzUid:r����rD���)r���r����r����rz���rH���r����r���r���r���s��� r7���� test_uidsz"TestProcessAgainstStatus.test_uids����e�������%�%�f�-�-���c�#�u�{�{�}�}�Q�q�S�1�2�2�3�3���������)�)�5�1�1�1�1�1rc���c����������������������|�����������������������d������������}t����������t����������t����������|�����������������������������������dd����������������������������������}|����������������������|�j�������������������������������������������|�������������d�S�)NzGid:r����rD���)r���r����r����rz���rH���r����r���r���r���s��� r7���� test_gidsz"TestProcessAgainstStatus.test_gids���r���rc���c������������������"����|�����������������������d������������}|����������������������|�j�������������������������������������������j��������|�������������|�����������������������d������������}|����������������������|�j�������������������������������������������j��������|�������������d�S�)Nzvoluntary_ctxt_switches:znonvoluntary_ctxt_switches:)r���r����r���r���r���r���r���s��� r7����test_num_ctx_switchesz.TestProcessAgainstStatus.test_num_ctx_switches���s~�������%�%�&@�A�A�������3�3�5�5�?��G�G�G��%�%�&C�D�D�������3�3�5�5�A�5�I�I�I�I�Irc���c����������� �������B����|�����������������������d������������}dt����������|������������v�rxt����������t����������|���������������������d������������������������\��}}|����������������������|�j�������������������������������������������t����������t����������||dz����������������������������������������d�S�d�S�)N�Cpus_allowed_list:rW��r����) r���r����r����rz���rH���r����r����cpu_affinityr���rL���)r����rY���min_�max_s��� r7����test_cpu_affinityz*TestProcessAgainstStatus.test_cpu_affinity���s��������%�%�&:�;�;���#�e�*�*����S�%�+�+�c�"2�"2�3�3�J�D�$����� �&�&�(�(�$�u�T�4�!�8�/D�/D�*E�*E� G�� G�� G�� G�� G���rc���c����������������������|�����������������������d������������}t����������j��������d������������5�}|�j��������j��������������������������������������������d�d�d��������������n#�1�swxY�w�Y���dt ����������|������������v�r|j��������rJ��d�S�|j��������sJ��d�S�)Nr���zpsutil._pslinux.per_cpu_timesrW��)r���r���r����r���r���r���r����r����)r����rY��r����s��� r7����test_cpu_affinity_eligible_cpusz8TestProcessAgainstStatus.test_cpu_affinity_eligible_cpus���s��������%�%�&:�;�;�� �Z�7� 8� 8�� 1�A��I�O�.�.�0�0�0� 1�� 1�� 1�� 1�� 1�� 1�� 1�� 1�� 1�� 1�� 1����� 1�� 1�� 1�� 1��#�e�*�*����x�������8�O�O�O�O�Os����A�A�AN)r����r����r�����__doc__�classmethodr���r���r���r���r���r���r���r���r���r���r���r���r_���rc���r7���r���r������s��������������������$��$���[�$�:��:��:�2��2��2�4��4��4�2��2��2�9��9��9�2��2��2� 2��2��2� �����J��J����J�G��G��G���������rc���r���c�������������������������e�Zd�Zd��ZdS�)� TestUtilsc������������������������t����������j��������dd�������������5�}|����������������������t����������j�����������������������������d������������d�������������|j��������sJ�� �d�d�d��������������d�S�#�1�swxY�w�Y���d�S�)Nzos.readlinkz foo (deleted)r���r[��r���)r���r����r����r����r����readlinkr����r>��s��� r7���� test_readlinkzTestUtils.test_readlink���s������� �Z� �O� D� D� D�� �����V�/�8�8��?�?��G�G�G��8�O�O�O�O� �� �� �� �� �� �� �� �� �� �� �� ����� �� �� �� �� �� s����=A"�"A&�)A&N)r����r����r����r���r_���rc���r7���r���r������s#����������������������rc���r����__main__)� run_from_name)fr���� __future__r���rx���r,���r���globr����rM��r����r���r)���r2���r����r?��r����r����r����r����psutil._compatr���r���r���r����psutil.testsr ���r ���r���r���r ���r���r���r���r���r���r���r���r���r���r���r���r���r���r���rx��r���r���r���r���r���rA���dirname�__file__�HEREr1����SIOCGIFCONFrj���r;���r?���rM���EMPTY_TEMPERATURESr8���r<���r@���r[���rm���r����r����r����r�����contextmanagerr����r����r���r����r����r����r!��rB��rT��r���r���r���r���r���r���r���r��r$��rA��rr��r���r���r���r��r#��r*��r���r���r�����psutil.tests.runnerr���r_���rc���r7����<module>r������s������������������������������������������������ � � � �� � � � �� � � � �� � � � �� � � � �� � � � ���������������������� � � � ��������������������������,��,��,��,��,��,��%��%��%��%��%��%��������������'��'��'��'��'��'��'��'��'��'��'��'��$��$��$��$��$��$��%��%��%��%��%��%��'��'��'��'��'��'��#��#��#��#��#��#��������������-��-��-��-��-��-��*��*��*��*��*��*��'��'��'��'��'��'��#��#��#��#��#��#��#��#��#��#��#��#��������������&��&��&��&��&��&��)��)��)��)��)��)��$��$��$��$��$��$��������������0��0��0��0��0��0�������������� ��,�+�+�+�+�+�+�2�2�2�2�2�2�4�4�4�4�4�4�+�+�+�+�+�+�� �w���r�w���x�0�0�1�1������� ���������K�"���#<�=�=�=��� =�� =�� =� =�� =�� =� =�� =�� =������,K��K��K�$F��F��F�E��E��E�*@��@��@�@��@��@�����������,��� �� ���� �*����U��L�)�)�3D��3D��3D��3D��3D���3D��3D��*�)�3D�l����U��L�)�)�/A��/A��/A��/A��/A�>��/A��/A��*�)�/A�d����U��L�)�)�S6��S6��S6��S6��S6�>��S6��S6��*�)�S6�v����U��L�)�)�S��S��S��S��S�>��S��S��*�)�S�v����U��L�)�)�3��3��3��3��3���3��3��*�)�3�(����U��L�)�)�< ��< ��< ��< ��< ���< ��< ��*�)�< �~����U��L�)�)����������n������*�)��8����U��L�)�)�J8��J8��J8��J8��J8�^��J8��J8��*�)�J8�Z����U��L�)�)� F�� F�� F�� F�� F��� F�� F��*�)� F�����U��L�)�)� O�� O�� O�� O�� O�.�� O�� O��*�)� O�$����U��L�)�)�E��E��E��E��E�>��E��E��*�)�E�R����U��L�)�)�/5��/5��/5��/5��/5�>��/5��/5��*�)�/5�d����U��L�)�)�+B��+B��+B��+B��+B�n��+B��+B��*�)�+B�\����U��L�)�)����������~������*�)��@����U��L�)�)�<)��<)��<)��<)��<)�~��<)��<)��*�)�<)�~����U��L�)�)�DL��DL��DL��DL��DL�~��DL��DL��*�)�DL�N����U��L�)�)�:;��:;��:;��:;��:;�^��:;��:;��*�)�:;�D����U��L�)�)�r��r��r��r��r�~��r��r��*�)�r�t����U��L�)�)����[��,�/�/�zN��zN��zN��zN��zN���zN��zN��0�/��*�)�zN�z����U��L�)�)����������������*�)��,����U��L�)�)�>6��>6��>6��>6��>6�n��>6��>6��*�)�>6�B����U��L�)�)�4��4��4��4��4�n��4��4��*�)�4�8����U��L�)�)�~ ��~ ��~ ��~ ��~ �.��~ ��~ ��*�)�~ �B����U��L�)�)�J��J��J��J��J�~��J��J��*�)�J�d����U��L�)�)����������������*�)����z���1�1�1�1�1�1��M�(��������rc���