o
    b%                     @   s  d dl mZ d dlZd dlZd dlZd dlmZ dd Zdd Zdd	 Z	d
d Z
edkre Zejdg ddd ejdedd ejdg ddd e Ze	 Ze
 ZeD ],Zeeeejejree D ]Zeerejdu s{ed  ejv reed  qgqXdS dS )    )print_functionN)StrictVersionc                 C   s   d| v r| d S d| d vS )NZisAvailableZunavailableZavailability )objectr   r   !mkspecs/features/uikit/devices.pyis_available1   s   r   c                 C   sX   | D ]'}|d }|d |ks||kr)t |r)|d|r)t|d |kr) dS qdS )N
identifiernamez%com.apple.CoreSimulator.SimRuntime.{}versionTF)r   
startswithformatr   )runtimesruntime_nameplatformZmin_versionZruntimer   r   r   r   is_suitable_runtime7   s   r   c                   C      t tg dd S )N)/usr/bin/xcrunsimctllistr   --jsonr   jsonloads
subprocessZcheck_outputr   r   r   r   simctl_runtimesA   
   r   c                   C   r   )N)r   r   r   devicesr   r   r   r   r   r   r   simctl_devicesE   r   r   __main__z
--platform)ZiOSZtvOSZwatchOST)choicesrequiredz--minimum-deployment-targetz0.0)typedefaultz--state)ZbootedZshutdownZcreatingZbootingzshutting-downappend)r   actionstateZudid)Z
__future__r   argparser   r   Zdistutils.versionr   r   r   r   r   __name__ArgumentParserparseradd_argument
parse_argsargsr   Zdevice_dictr   r   Zminimum_deployment_targetZdevicer%   lowerprintr   r   r   r   <module>   s>   )

