Cs[�% � @ s� d Z d d l Z d d l Z d d l Z d d l Z d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z d d l m Z e r� e j d � n d Z d d � Z d d � Z d d � Z e j e d � Gd d � d e j � � Z e j e d � Gd d � d e j � � Z e j e d � Gd d � d e j � � Z e d k r�e e � d S)zMACOS specific tests.� N)�MACOS)�create_zombie_proc)�get_test_subprocess)�HAS_BATTERY)�MEMORY_TOLERANCE)� reap_children)�retry_before_failing)�run_test_module_by_name)�sh)�unittest�SC_PAGE_SIZEc C sG t | � } | j � d } y t | � SWn t k rB | SYn Xd S)zmExpects a sysctl command with an argument and parse the result returning only the value of interest. � N)r �split�int� ValueError)�cmdline�out�result� r �/test_osx.py�sysctl s r c C sb t d � } x0 | j d � D] } | | k r Pq Wt d � � t t j d | � j d � � t S)z)Wrapper around 'vm_stat' cmdline utility.�vm_stat� zline not foundz\d+r )r r r r �re�search�group�PAGESIZE)Zfieldr �liner r r r ) s r c C sE d d i } | } d } xT | r7 | d d � j � sM | d d � d k rn | | d 7} | d d � } q Wt | � } | j � } x\ | j � D] \ } } | | k r� Pq� W| d k r� | d } | j � } n t d | � � | d d i } x: t | d d � � D]"