§
    nÈjô  ã                   óÎ   — d dl Zd dlmc mZ d dlZd dlZd dlZd dl	m
Z
 d dlZd dlmZ d dlmZ d„ Zd„ Zej                             dg d¢¦  «        d	„ ¦   «         Zd
„ Zd„ Zd„ ZdS )é    N)ÚSimpleNamespace)ÚSpeechDiagnostics)Úmanagerc                 ó$   — d„ | j         D ¦   «         S )Nc                 óº   — g | ]X}d |                      ¦   «         v ¯t          j        |                      ¦   «                              d d¦  «        d         ¦  «        ‘ŒYS )z[SPEECH_DIAG] é   )Ú
getMessageÚjsonÚloadsÚsplit)Ú.0Úrs     úf/home/lighthouse/esp32-dev/.cache/main-promotion-test-20261009/server/tests/test_speech_diagnostics.pyú
<listcomp>zrecords.<locals>.<listcomp>   s`   € ð Kð Kð KØÐ'7¸1¿<º<¹>¼>Ð'IÐ'Iõ ŒJ�q—|’|‘~”~×+Ò+Ð,<¸aÑ@Ô@ÀÔCÑDÔDØ'IÐ'IÐ'Ió    )Úrecords)Úcaplogs    r   r   r      s+   € ðKð KØ”^ðKñ Kô Kð Kr   c                 ó–  ‡ ‡‡— ‰                      t          j        d¬¦  «         ˆˆ fd„}t          j         |¦   «         ¦  «         ‰j        Šˆfd„dD ¦   «         }t          |¦  «        }|s•ddt          j        ¦   «         v st          j
        t          ¦  «        rt          j        t          ¦  «        ndt          j        |¦  «        t          j        |¦  «        dœz  }t          t          j        |¦  «        ¦  «        ‚d x}}d	„ t          ‰¦  «        D ¦   «         }t          |¦  «        }|s•ddt          j        ¦   «         v st          j
        t          ¦  «        rt          j        t          ¦  «        ndt          j        |¦  «        t          j        |¦  «        dœz  }t          t          j        |¦  «        ¦  «        ‚d x}}d S )
Nú#uvicorn.error.device_gateway.speech©Úloggerc               “   ó˜  •K  — t          ‰'d¦  «        \  } }}}}|j                             d¦  «         | j        }d}d} ||||¦  «        }|sïddt	          j        ¦   «         v st          j        | ¦  «        rt          j        | ¦  «        ndt          j        |¦  «        dt	          j        ¦   «         v st          j        |¦  «        rt          j        |¦  «        ndt          j        |¦  «        t          j        |¦  «        t          j        |¦  «        dœz  }t          t          j
        |¦  «        ¦  «        ‚d x}x}x}}| j        d	         }	|	j        ƒ d {V —† | j        }| }
|
sxd
dt	          j        ¦   «         v st          j        | ¦  «        rt          j        | ¦  «        ndt          j        |¦  «        dœz  }t          t          j
        |¦  «        ¦  «        ‚d x}}
t          ‰&¦  «        d         }g }|d         }d}||k    }|}|r|d         }d}||k    }|}|�st          j        d|fd||f¦  «        t          j        |¦  «        t          j        |¦  «        dœz  }dd|iz  }|                     |¦  «         |r`t          j        d|fd||f¦  «        t          j        |¦  «        t          j        |¦  «        dœz  }dd|iz  }|                     |¦  «         t          j        |d¦  «        i z  }dd|iz  }t          t          j
        |¦  «        ¦  «        ‚d x}x}x}x}x}x}x}}g }|d         }d}||k    }|}|r|d         }d}||k    }|}|�st          j        d|fd||f¦  «        t          j        |¦  «        t          j        |¦  «        dœz  }dd|iz  }|                     |¦  «         |r`t          j        d|fd||f¦  «        t          j        |¦  «        t          j        |¦  «        dœz  }dd|iz  }|                     |¦  «         t          j        |d¦  «        i z  }dd|iz  }t          t          j
        |¦  «        ¦  «        ‚d x}x}x}x}x}x}x}}t#          |¦  «        }|                      |t'          d|	j        d ¬!¦  «        ¦  «        ƒ d {V —† t          ‰&¦  «        d         d"         }d#}
||
k    }|slt          j        d|fd$||
f¦  «        t          j        |¦  «        t          j        |
¦  «        d%œz  }d&d'|iz  }t          t          j
        |¦  «        ¦  «        ‚d x}x}}
t          ‰&¦  «        d         d         }d }
||
k    }|slt          j        d|fd$||
f¦  «        t          j        |¦  «        t          j        |
¦  «        d%œz  }d&d'|iz  }t          t          j
        |¦  «        ¦  «        ‚d x}x}}
i d(fg d(fd)|	j        d*f|	j        d+f|	j        d ffD ]1\  }}|                      |t'          d||¬!¦  «        ¦  «        ƒ d {V —† Œ2| j        }|j        }
|	j        } |
||¦  «        }|j        }d } || k    }|�srt          j        d|fd,|| f¦  «        dt	          j        ¦   «         v st          j        | ¦  «        rt          j        | ¦  «        ndt          j        |¦  «        t          j        |
¦  «        dt	          j        ¦   «         v st          j        |¦  «        rt          j        |¦  «        ndd-t	          j        ¦   «         v st          j        |	¦  «        rt          j        |	¦  «        nd-t          j        |¦  «        t          j        |¦  «        t          j        |¦  «        t          j        | ¦  «        d.œ	z  }!d/d0|!iz  }t          t          j
        |¦  «        ¦  «        ‚d x}x}
x}x}x}x}} |                      |t'          d1|	j        ¬2¦  «        ¦  «        ƒ d {V —† t          ‰&¦  «        d         d"         }d3}
||
k    }|slt          j        d|fd$||
f¦  «        t          j        |¦  «        t          j        |
¦  «        d%œz  }d&d'|iz  }t          t          j
        |¦  «        ¦  «        ‚d x}x}}
g }| j        }
|
 }|}|rt#          |¦  «        }||k    }|}|�sÀd4dt	          j        ¦   «         v st          j        | ¦  «        rt          j        | ¦  «        ndt          j        |
¦  «        d5œz  }"|                     |"¦  «         |�rt          j        d|fd6||f¦  «        d7t	          j        ¦   «         v st          j        t"          ¦  «        rt          j        t"          ¦  «        nd7d8t	          j        ¦   «         v st          j        |¦  «        rt          j        |¦  «        nd8t          j        |¦  «        d9t	          j        ¦   «         v st          j        |¦  «        rt          j        |¦  «        nd9d:œz  }#d;d<|#iz  }|                     |¦  «         t          j        |d¦  «        i z  }!d/d0|!iz  }t          t          j
        |¦  «        ¦  «        ‚d x}x}x}
x}x}}|                      |d=d*d>¬?¦  «         g }t          ‰&¦  «        d         d"         }d>}||k    }|}|r| j        }|j        }| }$|$}|�s!t          j        d|fd||f¦  «        t          j        |¦  «        t          j        |¦  «        dœz  }dd|iz  }|                     |¦  «         |rd@dt	          j        ¦   «         v st          j        | ¦  «        rt          j        | ¦  «        ndt          j        |¦  «        t          j        |¦  «        dAœz  }!|                     |!¦  «         t          j        |d¦  «        i z  }dBdC|iz  }%t          t          j
        |%¦  «        ¦  «        ‚d x}x}x}x}x}x}x}}$|                      ¦   «         ƒ d {V —† d S )DNé   úspeech-buffer-v1Úreplyz&speech_body_marker api_key=private-keyúYassert %(py9)s
{%(py9)s = %(py2)s
{%(py2)s = %(py0)s.start
}(%(py3)s, %(py5)s, %(py7)s)
}ÚmÚd©Úpy0Úpy2Úpy3Úpy5Úpy7Úpy9Úcz.assert not %(py2)s
{%(py2)s = %(py0)s.active
}©r    r!   éÿÿÿÿÚstatusÚsentÚsent_frames©ú==©z%(py3)s == %(py6)s©r"   Úpy6ú%(py8)sÚpy8©z%(py11)s == %(py14)s©Úpy11Úpy14ú%(py16)sÚpy16r   zassert %(py19)sÚpy19Úplayed_framesÚaudio_msiÐ  Úspeech_progressé   )ÚtypeÚ	speech_idÚplayed_chunksÚeventÚcodec_progress©z%(py1)s == %(py4)s©Úpy1Úpy4úassert %(py6)sr0   é   )ÚstalerH   Té   )zº%(py12)s
{%(py12)s = %(py10)s
{%(py10)s = %(py4)s
{%(py4)s = %(py2)s
{%(py2)s = %(py0)s.diagnostics
}.get
}(%(py5)s, %(py8)s
{%(py8)s = %(py6)s.speech_id
})
}.played_frames
} == %(py15)sÚreq)	r    r!   rF   r#   r0   r2   Úpy10Úpy12Úpy15zassert %(py17)sÚpy17Úspeech_stop)r>   r?   Údevice_stopz'not %(py4)s
{%(py4)s = %(py2)s.active
})r!   rF   )z3%(py10)s
{%(py10)s = %(py7)s(%(py8)s)
} == %(py12)sÚlenÚoutÚbefore)r$   r2   rL   rM   z%(py14)sr6   FÚ
disconnect)ÚnotifyÚforgetÚreasonzMnot %(py14)s
{%(py14)s = %(py12)s
{%(py12)s = %(py10)s.diagnostics
}.traces
})rL   rM   r6   zassert %(py18)sÚpy18)r   ÚcapabilitiesÚaddÚstartÚ@py_builtinsÚlocalsÚ
@pytest_arÚ_should_repr_global_nameÚ	_safereprÚAssertionErrorÚ_format_explanationÚactiveÚtaskr   Ú_call_reprcompareÚappendÚ_format_booloprR   ÚhandleÚdictr?   ÚdiagnosticsÚgetr:   ÚcancelÚtracesÚclose)(r   r   rS   Ú_Ú@py_assert1Ú@py_assert4Ú@py_assert6Ú@py_assert8Ú@py_format10rK   Ú@py_assert3Ú@py_format4ÚendÚ@py_assert2Ú@py_assert5Ú@py_assert0Ú@py_assert10Ú@py_assert13Ú@py_assert12Ú@py_format7Ú@py_format9Ú@py_format15Ú@py_format17Ú@py_format18Ú@py_format20rT   Ú@py_format5ÚsidÚcountÚ@py_assert7Ú@py_assert9Ú@py_assert11Ú@py_assert14Ú@py_format16Ú@py_format6Ú@py_format13Ú@py_assert15Ú@py_format19r   Útmp_paths(                                         €€r   ÚcheckzDtest_transmitted_is_not_played_and_late_ack_is_traced.<locals>.check   sz  øè è € Ý! (¨BÑ/Ô/‰ˆˆ1ˆc�1�aØ	Œ×ÒÐ-Ñ.Ô.Ð.ØŒwÐL˜'ÐLÐ#KÐLˆwˆw�q˜'Ð#KÑLÔLÐLÐLÐLÐLÐLÕLÔLÑLÔLÐLÐLÕLÔLˆqÑLÔLÐLÕLÔLˆqÑLÔLÐLÐLÕLÔLˆwÑLÔLÐLÕLÔLÑLÔLÐLÐLÕLÔL�qÑLÔLÐLÕLÔL�qÑLÔLÐLÐLÕLÔL˜'ÑLÔLÕLÔLÐ#KÑLÔLÕLÔLÐLÑLÔLÐLÐLÑLÐLÕLÕLÔLÐLÑLÔLÑLÔLÐLÐLÐLÐLÐLÐLÐLÐLÐLØŒh�sŒmˆØŒhˆˆˆˆˆˆˆØ”8Ð�8ˆ|Ðˆ|ÐÐÐÕÔÑÔÐÐÕÔ�1ÑÔÐÕÔ�1ÑÔÐÐÕÔ�8ÑÔÐÐÑÐÕÕÔÐÑÔÑÔÐÐÐÐÐÝ�f‰oŒo˜bÔ!ˆØCÐCˆs�8Œ}ÐC ÐCˆ} Ò&ÐCÐCÐCÐCÐC¨3¨}Ô+=ÐCÀÐCÐ+=ÀÒ+CÐCÐCÐCÐCÑCÕCÔCÐCÐCÐCÐCˆ} ÐCÑCÔCÕCÔCˆ}ÑCÔCÕCÔC ÑCÔCÐCÐCÑCÐCÐCÐCÐCÐCÑCÐCÐC×CÒCÐCÑCÔCÐCÐCÐCÕCÔCÐCÐCÐCÐCÐ+=ÀÐCÑCÔCÕCÔCÐ+=ÑCÔCÕCÔCÀÑCÔCÐCÐCÑCÐCÐCÐCÐCÐCÑCÐCÐC×CÒCÐCÑCÔCÐCÕCÔCÐCÐCÑCÔCÐCÑCÐCÐCÐCÐCÐCÑCÐCÕCÕCÔCÐCÑCÔCÑCÔCÐCÐCÐCÐCÐCÐCÐCÐCÐCÐCÐCÐCÐCÐCÐCÐCÐCØDÐDˆs�?Ô#ÐD qÐDÐ# qÒ(ÐDÐDÐDÐDÐD¨S°¬_ÐDÀÐD¨_ÀÒ-DÐDÐDÐDÐDÑDÕDÔDÐDÐDÐDÐDÐ# qÐDÑDÔDÕDÔDÐ#ÑDÔDÕDÔD qÑ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Ò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Ý�S‘”ˆð �hŠh�q�$Ð$5ÀÄÐ^_Ð`Ñ`Ô`ÑaÔaÐaÐaÐaÐaÐaÐaÐaÝ�v‰Œ˜rÔ" 7Ô+Ð?Ð/?Ð?Ð+Ð/?Ò?Ð?Ð?Ð?Õ?Ô?Ð?Ð?Ð?Ð?Ð+Ð/?Ð?Ñ?Ô?Õ?Ô?Ð+Ñ?Ô?Õ?Ô?Ð/?Ñ?Ô?Ð?Ð?Ñ?Ð?Ð?Ð?Ð?Ð?Ñ?Ð?Õ?Õ?Ô?Ð?Ñ?Ô?Ñ?Ô?Ð?Ð?Ð?Ð?Ð?Ð?Ð?Ý�v‰Œ˜rÔ" ?Ô3Ð8°qÐ8Ð3°qÒ8Ð8Ð8Ð8Õ8Ô8Ð8Ð8Ð8Ð8Ð3°qÐ8Ñ8Ô8Õ8Ô8Ð3Ñ8Ô8Õ8Ô8°qÑ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 b¨" X¨}¸s¼}ÈdÐ>SØœM¨2Ð.°´ÀÐ0BðDð 	`ð 	`‰JˆC�à—(’(˜1�dÐ(9ÀSÐX]Ð^Ñ^Ô^Ñ_Ô_Ð_Ð_Ð_Ð_Ð_Ð_Ð_Ð_ØŒ}ÐEˆ}Ô ÐE C¤MÐEÐ Ð   MÑ2Ô2ÐEÐ2Ô@ÐEÀAÐEÐ@ÀAÒEÐEÐEÑEÕEÔEÐEÐEÐEÐEÐ@ÀAÐEÑEÔEÐEÕEÔEÑEÔEÐEÐEÕEÔEˆqÑEÔEÐEÕEÔEˆqÑ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ÐEÕEÔEÑEÔEÐEÐEÕEÔE CÑEÔEÐEÕEÔE CÑEÔEÐEÐEÕEÔE MÑEÔEÕEÔEÐ2ÑEÔEÕEÔEÐ@ÑEÔEÕEÔEÀAÑ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ÐEÐEÐEÐEÐEØ�hŠh�q�$ M¸S¼]ÐKÑKÔKÑLÔLÐLÐLÐLÐLÐLÐLÐLÝ�v‰Œ˜rÔ" 7Ô+Ð<¨}Ð<Ð+¨}Ò<Ð<Ð<Ð<Õ<Ô<Ð<Ð<Ð<Ð<Ð+¨}Ð<Ñ<Ô<Õ<Ô<Ð+Ñ<Ô<Õ<Ô<¨}Ñ<Ô<Ð<Ð<Ñ<Ð<Ð<Ð<Ð<Ð<Ñ<Ð<Õ<Õ<Ô<Ð<Ñ<Ô<Ñ<Ô<Ð<Ð<Ð<Ð<Ð<Ð<Ð<Ø2Ð2�1”8Ð2�8ˆ|Ð2ˆ|Ð2ˆ|Ð2¥ C¡¤Ð2 ¨FÒ 2Ð2Ð2Ð2Ð2Ñ2Ð2Ð2Õ2Ô2Ñ2Ô2Ð2Ð2Õ2Ô2�1Ñ2Ô2Ð2Õ2Ô2�1Ñ2Ô2Ð2Ð2Õ2Ô2�8Ñ2Ô2Ð2Ð2Ñ2Ð2Ð2×2Ò2Ð2Ñ2Ô2Ð2ˆ|Ñ2Õ2Ô2Ð2Ð2Ð2Ð2 ¨FÐ2Ñ2Ô2Ð2Õ2Ô2Ñ2Ô2Ð2Ð2Õ2Ô2¥Ñ2Ô2Ð2Õ2Ô2¥Ñ2Ô2Ð2Ð2Ð2Õ2Ô2Ñ2Ô2Ð2Ð2Õ2Ô2 CÑ2Ô2Ð2Õ2Ô2 CÑ2Ô2Ð2Ð2Õ2Ô2 Ñ2Ô2Ð2Õ2Ô2Ñ2Ô2Ð2Ð2Õ2Ô2¨FÑ2Ô2Ð2Õ2Ô2¨FÑ2Ô2Ð2Ð2Ð2Ð2Ñ2Ð2Ð2Ð2Ð2Ð2Ñ2Ð2Ð2×2Ò2Ð2Ñ2Ô2Ð2Õ2Ô2Ð2Ð2Ñ2Ô2Ð2Ñ2Ð2Ð2Ð2Ð2Ð2Ñ2Ð2Õ2Õ2Ô2Ð2Ñ2Ô2Ñ2Ô2Ð2Ð2Ð2Ð2Ð2Ð2Ð2Ð2Ð2Ð2Ð2Ð2Ð2Ø	�Š�˜5¨°lˆÑCÔCÐCØXÐX�w�v‰Œ˜rÔ" 7Ô+ÐX¨|ÐXÐ+¨|Ò;ÐXÐXÐXÐXÐXÀAÄMÐXÀMÔDXÐXÐDXÐ@XÐXÐ@XÐXÐXÑXÕXÔXÐXÐXÐXÐXÐ+¨|ÐXÑXÔXÕXÔXÐ+ÑXÔXÕXÔX¨|ÑXÔXÐXÐXÑXÐXÐXÐXÐXÐXÑXÐXÐX×XÒXÐXÑXÔXÐXÐXÐXÐXÐXÕXÔXÑXÔXÐXÐXÕXÔXÀAÑXÔXÐXÕXÔXÀAÑXÔXÐXÐXÕXÔXÀMÑXÔXÕXÔXÐDXÑXÔXÐXÐXÑXÐXÐX×XÒXÐXÑXÔXÐXÕXÔXÐXÐXÑXÔXÐXÑXÐXÐXÐXÐXÐXÑXÐXÕXÕXÔXÐXÑXÔXÑXÔXÐXÐXÐXÐXÐXÐXÐXÐXÐXÐXÐXÐXÐXÐXÐXÐXÐXØ�gŠg‰iŒiˆˆˆˆˆˆˆˆˆr   c              3   ó    •K  — | ]}|‰vV — Œ	d S ©N© )r   ÚsecretÚwires     €r   ú	<genexpr>zHtest_transmitted_is_not_played_and_late_ack_is_traced.<locals>.<genexpr>/   s(   øè è € ÐdÐd fˆv˜TÐ!ÐdÐdÐdÐdÐdÐdr   )Úspeech_body_markerzprivate-keyz
agent:pi:sú,assert %(py4)s
{%(py4)s = %(py0)s(%(py2)s)
}Úall©r    r!   rF   c              3   ó.   K  — | ]}d |vod|vod|vV — ŒdS )ÚaudioÚtextÚtargetNr•   ©r   Úrows     r   r˜   zHtest_transmitted_is_not_played_and_late_ack_is_traced.<locals>.<genexpr>0   s<   è è € ÐkÐkÐTWˆw˜cÐ!ÐO f°CÐ&7ÐO¸HÈCÐ<OÐkÐkÐkÐkÐkÐkr   )Ú	set_levelÚloggingÚINFOÚasyncioÚrunrŸ   r›   r]   r^   r_   r`   ra   rb   rc   r   )r‘   r   r’   rq   rv   r…   r—   s   ``    @r   Ú5test_transmitted_is_not_played_and_late_ack_is_tracedr¨      sá  øøø€ Ø
×Ò•W”\Ð*OÐÑPÔPÐPðð ð ð ð ð õ4 „K��‘”ÑÔÐØŒ;€DØdÐdÐdÐdÐ0cÐdÑdÔdÐd�3ÐdÑdÔdÐdÐdÐdÐdÐdÕdÔdÑdÔdÐdÐdÕdÔd�3ÑdÔdÐdÕdÔd�3Ñ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ØkÐkÕ[bÐciÑ[jÔ[jÐkÑkÔkÐk�3ÐkÑkÔkÐkÐkÐkÐkÐkÕkÔkÑkÔkÐkÐkÕkÔk�3ÑkÔkÐkÕkÔk�3Ñ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Ðkr   Ústage)Ú	synthesisÚ
send_chunkÚcredit_waitc                 óþ  ‡ ‡‡‡— ‰                      t          j        d¬¦  «         ˆˆˆˆ fd„}t          j         |¦   «         ¦  «         g }d}‰j        }||v}|}	|rd}
‰j        }|
|v}|}	|	�s~t          j        d|fd||f¦  «        t          j        |¦  «        dt          j
        ¦   «         v st          j        ‰¦  «        rt          j        ‰¦  «        ndt          j        |¦  «        d	œz  }d
d|iz  }|                     |¦  «         |ržt          j        d|fd|
|f¦  «        t          j        |
¦  «        dt          j
        ¦   «         v st          j        ‰¦  «        rt          j        ‰¦  «        ndt          j        |¦  «        dœz  }dd|iz  }|                     |¦  «         t          j        |d¦  «        i z  }dd|iz  }t          t          j        |¦  «        ¦  «        ‚d x}	x}x}x}x}x}
x}}d S )Nr   r   c            	   “   ó  •‡K  — t          ‰#d¦  «        \  } }}}}|j                             d¦  «         ‰"dk    rd„ }|| j        _        nG‰"dk    r| j        Šˆfd„}|| _        n-t          j        Šˆfd„}‰!                     t          d|¦  «         | j	        }d	}d
}	 ||||	¦  «        }
|
sïddt          j        ¦   «         v st          j        | ¦  «        rt          j        | ¦  «        ndt          j        |¦  «        dt          j        ¦   «         v st          j        |¦  «        rt          j        |¦  «        ndt          j        |¦  «        t          j        |	¦  «        t          j        |
¦  «        dœz  }t          t          j        |¦  «        ¦  «        ‚d x}x}x}	}
| j        d         j        ƒ d {V —† t'          ‰ ¦  «        d         }g }|d         }d}||k    }|}|r$|d         }d}||k    }|}|r|d         }|‰"k    }|}|�s�t          j        d|fd||f¦  «        t          j        |¦  «        t          j        |¦  «        dœz  }dd|iz  }|                     |¦  «         |rít          j        d|fd||f¦  «        t          j        |¦  «        t          j        |¦  «        dœz  }dd|iz  }|                     |¦  «         |r‹t          j        d|fd|‰"f¦  «        t          j        |¦  «        dt          j        ¦   «         v st          j        ‰"¦  «        rt          j        ‰"¦  «        ndd œz  }d!d"|iz  }|                     |¦  «         t          j        |d#¦  «        i z  }d$d%|iz  }t          t          j        |¦  «        ¦  «        ‚d x}x}x}x}x}x}x}x}x}}|d&         }‰"d'k    rd(nd)}||k    }|slt          j        d|fd*||f¦  «        t          j        |¦  «        t          j        |¦  «        d+œz  }d,d-|iz  }t          t          j        |¦  «        ¦  «        ‚d x}x}}|d.         }‰"d'k    rd/nd#}||k    }|slt          j        d|fd*||f¦  «        t          j        |¦  «        t          j        |¦  «        d+œz  }d,d-|iz  }t          t          j        |¦  «        ¦  «        ‚d x}x}}|d0         }‰"d'k    rd1nd#}||k    }|slt          j        d|fd*||f¦  «        t          j        |¦  «        t          j        |¦  «        d+œz  }d,d-|iz  }t          t          j        |¦  «        ¦  «        ‚d x}x}}d2„ |D ¦   «         d3d …         }d4d5g}||k    }|slt          j        d|fd*||f¦  «        t          j        |¦  «        t          j        |¦  «        d+œz  }d,d-|iz  }t          t          j        |¦  «        ¦  «        ‚d x}x}}|                      ¦   «         ƒ d {V —† d S )6NéA   r   rª   c               —   ó$   K  — t          d¦  «        ‚)Núraw-provider-secret©ÚRuntimeError)Úargss    r   ÚsynthzPtest_failure_stage_is_logged_without_provider_body.<locals>.check.<locals>.synth:   s   è è € ­,Ð7LÑ*MÔ*MÐ$Mr   r«   c              “   ób   •K  — |d         dk    rt          d¦  «        ‚ ‰| |¦  «        ƒ d {V —†S )Nr>   Úspeech_chunkr±   r²   )ÚdeviceÚpayloadÚoriginals     €r   ÚsendzOtest_failure_stage_is_logged_without_provider_body.<locals>.check.<locals>.send>   sI   øè è € Ø˜6”? nÒ4Ð4Ý&Ð'<Ñ=Ô=Ð=Ø%˜X f¨gÑ6Ô6Ð6Ð6Ð6Ð6Ð6Ð6Ð6r   c              “   ó~   •K  — |dk    r#|                       ¦   «          t          d¦  «        ‚ ‰| |¦  «        ƒ d {V —†S )Né   r±   )ro   ÚTimeoutError)Ú	awaitableÚtimeoutrº   s     €r   ÚwaitzOtest_failure_stage_is_logged_without_provider_body.<locals>.check.<locals>.waitE   sS   øè è € Ø˜b’=�=Ø—O’OÑ%Ô%Ð%Ý&Ð'<Ñ=Ô=Ð=Ø%˜X i°Ñ9Ô9Ð9Ð9Ð9Ð9Ð9Ð9Ð9r   Úwait_forr   zPrivate body marker.r   r   r   r   r&   r(   rA   Útx_endr)   Úfailedr©   r,   r.   r/   r1   r2   r3   r4   r7   r8   )z%(py19)s == %(py21)s)r9   Úpy21z%(py23)sÚpy23r   zassert %(py26)sÚpy26Úerrorr¬   rÀ   ÚunavailablerC   rD   rG   r0   r+   é@   Úcredit_waitsr   c                 ó$   — g | ]\  }}|d          ‘ŒS )r>   r•   ©r   rp   Úps      r   r   zUtest_failure_stage_is_logged_without_provider_body.<locals>.check.<locals>.<listcomp>R   s    € Ð*Ð*Ð*™d˜a ��&”	Ð*Ð*Ð*r   éþÿÿÿÚspeech_cancelÚspeech_error)r   rZ   r[   ÚproviderÚ
synthesizer»   r¦   rÂ   Úsetattrr\   r]   r^   r_   r`   ra   rb   rc   rd   re   r   rf   rg   rh   ro   )$r   r   rS   rp   rµ   r»   rÁ   rq   rr   rs   rt   ru   rx   ry   rz   r{   r|   r}   r~   Ú@py_assert18Ú@py_assert20r   r€   r�   r‚   Ú@py_format22Ú@py_format24Ú@py_format25Ú@py_format27rv   r…   rº   r   Úmonkeypatchr©   r‘   s$                                  @€€€€r   r’   zAtest_failure_stage_is_logged_without_provider_body.<locals>.check6   s™  øøè è € Ý! (¨BÑ/Ô/‰ˆˆ1ˆc�1�aØ	Œ×ÒÐ-Ñ.Ô.Ð.Ø�KÒÐØMÐMÐMØ$)ˆAŒJÔ!Ð!Ø�lÒ"Ð"Ø”vˆHð7ð 7ð 7ð 7ð 7ð ˆAŒFˆFåÔ'ˆHð:ð :ð :ð :ð :ð
 ×Ò¥¨°TÑ:Ô:Ð:ØŒwÐ:˜'Ð:Ð#9Ð:ˆwˆw�q˜'Ð#9Ñ:Ô:Ð:Ð:Ð:Ð:Ð:Õ:Ô:Ñ:Ô:Ð:Ð:Õ:Ô:ˆqÑ:Ô:Ð:Õ:Ô:ˆqÑ:Ô:Ð:Ð:Õ:Ô:ˆwÑ:Ô:Ð:Õ:Ô:Ñ:Ô:Ð:Ð:Õ:Ô:�qÑ:Ô:Ð:Õ:Ô:�qÑ:Ô:Ð:Ð:Õ:Ô:˜'Ñ:Ô:Õ:Ô:Ð#9Ñ:Ô:Õ:Ô:Ð:Ñ:Ô:Ð:Ð:Ñ:Ð:Õ:Õ:Ô:Ð:Ñ:Ô:Ñ:Ô:Ð:Ð:Ð:Ð:Ð:Ð:Ð:Ð:Ð:ØŒh�sŒmÔ Ð Ð Ð Ð Ð Ð Ð Ý�f‰oŒo˜bÔ!ˆØ_Ð_ˆs�7Œ|Ð_˜xÐ_ˆ|˜xÒ'Ð_Ð_Ð_Ð_Ð_¨C°¬MÐ_¸XÐ_¨M¸XÒ,EÐ_Ð_Ð_Ð_Ð_È#ÈgÌ,Ð_È,ÐZ_ÒJ_Ð_Ð_Ð_Ð_Ñ_Õ_Ô_Ð_Ð_Ð_Ð_ˆ|˜xÐ_Ñ_Ô_Õ_Ô_ˆ|Ñ_Ô_Õ_Ô_˜xÑ_Ô_Ð_Ð_Ñ_Ð_Ð_Ð_Ð_Ð_Ñ_Ð_Ð_×_Ò_Ð_Ñ_Ô_Ð_Ð_Ð_Õ_Ô_Ð_Ð_Ð_Ð_¨M¸XÐ_Ñ_Ô_Õ_Ô_¨MÑ_Ô_Õ_Ô_¸XÑ_Ô_Ð_Ð_Ñ_Ð_Ð_Ð_Ð_Ð_Ñ_Ð_Ð_×_Ò_Ð_Ñ_Ô_Ð_Ð_Ð_Õ_Ô_Ð_Ð_Ð_Ð_È,ÐZ_Ð_Ñ_Ô_Õ_Ô_È,Ñ_Ô_Ð_Õ_Ô_Ñ_Ô_Ð_Ð_Õ_Ô_ÐZ_Ñ_Ô_Ð_Õ_Ô_ÐZ_Ñ_Ô_Ð_Ð_Ð_Ð_Ñ_Ð_Ð_Ð_Ð_Ð_Ñ_Ð_Ð_×_Ò_Ð_Ñ_Ô_Ð_Õ_Ô_Ð_Ð_Ñ_Ô_Ð_Ñ_Ð_Ð_Ð_Ð_Ð_Ñ_Ð_Õ_Õ_Ô_Ð_Ñ_Ô_Ñ_Ô_Ð_Ð_Ð_Ð_Ð_Ð_Ð_Ð_Ð_Ð_Ð_Ð_Ð_Ð_Ð_Ð_Ð_Ð_Ð_Ð_Ð_Ø�7Œ|ÐW¨U°mÒ-CÐ-C 	 	ÈÐWˆ|Ð VÒWÐWÐWÐWÕWÔWÐWÐWÐWÐWˆ|Ð VÐWÑWÔWÕWÔWˆ|ÑWÔWÕWÔWÐ VÑWÔWÐWÐWÑWÐWÐWÐWÐWÐWÑWÐWÕWÕWÔWÐWÑWÔWÑWÔWÐWÐWÐWÐWÐWÐWÐWØ�=Ô!ÐJ¨E°]Ò,BÐ,B b bÈÐJÐ!Ð&IÒJÐJÐJÐJÕJÔJÐJÐJÐJÐJÐ!Ð&IÐJÑJÔJÕJÔJÐ!ÑJÔJÕJÔJÐ&IÑJÔJÐJÐJÑJÐJÐJÐJÐJÐJÑJÐJÕJÕJÔJÐJÑJÔJÑJÔJÐJÐJÐJÐJÐJÐJÐJØ�>Ô"ÐJ¨E°]Ò,BÐ,B q qÈÐJÐ"Ð'IÒJÐJÐJÐJÕJÔJÐJÐJÐJÐJÐ"Ð'IÐJÑJÔJÕJÔJÐ"ÑJÔJÕJÔJÐ'IÑJÔJÐJÐJÑJÐJÐJÐJÐJÐJÑJÐJÕJÕJÔJÐJÑJÔJÑJÔJÐJÐJÐJÐJÐJÐJÐJØ*Ð* cÐ*Ñ*Ô*¨2¨3¨3Ô/ÐT°OÀ^Ð3TÐTÐ/Ð3TÒTÐTÐTÐTÕTÔTÐTÐTÐTÐTÐ/Ð3TÐTÑTÔTÕTÔTÐ/ÑTÔTÕTÔTÐ3TÑTÔTÐTÐTÑTÐTÐTÐTÐTÐTÑTÐTÕTÕTÔTÐTÑTÔTÑTÔTÐTÐTÐTÐTÐTÐTÐTØ�gŠg‰iŒiˆˆˆˆˆˆˆˆˆr   r±   zPrivate body©únot in©z0%(py3)s not in %(py7)s
{%(py7)s = %(py5)s.text
}r   ©r"   r#   r$   ú%(py9)sr%   ©z4%(py12)s not in %(py16)s
{%(py16)s = %(py14)s.text
}©rM   r6   r8   ú%(py18)srY   r   úassert %(py21)srÅ   )r£   r¤   r¥   r¦   r§   rŸ   r_   rf   ra   r]   r^   r`   rg   rh   rb   rc   )r‘   r   rÛ   r©   r’   rq   ry   rs   rr   r{   rŠ   r�   r}   Ú@py_format8ru   r‚   r�   r„   r×   s   ````               r   Ú2test_failure_stage_is_logged_without_provider_bodyræ   3   s„  øøøø€ à
×Ò•W”\Ð*OÐÑPÔPÐPðð ð ð ð ð ð ð õ< „K��‘”ÑÔÐØYÐYÐ ÐY¨¬ÐYÐ ¨Ð3ÐYÐYÐYÐYÐY¸ÐYÈfÌkÐY¸ÈkÐ8YÐYÐYÐYÐYÑYÕYÔYÐYÐYÐYÐYÐ ¨ÐYÑYÔYÕYÔYÐ ÑYÔYÐYÕYÔYÑYÔYÐYÐYÕYÔY¨ÑYÔYÐYÕYÔY¨ÑYÔYÐYÐYÕYÔY¨ÑYÔYÐYÐYÑYÐYÐYÐYÐYÐYÑYÐYÐY×YÒYÐYÑYÔYÐYÐYÐYÕYÔYÐYÐYÐYÐY¸ÈkÐYÑYÔYÕYÔY¸ÑYÔYÐYÕYÔYÑYÔYÐYÐYÕYÔYÈfÑYÔYÐYÕYÔYÈfÑYÔYÐYÐYÕYÔYÈkÑYÔYÐYÐYÑYÐYÐYÐYÐYÐYÑYÐYÐY×YÒYÐYÑYÔYÐYÕYÔYÐYÐYÑYÔYÐYÑYÐYÐYÐYÐYÐYÑYÐYÕYÕYÔYÐYÑYÔYÑYÔYÐYÐYÐYÐYÐYÐYÐYÐYÐYÐYÐYÐYÐYÐYÐYÐYÐYÐYÐYr   c                 ó�   ‡ ‡— ‰                      t          j        d¬¦  «         ˆˆ fd„}t          j         |¦   «         ¦  «         d S )Nr   r   c            	   “   ó¾  •‡K  — t          ‰¦  «        \  } }}}}t          j        ¦   «         Šˆfd„}|| j        _        | j        }d}d} ||||¦  «        }|sïddt          j        ¦   «         v st          j	        | ¦  «        rt          j
        | ¦  «        ndt          j
        |¦  «        dt          j        ¦   «         v st          j	        |¦  «        rt          j
        |¦  «        ndt          j
        |¦  «        t          j
        |¦  «        t          j
        |¦  «        dœz  }	t          t          j        |	¦  «        ¦  «        ‚d x}x}x}}| j        d         }
‰                     ¦   «         ƒ d {V —† |                      |d	¬
¦  «         t          j        |
j        d¬¦  «        ƒ d {V —† d„ t%          ‰¦  «        D ¦   «         }t'          |¦  «        }|s•ddt          j        ¦   «         v st          j	        t&          ¦  «        rt          j
        t&          ¦  «        ndt          j
        |¦  «        t          j
        |¦  «        dœz  }t          t          j        |¦  «        ¦  «        ‚d x}}t%          ‰¦  «        d         d         }d}||k    }|slt          j        d|fd||f¦  «        t          j
        |¦  «        t          j
        |¦  «        dœz  }dd|iz  }t          t          j        |¦  «        ¦  «        ‚d x}x}}d„ |D ¦   «         }t'          |¦  «        }| }|s•ddt          j        ¦   «         v st          j	        t&          ¦  «        rt          j
        t&          ¦  «        ndt          j
        |¦  «        t          j
        |¦  «        dœz  }t          t          j        |¦  «        ¦  «        ‚d x}x}}|                      ¦   «         ƒ d {V —† d S )Nc               —   óŠ   •K  — ‰                      ¦   «          t          j        ¦   «                              ¦   «         ƒ d {V —† d S r”   )Úsetr¦   ÚEventrÁ   )r´   Úentereds    €r   rµ   zXtest_cancel_has_fixed_reason_and_does_not_emit_later_audio.<locals>.check.<locals>.synth]   sD   øè è € Ø�KŠK‰MŒMˆMÝ”-‘/”/×&Ò&Ñ(Ô(Ð(Ð(Ð(Ð(Ð(Ð(Ð(Ð(Ð(r   r   zSecret body.r   r   r   r   r&   Úapproval)rX   T)Úreturn_exceptionsc              3   óF   K  — | ]}|d          dk    o|d         dk    V — ŒdS )rA   rm   rX   rí   Nr•   r¡   s     r   r˜   z\test_cancel_has_fixed_reason_and_does_not_emit_later_audio.<locals>.check.<locals>.<genexpr>f   s:   è è € ÐgÐgÐPS�3�w”< 8Ò+ÐK°°H´ÀÒ0KÐgÐgÐgÐgÐgÐgr   rš   Úanyrœ   r(   r)   Ú	cancelledr,   rC   rD   rG   r0   c              3   ó0   K  — | ]\  }}|d          dv V — ŒdS )r>   )Úspeech_startr·   Nr•   rÍ   s      r   r˜   z\test_cancel_has_fixed_reason_and_does_not_emit_later_audio.<locals>.check.<locals>.<genexpr>h   s0   è è € ÐUÐUÉÈÈA�q˜”yÐ$DÐDÐUÐUÐUÐUÐUÐUr   z0assert not %(py4)s
{%(py4)s = %(py0)s(%(py2)s)
})r   r¦   rë   rÒ   rÓ   r\   r]   r^   r_   r`   ra   rb   rc   rd   rÁ   rm   Úgatherre   r   rð   rf   ro   )r   r   rS   rp   rµ   rq   rr   rs   rt   ru   rK   rv   r…   r{   ry   r   rz   r�   rì   r   r‘   s                     @€€r   r’   zItest_cancel_has_fixed_reason_and_does_not_emit_later_audio.<locals>.checkZ   s*  øøè è € Ý! (Ñ+Ô+‰ˆˆ1ˆc�1�aÝ”-‘/”/ˆð	)ð 	)ð 	)ð 	)ð 	)ð !&ˆŒ
ÔØŒwÐ2˜'Ð2 >Ð2ˆwˆw�q˜' >Ñ2Ô2Ð2Ð2Ð2Ð2Ð2Õ2Ô2Ñ2Ô2Ð2Ð2Õ2Ô2ˆqÑ2Ô2Ð2Õ2Ô2ˆqÑ2Ô2Ð2Ð2Õ2Ô2ˆwÑ2Ô2Ð2Õ2Ô2Ñ2Ô2Ð2Ð2Õ2Ô2�qÑ2Ô2Ð2Õ2Ô2�qÑ2Ô2Ð2Ð2Õ2Ô2˜'Ñ2Ô2Õ2Ô2 >Ñ2Ô2Õ2Ô2Ð2Ñ2Ô2Ð2Ð2Ñ2Ð2Õ2Õ2Ô2Ð2Ñ2Ô2Ñ2Ô2Ð2Ð2Ð2Ð2Ð2Ð2Ð2Ð2Ð2ØŒh�sŒmˆØ�lŠl‰nŒnÐÐÐÐÐÐÐØ	�Š�˜:ˆÑ&Ô&Ð&ÝŒn˜SœX¸Ð>Ñ>Ô>Ð>Ð>Ð>Ð>Ð>Ð>Ð>ØgÐgÕW^Ð_eÑWfÔWfÐgÑgÔgÐg�sÐgÑgÔgÐgÐgÐgÐgÐgÕgÔgÑgÔgÐgÐgÕgÔg�sÑgÔgÐgÕgÔg�sÑgÔgÐgÐgÕgÔgÐgÑgÔgÕgÔgÐgÑgÔgÐgÐgÑgÐgÕgÕgÔgÐgÑgÔgÑgÔgÐgÐgÐgÐgÐgÝ�v‰Œ˜rÔ" 8Ô,Ð;°Ð;Ð,°Ò;Ð;Ð;Ð;Õ;Ô;Ð;Ð;Ð;Ð;Ð,°Ð;Ñ;Ô;Õ;Ô;Ð,Ñ;Ô;Õ;Ô;°Ñ;Ô;Ð;Ð;Ñ;Ð;Ð;Ð;Ð;Ð;Ñ;Ð;Õ;Õ;Ô;Ð;Ñ;Ô;Ñ;Ô;Ð;Ð;Ð;Ð;Ð;Ð;Ð;ØUÐUÐQTÐUÑUÔUÐU•3ÐUÑUÔUÐUÐUÐUÐUÐUÐUÐUÐUÕUÔUÑUÔUÐUÐUÕUÔU•3ÑUÔUÐUÕUÔU•3ÑUÔUÐUÐUÕUÔUÐUÑUÔUÕUÔUÐUÑUÔUÐUÐUÑUÐUÕUÕUÔUÐUÑUÔUÑUÔUÐUÐUÐUÐUÐUÐUÐUØ�gŠg‰iŒiˆˆˆˆˆˆˆˆˆr   )r£   r¤   r¥   r¦   r§   )r‘   r   r’   s   `` r   Ú:test_cancel_has_fixed_reason_and_does_not_emit_later_audiorõ   X   s\   øø€ Ø
×Ò•W”\Ð*OÐÑPÔPÐPðð ð ð ð ð õ  „K��‘”ÑÔÐÐÐr   c           	      ó^  ‡#— |                       t          j        d¬¦  «         dgŠ#t          ˆ#fd„¦  «        }t	          d¬¦  «        }t	          d¬¦  «        }|                     ||d	¦  «         t          d
¦  «        D ]a}‰#dxx         dz  cc<   |                     ||d‰#d         dz
  d¦  «         |                     |t          |j
        |dz   ¬¦  «        ¦  «         Œb|                     ||j
        ¦  «        }g }|j        }d}||k    }	|	}
|	r$|j        }d}||k    }|}
|r|j        }d}||k    }|}
|
�st          j        d|	fd||f¦  «        dt#          j        ¦   «         v st          j        |¦  «        rt          j        |¦  «        ndt          j        |¦  «        t          j        |¦  «        dœz  }dd|iz  }|                     |¦  «         |	�r>t          j        d|fd||f¦  «        dt#          j        ¦   «         v st          j        |¦  «        rt          j        |¦  «        ndt          j        |¦  «        t          j        |¦  «        dœz  }dd|iz  }|                     |¦  «         |ržt          j        d|fd||f¦  «        dt#          j        ¦   «         v st          j        |¦  «        rt          j        |¦  «        ndt          j        |¦  «        t          j        |¦  «        d œz  }d!d"|iz  }|                     |¦  «         t          j        |d¦  «        i z  }d#d$|iz  }t/          t          j        |¦  «        ¦  «        ‚d x}
x}x}x}	x}x}x}x}x}x}}|j        }|j        }||k    }d
}||k    }|r|sýt          j        d%||fd&|||f¦  «        dt#          j        ¦   «         v st          j        |¦  «        rt          j        |¦  «        ndt          j        |¦  «        dt#          j        ¦   «         v st          j        |¦  «        rt          j        |¦  «        ndt          j        |¦  «        t          j        |¦  «        d'œz  }d(d)|iz  }t/          t          j        |¦  «        ¦  «        ‚d x}x}x}x}}t7          | ¦  «        }t9          |¦  «        }	d*}|	|k    }|�sMt          j        d+|fd,|	|f¦  «        d-t#          j        ¦   «         v st          j        t8          ¦  «        rt          j        t8          ¦  «        nd-d.t#          j        ¦   «         v st          j        t6          ¦  «        rt          j        t6          ¦  «        nd.d/t#          j        ¦   «         v st          j        | ¦  «        rt          j        | ¦  «        nd/t          j        |¦  «        t          j        |	¦  «        t          j        |¦  «        d0œz  }d(d)|iz  }t/          t          j        |¦  «        ¦  «        ‚d x}x}	x}}g }d1}| j        }||v}|}
|rd2}| j        }||v}|}
|
�s~t          j        d3|fd4||f¦  «        t          j        |¦  «        d/t#          j        ¦   «         v st          j        | ¦  «        rt          j        | ¦  «        nd/t          j        |¦  «        d5œz  }dd|iz  }|                     |¦  «         |ržt          j        d3|fd6||f¦  «        t          j        |¦  «        d/t#          j        ¦   «         v st          j        | ¦  «        rt          j        | ¦  «        nd/t          j        |¦  «        d7œz  }dd|iz  }|                     |¦  «         t          j        |d¦  «        i z  } d8d9| iz  }!t/          t          j        |!¦  «        ¦  «        ‚d x}
x}x}x}x}x}x}}t          d:¦  «        D ]4}|                     |t	          t=          |¦  «        ¬¦  «        d;¦  «         Œ5|j        }t9          |¦  «        }|j         }||k    }|�sCt          j        d|fd<||f¦  «        d-t#          j        ¦   «         v st          j        t8          ¦  «        rt          j        t8          ¦  «        nd-d=t#          j        ¦   «         v st          j        |¦  «        rt          j        |¦  «        nd=t          j        |¦  «        t          j        |¦  «        d=t#          j        ¦   «         v st          j        |¦  «        rt          j        |¦  «        nd=t          j        |¦  «        d>œz  }d(d)|iz  }t/          t          j        |¦  «        ¦  «        ‚d x}x}x}}‰#dxx         |j!        dz   z  cc<   | "                    ¦   «          |j        }| }|sxd?d=t#          j        ¦   «         v st          j        |¦  «        rt          j        |¦  «        nd=t          j        |¦  «        d@œz  }"t/          t          j        |"¦  «        ¦  «        ‚d x}}d S )ANr   r   g        c                  ó   •— ‰ d         S ©Nr   r•   ©Únows   €r   ú<lambda>zFtest_metadata_limits_and_timing_do_not_log_per_frame.<locals>.<lambda>p   s   ø€  S¨¤V€ r   zuntrusted
connection-secret)Úconnection_idzgenerated-id)r?   zuntrusted
source-secretéd   r   g{®Gáz´?r·   gš™™™™™©?)g{®Gáz”?g¸…ëQ¸ž?r   )r?   r@   é2   é   r½   r,   )z3%(py4)s
{%(py4)s = %(py2)s.max_send_ms
} == %(py7)sÚtrace)r!   rF   r$   rà   r%   )z<%(py13)s
{%(py13)s = %(py11)s.max_lock_wait_ms
} == %(py16)s)r5   Úpy13r8   rã   rY   )z8%(py22)s
{%(py22)s = %(py20)s.max_write_ms
} == %(py25)s)Úpy20Úpy22Úpy25z%(py27)sÚpy27zassert %(py30)sÚpy30)r-   r-   )zV%(py2)s
{%(py2)s = %(py0)s.played_frames
} == %(py7)s
{%(py7)s = %(py5)s.sent_frames
}z3%(py7)s
{%(py7)s = %(py5)s.sent_frames
} == %(py9)s)r    r!   r#   r$   r%   zassert %(py11)sr5   é
   )ú<=)zN%(py6)s
{%(py6)s = %(py0)s(%(py4)s
{%(py4)s = %(py1)s(%(py2)s)
})
} <= %(py9)srR   r   r   )r    rE   r!   rF   r0   r%   zconnection-secretzsource-secretrÜ   rÞ   rß   rá   râ   rä   rÅ   é(   Úscreen)zg%(py5)s
{%(py5)s = %(py0)s(%(py3)s
{%(py3)s = %(py1)s.traces
})
} == %(py9)s
{%(py9)s = %(py7)s.limit
}Údiag)r    rE   r"   r#   r$   r%   z.assert not %(py2)s
{%(py2)s = %(py0)s.traces
}r'   )#r£   r¤   r¥   r   r   ÚbeginÚranger*   Úprogressrj   r?   rl   Úmax_send_msÚmax_lock_wait_msÚmax_write_msr_   rf   r]   r^   r`   ra   rg   rh   rb   rc   r:   r+   r   rR   rŸ   Ústrrn   ÚlimitÚttlÚprune)$r   r  r   rK   Úindexr   rq   rv   rs   rz   r{   r~   r�   r‹   Ú@py_assert21Ú@py_assert24Ú@py_assert23rå   ru   r‚   r�   Ú@py_format26Ú@py_format28Ú@py_format29Ú@py_format31rt   rr   Ú@py_format12rˆ   ry   rŠ   r}   r„   r×   rw   rú   s$                                      @r   Ú4test_metadata_limits_and_timing_do_not_log_per_framer  m   sl  ø€ Ø
×Ò•W”\Ð*OÐÑPÔPÐPØˆ%€CÝ˜^˜^˜^˜^Ñ,Ô,€DÝÐ&DÐEÑEÔE€AÝ
 NÐ
3Ñ
3Ô
3€CØ‡J‚Jˆq�#Ð1Ñ2Ô2Ð2Ý�s‘”ð Qð QˆØˆAˆˆŒ�#‰ˆˆ‰Ø�	Š	�!�S˜.¨#¨a¬&°3©,¸
ÑCÔCÐCØ�Š�a�¨¬ÀUÈQÁYÐOÑOÔOÑPÔPÐPÐPØ�HŠH�Q˜œÑ&Ô&€EØ`Ð`ˆ5ÔÐ` Ð`Ð Ò"Ð`Ð`Ð`Ð`Ð` uÔ'=Ð`ÀÐ`Ð'=ÀÒ'CÐ`Ð`Ð`Ð`Ð`ÈÔHZÐ`Ð^`Ð`ÐHZÐ^`ÒH`Ð`Ð`Ð`Ð`Ñ`Õ`Ô`Ð`Ð`Ð`Ð`Ð Ð`Ñ`Ô`Ð`Õ`Ô`Ñ`Ô`Ð`Ð`Õ`Ô`ˆ5Ñ`Ô`Ð`Õ`Ô`ˆ5Ñ`Ô`Ð`Ð`Õ`Ô`ÐÑ`Ô`Õ`Ô` Ñ`Ô`Ð`Ð`Ñ`Ð`Ð`Ð`Ð`Ð`Ñ`Ð`Ð`×`Ò`Ð`Ñ`Ô`Ð`Ð`Ñ`Õ`Ô`Ð`Ð`Ð`Ð`Ð'=ÀÐ`Ñ`Ô`Ð`Õ`Ô`Ñ`Ô`Ð`Ð`Õ`Ô` uÑ`Ô`Ð`Õ`Ô` uÑ`Ô`Ð`Ð`Õ`Ô`Ð'=Ñ`Ô`Õ`Ô`ÀÑ`Ô`Ð`Ð`Ñ`Ð`Ð`Ð`Ð`Ð`Ñ`Ð`Ð`×`Ò`Ð`Ñ`Ô`Ð`Ð`Ð`Õ`Ô`Ð`Ð`Ð`Ð`ÐHZÐ^`Ð`Ñ`Ô`Ð`Õ`Ô`Ñ`Ô`Ð`Ð`Õ`Ô`ÈÑ`Ô`Ð`Õ`Ô`ÈÑ`Ô`Ð`Ð`Õ`Ô`ÐHZÑ`Ô`Õ`Ô`Ð^`Ñ`Ô`Ð`Ð`Ñ`Ð`Ð`Ð`Ð`Ð`Ñ`Ð`Ð`×`Ò`Ð`Ñ`Ô`Ð`Õ`Ô`Ð`Ð`Ñ`Ô`Ð`Ñ`Ð`Ð`Ð`Ð`Ð`Ñ`Ð`Õ`Õ`Ô`Ð`Ñ`Ô`Ñ`Ô`Ð`Ð`Ð`Ð`Ð`Ð`Ð`Ð`Ð`Ð`Ð`Ð`Ð`Ð`Ð`Ð`Ð`Ð`Ð`Ð`Ð`Ð`Ð`ØÔÐ: %Ô"3Ð:ÐÐ"3Ò:Ð:°sÐ:Ð"3°sÒ:Ð:Ð:Ð:Ð:Ð:Õ:Ô:Ð:Ð:Ð:Ð:Ð:ÐÐ"3°sÐ:Ñ:Ô:Ð:Õ:Ô:Ñ:Ô:Ð:Ð:Õ:Ô:ˆ5Ñ:Ô:Ð:Õ:Ô:ˆ5Ñ:Ô:Ð:Ð:Õ:Ô:ÐÑ:Ô:Ð:Õ:Ô:Ñ:Ô:Ð:Ð:Õ:Ô: %Ñ:Ô:Ð:Õ:Ô: %Ñ:Ô:Ð:Ð:Õ:Ô:Ð"3Ñ:Ô:Õ:Ô:°sÑ:Ô:Ð:Ð:Ñ:Ð:Ð:Ð:Ð:Ð:Ñ:Ð:Õ:Õ:Ô:Ð:Ñ:Ô:Ñ:Ô:Ð:Ð:Ð:Ð:Ð:Ð:Ð:Ð:Ð:Ð:Ð:Ý�v‰ŒÐ%�3ˆÑÔÐ% 2Ð%Ð 2Ò%Ð%Ð%Ñ%Õ%Ô%Ð%Ð%Ð%Ð%Ð 2Ð%Ñ%Ô%Ð%Õ%Ô%Ñ%Ô%Ð%Ð%Õ%Ô%�3Ñ%Ô%Ð%Õ%Ô%�3Ñ%Ô%Ð%Ð%Ð%Õ%Ô%Ñ%Ô%Ð%Ð%Õ%Ô%�wÑ%Ô%Ð%Õ%Ô%�wÑ%Ô%Ð%Ð%Ð%Õ%Ô%Ñ%Ô%Ð%Ð%Õ%Ô%�vÑ%Ô%Ð%Õ%Ô%�vÑ%Ô%Ð%Ð%Õ%Ô%ˆÑ%Ô%Õ%Ô%ÐÑ%Ô%Õ%Ô% 2Ñ%Ô%Ð%Ð%Ñ%Ð%Ð%Ð%Ð%Ð%Ñ%Ð%Õ%Õ%Ô%Ð%Ñ%Ô%Ñ%Ô%Ð%Ð%Ð%Ð%Ð%Ð%Ð%Ð%Ð%ØXÐXÐÐX f¤kÐXÐ kÐ1ÐXÐXÐXÐXÐX°oÐXÈVÌ[ÐX°oÈ[Ð6XÐXÐXÐXÐXÑXÕXÔXÐXÐXÐXÐXÐ kÐXÑXÔXÕXÔXÐÑXÔXÐXÕXÔXÑXÔXÐXÐXÕXÔX fÑXÔXÐXÕXÔX fÑXÔXÐXÐXÕXÔX kÑXÔXÐXÐXÑXÐXÐXÐXÐXÐXÑXÐXÐX×XÒXÐXÑXÔXÐXÐXÐXÕXÔXÐXÐXÐXÐX°oÈ[ÐXÑXÔXÕXÔX°oÑXÔXÐXÕXÔXÑXÔXÐXÐXÕXÔXÈVÑXÔXÐXÕXÔXÈVÑXÔXÐXÐXÕXÔXÈ[ÑXÔXÐXÐXÑXÐXÐXÐXÐXÐXÑXÐXÐX×XÒXÐXÑXÔXÐXÕXÔXÐXÐXÑXÔXÐXÑXÐXÐXÐXÐXÐXÑXÐXÕXÕXÔXÐXÑXÔXÑXÔXÐXÐXÐXÐXÐXÐXÐXÐXÐXÐXÐXÐXÐXÐXÐXÐXÐXÝ�r‘”ð Gð GˆØ�
Š
�1•oµ°E±
´
Ð;Ñ;Ô;¸XÑFÔFÐFÐFØŒ{Ð)�3ˆ{ÑÔÐ)˜tœzÐ)Ð˜zÒ)Ð)Ð)Ñ)Õ)Ô)Ð)Ð)Ð)Ð)Ð˜zÐ)Ñ)Ô)Ð)Õ)Ô)Ñ)Ô)Ð)Ð)Õ)Ô)�3Ñ)Ô)Ð)Õ)Ô)�3Ñ)Ô)Ð)Ð)Ð)Õ)Ô)Ñ)Ô)Ð)Ð)Õ)Ô)ˆtÑ)Ô)Ð)Õ)Ô)ˆtÑ)Ô)Ð)Ð)Õ)Ô)ˆ{Ñ)Ô)Õ)Ô)ÐÑ)Ô)Ð)Õ)Ô)Ñ)Ô)Ð)Ð)Õ)Ô)˜tÑ)Ô)Ð)Õ)Ô)˜tÑ)Ô)Ð)Ð)Õ)Ô)˜zÑ)Ô)Ð)Ð)Ñ)Ð)Ð)Ð)Ð)Ð)Ñ)Ð)Õ)Õ)Ô)Ð)Ñ)Ô)Ñ)Ô)Ð)Ð)Ð)Ð)Ð)Ð)Ð)Ð)Ð)Øˆ€F€F„FˆdŒh˜‰lÑ€F€F�FØ‡J‚J�L„L€LØŒ{Ðˆ{ˆ?Ðˆ?ÐÐÐÕÔÑÔÐÐÕÔˆtÑÔÐÕÔˆtÑÔÐÐÕÔˆ{ÑÔÐÐÑÐÕÕÔÐÑÔÑÔÐÐÐÐÐÐÐr   c                 óZ   ‡ ‡— ddl mŠ ˆˆ fd„}t          j         |¦   «         ¦  «         d S )Nr   )Úappc               “   ó6  •‡K  — dgŠ‰                      ‰j        dˆfd„¦  «          G ˆfd„d¦  «        }  G ˆfd„d¦  «        }t          d |¦   «          | ¦   «         ¬	¦  «        }‰                     |d
di¦  «        ƒ d {V —†\  }}g }t          j        }d} ||¦  «        }||k    }	|	}
|	r!t          j        }d} ||¦  «        }||k    }|}
|
�s4t          j        d|	fd||f¦  «        dt          j	        ¦   «         v st          j
        |¦  «        rt          j        |¦  «        nddt          j	        ¦   «         v st          j
        t          ¦  «        rt          j        t          ¦  «        ndt          j        |¦  «        t          j        |¦  «        t          j        |¦  «        dœz  }dd|iz  }|                     |¦  «         |	rùt          j        d|fd||f¦  «        dt          j	        ¦   «         v st          j
        |¦  «        rt          j        |¦  «        nddt          j	        ¦   «         v st          j
        t          ¦  «        rt          j        t          ¦  «        ndt          j        |¦  «        t          j        |¦  «        t          j        |¦  «        dœz  }dd|iz  }|                     |¦  «         t          j        |d¦  «        i z  }dd|iz  }t          t          j        |¦  «        ¦  «        ‚d x}
x}x}	x}x}x}x}x}x}}d S )Ng      $@Ú	monotonicc                  ó   •— ‰ d         S rø   r•   rù   s   €r   rû   zYtest_shared_send_lock_wait_is_separate_from_socket_write.<locals>.check.<locals>.<lambda>‰   s   ø€ ¸3¸q¼6€ r   c                   ó    •— e Zd Zˆ fd„Zd„ ZdS )úUtest_shared_send_lock_wait_is_separate_from_socket_write.<locals>.check.<locals>.Lockc              “   ó,   •K  — ‰dxx         dz  cc<   d S )Nr   çš™™™™™Ù?r•   )Úselfrú   s    €r   Ú
__aenter__z`test_shared_send_lock_wait_is_separate_from_socket_write.<locals>.check.<locals>.Lock.__aenter__‹   s   øè è € ¨¨A¨¨¬°"©¨¨©¨¨r   c              —   ó
   K  — d S r”   r•   )r)  r´   s     r   Ú	__aexit__z_test_shared_send_lock_wait_is_separate_from_socket_write.<locals>.check.<locals>.Lock.__aexit__Œ   s
   è è € € € r   N)Ú__name__Ú
__module__Ú__qualname__r*  r,  rù   s   €r   ÚLockr&  Š   s)   ø€ € € € € Ø4Ð4Ð4Ð4Ð4Ø2Ð2Ð2Ð2Ð2r   r0  c                   ó   •— e Zd Zˆ fd„ZdS )úWtest_shared_send_lock_wait_is_separate_from_socket_write.<locals>.check.<locals>.Socketc              “   ó,   •K  — ‰dxx         dz  cc<   d S )Nr   çš™™™™™¹?r•   )r)  r¹   rú   s     €r   Ú	send_jsonzatest_shared_send_lock_wait_is_separate_from_socket_write.<locals>.check.<locals>.Socket.send_jsonŽ   s   øè è € °°A°°´¸"±°°±°°r   N)r-  r.  r/  r5  rù   s   €r   ÚSocketr2  �   s    ø€ € € € € Ø<Ð<Ð<Ð<Ð<Ð<Ð<r   r6  T)ÚonlineÚ	websocketÚ	send_lockr>   r·   r(  r4  r,   )zN%(py2)s == %(py10)s
{%(py10)s = %(py6)s
{%(py6)s = %(py4)s.approx
}(%(py8)s)
}Ú	lock_waitÚpytest)r!   rF   r0   r2   rL   z%(py12)srM   )zS%(py14)s == %(py22)s
{%(py22)s = %(py18)s
{%(py18)s = %(py16)s.approx
}(%(py20)s)
}Úwrite)r6   r8   rY   r  r  z%(py24)sÚpy24r   zassert %(py27)sr  )rÔ   Útimer   Úsend_to_devicer;  Úapproxr_   rf   r]   r^   r`   ra   rg   rh   rb   rc   )r0  r6  r   r:  r<  rq   rz   rˆ   r‰   rv   r{   Ú@py_assert17Ú@py_assert19r  r�   Ú@py_format11rŽ   Ú@py_format23rÙ   r  r  rú   r!  rÛ   s                        @€€r   r’   zGtest_shared_send_lock_wait_is_separate_from_socket_write.<locals>.check‡   sÂ  øøè è € ØˆfˆØ×Ò˜CœH k°>°>°>°>ÑBÔBÐBð	3ð 	3ð 	3ð 	3ð 	3ð 	3ð 	3ñ 	3ô 	3ð 	3ð	=ð 	=ð 	=ð 	=ð 	=ð 	=ð 	=ñ 	=ô 	=ð 	=å 4°6°6±8´8ÀtÀtÁvÄvÐNÑNÔNˆØ!$×!3Ò!3°A¸¸~Ð7NÑ!OÔ!OÐOÐOÐOÐOÐOÐOÑˆ	�5ØLÐL�FœMÐL¨"ÐL˜M˜M¨"Ñ-Ô-ÐLˆyÐ-Ò-ÐLÐLÐLÐLÐL½6¼=ÐLÈÐL¸=¸=ÈÑ;LÔ;LÐL°%Ð;LÒ2LÐLÐLÐLÐLÑLÕLÔLÐLÐLÐLÐLˆyÐ-ÐLÑLÔLÐLÕLÔLÑLÔLÐLÐLÕLÔLˆyÑLÔLÐLÕLÔLˆyÑLÔLÐLÐLÐLÕLÔLÑLÔLÐLÐLÕLÔL�FÑLÔLÐLÕLÔL�FÑLÔLÐLÐLÕLÔL˜MÑLÔLÕLÔL¨"ÑLÔLÕLÔLÐ-ÑLÔLÐLÐLÑLÐLÐLÐLÐLÐLÑLÐLÐL×LÒLÐLÑLÔLÐLÐLÐLÕLÔLÐLÐLÐLÐL°%Ð;LÐLÑLÔLÐLÕLÔLÑLÔLÐLÐLÕLÔL°%ÑLÔLÐLÕLÔL°%ÑLÔLÐLÐLÐLÕLÔLÑLÔLÐLÐLÕLÔL½6ÑLÔLÐLÕLÔL½6ÑLÔLÐLÐLÕLÔL¸=ÑLÔLÕLÔLÈÑLÔLÕLÔLÐ;LÑLÔLÐLÐLÑLÐLÐLÐLÐLÐLÑLÐLÐL×LÒLÐLÑLÔLÐLÕLÔLÐLÐLÑLÔLÐLÑLÐLÐLÐLÐLÐLÑLÐLÕLÕLÔLÐLÑLÔLÑLÔLÐLÐLÐLÐLÐLÐLÐLÐLÐLÐLÐLÐLÐLÐLÐLÐLÐLÐLÐLÐLÐLÐLÐLr   )Údevice_gatewayr!  r¦   r§   )rÛ   r’   r!  s   ` @r   Ú8test_shared_send_lock_wait_is_separate_from_socket_writerF  …   sX   øø€ Ø"Ð"Ð"Ð"Ð"Ð"ð
Mð 
Mð 
Mð 
Mð 
Mð 
Mõ „K��‘”ÑÔÐÐÐr   )Úbuiltinsr]   Ú_pytest.assertion.rewriteÚ	assertionÚrewriter_   r¦   r
   r¤   Útypesr   r;  Ú!device_gateway.speech_diagnosticsr   Útest_speechr   r   r¨   ÚmarkÚparametrizeræ   rõ   r  rF  r•   r   r   ú<module>rP     s  ðØ  € € € € € € € € € € € € €€€€Ø €€€Ø €€€Ø !Ð !Ð !Ð !Ð !Ð !à €€€à ?Ð ?Ð ?Ð ?Ð ?Ð ?Ø Ð Ð Ð Ð Ð ðKð Kð Kð
lð lð lðD „×Ò˜Ð"LÐ"LÐ"LÑMÔMð!Zð !Zñ NÔMð!ZðHð ð ð*ð ð ð0ð ð ð ð r   