
                         T    S r SSKr\R                  " S/ SQ5      rSr " S S\5      rg)ICommon code for 'gcloud firebase test * list-device-capacities' commands.    NCapacityEntrymodelnameversioncapacityz
        table[box](
          model:label=MODEL_ID,
          name:label=MODEL_NAME,
          version:label=OS_VERSION_ID,
          capacity.color(red=None,yellow=Low,green=High):label=DEVICE_CAPACITY
        )
    c                   2    \ rS rSrSrSr\S 5       rS rSr	g)DeviceCapacities"   r   Nc                    U R                   c  U R                  S   R                  R                  nU R                  S   R                  R                  nUR
                  SUR                  SUR                  SUR                  SUR                  SUR
                  SUR                  SUR                  SUR                  SUR                  S0
U l         U R                   $ )z'A map of enum to user-friendly message.testing_messagesNoneHighMediumLow)
_capacity_messages_cachecontextPerAndroidVersionInfoDeviceCapacityValueValuesEnumPerIosVersionInfoDEVICE_CAPACITY_UNSPECIFIEDDEVICE_CAPACITY_HIGHDEVICE_CAPACITY_MEDIUMDEVICE_CAPACITY_LOWDEVICE_CAPACITY_NONE)selfdevice_capacity_enum_androiddevice_capacity_enum_ioss      =lib/googlecloudsdk/api_lib/firebase/test/device_capacities.pycapacity_messages"DeviceCapacities.capacity_messages'   s     $$,%)\\
&334Q4Q # "&
"//0M0M  '
B
BF
&
;
;V
&
=
=x
&
:
:E
&
;
;V
"
>
>
"
7
7
"
9
98
"
6
6
"
7
7'd# (((    c                 L   / nUR                    H  nUR                   H~  nUR                  UR                  ;  a  M  UR                  c  M.  UR                  [        UR                  UR                  UR                  U R                  UR                     S95        M     M     U$ )a3  Generate a list of devices/OS versions & corresponding capacity info.

Args:
  catalog: Android or iOS catalog

Returns:
  The list of device models, versions, and capacity info we want to have
  printed later. Obsolete (unsupported) devices, versions, and entries
  missing capacity info are filtered out.
r   )
modelsperVersionInfo	versionIdsupportedVersionIdsdeviceCapacityappendr   idr   r!   )r   catalogcapacity_datar   version_infos        r    get_capacity_data"DeviceCapacities.get_capacity_dataA   s     M..,!!)B)BB
&&.
hhZZ$..//0K0KL	N	O /   r#   )r   )
__name__
__module____qualname____firstlineno____doc__r   propertyr!   r/   __static_attributes__ r#   r    r   r   "   s"    Q!) )2r#   r   )r5   collections
namedtupler   DEVICE_CAPACITY_TABLE_FORMATobjectr   r8   r#   r    <module>r=      s:     P &&'OQ  9v 9r#   