
    bj                         d dl Zd dlmc mZ d dlmZ d dlZd dl	Z	d dl
mZmZmZ e	j                             ej        d          du d          Zd Zd Zd	 ZdS )
    N)Path)TRUE_TRACE_TOP3_CANDIDATE_IDS$build_top_truetrace_preview_packages$render_top_truetrace_preview_summaryffmpegz,ffmpeg is required for MP4 preview rendering)reasonc                 &.   t          | d          }|j        }d}||k    }|st          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          t          j	        |                    d x}x}}d
 |j
        D             }t          t                    }||k    }	|	st          j        d|	fd||f          t          j        |          dt	          j                    v st          j        t                    rt          j        t                    nddt	          j                    v st          j        t                    rt          j        t                    ndt          j        |          dz  }
dd|
iz  }t          t          j	        |                    d x}x}	}|j
        }	t          |	          }d}||k    }|st          j        d|fd||f          dt	          j                    v st          j        t                    rt          j        t                    nddt	          j                    v st          j        |          rt          j        |          ndt          j        |	          t          j        |          t          j        |          dz  }dd|iz  }t          t          j	        |                    d x}	x}x}}|j        }d}||k    }|st          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          t          j	        |                    d x}x}}|j        }d}||k    }|st          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          t          j	        |                    d x}x}}|j
        D ]V}|j        }|j        }d}||u }|st          j        d|fd||f          dt	          j                    v st          j        |          rt          j        |          ndt          j        |          t          j        |          t          j        |          dz  }d d!|iz  }t          t          j	        |                    d x}x}x}}|j        }|j        }d}||k    }|st          j        d|fd"||f          dt	          j                    v st          j        |          rt          j        |          ndt          j        |          t          j        |          t          j        |          dz  }d d!|iz  }t          t          j	        |                    d x}x}x}}|j        }|j        }d#}||k    }|st          j        d|fd$||f          dt	          j                    v st          j        |          rt          j        |          ndt          j        |          t          j        |          t          j        |          dz  }d d!|iz  }t          t          j	        |                    d x}x}x}}|j        }|j        }d}||u }|st          j        d|fd%||f          dt	          j                    v st          j        |          rt          j        |          ndt          j        |          t          j        |          t          j        |          dz  }d d!|iz  }t          t          j	        |                    d x}x}x}}|j        }|j        }d&}||k    }|st          j        d|fd'||f          dt	          j                    v st          j        |          rt          j        |          ndt          j        |          t          j        |          t          j        |          dz  }d d!|iz  }t          t          j	        |                    d x}x}x}}|j        }|j        }d&}||k    }|st          j        d|fd(||f          dt	          j                    v st          j        |          rt          j        |          ndt          j        |          t          j        |          t          j        |          dz  }d d!|iz  }t          t          j	        |                    d x}x}x}}|j        j        d)         }|j        }	d)}|	|k    }|st          j        d|fd*|	|f          t          j        |          t          j        |	          t          j        |          d+z  }
dd|
iz  }t          t          j	        |                    d x}x}	x}}|j        j        d,         }|j        }	|j        }|j        }d-}||z  }|	|k    }|st          j        d|fd.|	|f          t          j        |          t          j        |	          dt	          j                    v st          j        |          rt          j        |          ndt          j        |          t          j        |          t          j        |          d/z  }d0d1|iz  }t          t          j	        |                    d x}x}	x}x}x}x}}|j        }|j        }d2}||k    }|st          j        d|fd3||f          dt	          j                    v st          j        |          rt          j        |          ndt          j        |          t          j        |          t          j        |          dz  }d d!|iz  }t          t          j	        |                    d x}x}x}}|j        }|j        }d4}||k    }|st          j        d|fd5||f          dt	          j                    v st          j        |          rt          j        |          ndt          j        |          t          j        |          t          j        |          dz  }d d!|iz  }t          t          j	        |                    d x}x}x}}|j        }|j        }d6}||u }|st          j        d|fd7||f          dt	          j                    v st          j        |          rt          j        |          ndt          j        |          t          j        |          t          j        |          dz  }d d!|iz  }t          t          j	        |                    d x}x}x}}|j        }|j        }d&}||k    }|st          j        d|fd8||f          dt	          j                    v st          j        |          rt          j        |          ndt          j        |          t          j        |          t          j        |          dz  }d d!|iz  }t          t          j	        |                    d x}x}x}}|j        }|j        }d&}||k    }|st          j        d|fd9||f          dt	          j                    v st          j        |          rt          j        |          ndt          j        |          t          j        |          t          j        |          dz  }d d!|iz  }t          t          j	        |                    d x}x}x}}|j        }	|	j        }tA          |          }|j!        } |            }|sd:d;t	          j                    v st          j        t@                    rt          j        t@                    nd;dt	          j                    v st          j        |          rt          j        |          ndt          j        |	          t          j        |          t          j        |          t          j        |          t          j        |          d<z  }t          t          j	        |                    d x}	x}x}x}}|j        }|j        }|j"        }d=} ||          }|sd>dt	          j                    v st          j        |          rt          j        |          ndt          j        |          t          j        |          t          j        |          t          j        |          t          j        |          d?z  }t          t          j	        |                    d x}x}x}x}}|j#        }|j$        }d}||u }|st          j        d|fd@||f          dt	          j                    v st          j        |          rt          j        |          ndt          j        |          t          j        |          t          j        |          dz  }d d!|iz  }t          t          j	        |                    d x}x}x}}|j#        }|j        }d&}||k    }|st          j        d|fdA||f          dt	          j                    v st          j        |          rt          j        |          ndt          j        |          t          j        |          t          j        |          dz  }d d!|iz  }t          t          j	        |                    d x}x}x}}|j#        }|j        }d&}||k    }|st          j        d|fdB||f          dt	          j                    v st          j        |          rt          j        |          ndt          j        |          t          j        |          t          j        |          dz  }d d!|iz  }t          t          j	        |                    d x}x}x}}|j#        }|j%        }|j        }|j        }||k    }|st          j        d|fdC||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t          j        |          t          j        |          d?z  }dDdE|iz  }t          t          j	        |                    d x}x}x}x}}dF |j#        j&        D             }tO          |          }dG}||k    }|st          j        d|fdH||f          dIt	          j                    v st          j        tN                    rt          j        tN                    ndIt          j        |          t          j        |          t          j        |          dz  }d d!|iz  }t          t          j	        |                    d x}x}x}}Xd S )JNde
output_dirapproval_languagez#truetrace-top3-preview-packages-001==)z0%(py2)s
{%(py2)s = %(py0)s.batch_id
} == %(py5)sresult)py0py2py5zassert %(py7)spy7c                 &    g | ]}|j         j        S  )	candidatecandidate_id).0artifacts     _/home/agent/jarvis_runtime/autoshortsbot/AutoShortsBot/tests/test_truetrace_preview_packages.py
<listcomp>zatest_build_top_truetrace_preview_packages_renders_three_mp4_approval_packages.<locals>.<listcomp>   s    MMMH+MMM    )z0%(py1)s == %(py6)s
{%(py6)s = %(py3)s(%(py4)s)
}listr   )py1py3py4py6assert %(py8)spy8   )zO%(py5)s
{%(py5)s = %(py0)s(%(py3)s
{%(py3)s = %(py1)s.artifacts
})
} == %(py8)slen)r   r   r    r   r$   zassert %(py10)spy10)	write_pngwrite_concatcall_ffmpeg	write_mp4)z4%(py2)s
{%(py2)s = %(py0)s.side_effects
} == %(py5)s)r   )z6%(py2)s
{%(py2)s = %(py0)s.external_calls
} == %(py5)sT)is)z\%(py4)s
{%(py4)s = %(py2)s
{%(py2)s = %(py0)s.package
}.requires_human_approval
} is %(py7)sr   )r   r   r!   r   assert %(py9)spy9)zV%(py4)s
{%(py4)s = %(py2)s
{%(py2)s = %(py0)s.package
}.approval_language
} == %(py7)sen)zY%(py4)s
{%(py4)s = %(py2)s
{%(py2)s = %(py0)s.package
}.final_video_language
} == %(py7)s)zZ%(py4)s
{%(py4)s = %(py2)s
{%(py2)s = %(py0)s.subtitle_track
}.renderer_owned
} is %(py7)sr   )zX%(py4)s
{%(py4)s = %(py2)s
{%(py2)s = %(py0)s.subtitle_track
}.side_effects
} == %(py7)s)zZ%(py4)s
{%(py4)s = %(py2)s
{%(py2)s = %(py0)s.subtitle_track
}.external_calls
} == %(py7)sr   )z0%(py3)s
{%(py3)s = %(py1)s.start_ms
} == %(py6)s)r   r    r"   i  )z%(py3)s
{%(py3)s = %(py1)s.end_ms
} == (%(py9)s
{%(py9)s = %(py7)s
{%(py7)s = %(py5)s.candidate
}.duration_seconds
} * %(py11)s))r   r    r   r   r.   py11zassert %(py14)spy14edge_tts)zN%(py4)s
{%(py4)s = %(py2)s
{%(py2)s = %(py0)s.tts_plan
}.provider
} == %(py7)szen-GB-RyanNeural)zK%(py4)s
{%(py4)s = %(py2)s
{%(py2)s = %(py0)s.tts_plan
}.voice
} == %(py7)sF)zV%(py4)s
{%(py4)s = %(py2)s
{%(py2)s = %(py0)s.tts_plan
}.blocks_video_gpu
} is %(py7)s)zQ%(py4)s
{%(py4)s = %(py2)s
{%(py2)s = %(py0)s.package
}.side_effects
} == %(py7)s)zS%(py4)s
{%(py4)s = %(py2)s
{%(py2)s = %(py0)s.package
}.external_calls
} == %(py7)sassert %(py11)s
{%(py11)s = %(py9)s
{%(py9)s = %(py7)s
{%(py7)s = %(py0)s(%(py5)s
{%(py5)s = %(py3)s
{%(py3)s = %(py1)s.package
}.preview_video_path
})
}.exists
}()
}r   r   r   r    r   r   r.   r1   zpreview.mp4zassert %(py10)s
{%(py10)s = %(py6)s
{%(py6)s = %(py4)s
{%(py4)s = %(py2)s
{%(py2)s = %(py0)s.package
}.preview_video_path
}.endswith
}(%(py8)s)
})r   r   r!   r"   r$   r'   )zm%(py4)s
{%(py4)s = %(py2)s
{%(py2)s = %(py0)s.manual_posting_pack
}.requires_human_manual_upload
} is %(py7)s)z]%(py4)s
{%(py4)s = %(py2)s
{%(py2)s = %(py0)s.manual_posting_pack
}.side_effects
} == %(py7)s)z_%(py4)s
{%(py4)s = %(py2)s
{%(py2)s = %(py0)s.manual_posting_pack
}.external_calls
} == %(py7)s)z%(py4)s
{%(py4)s = %(py2)s
{%(py2)s = %(py0)s.manual_posting_pack
}.video_path
} == %(py10)s
{%(py10)s = %(py8)s
{%(py8)s = %(py6)s.package
}.preview_video_path
}zassert %(py12)spy12c              3   $   K   | ]}|j         V  d S )N)platform)r   posts     r   	<genexpr>z`test_build_top_truetrace_preview_packages_renders_three_mp4_approval_packages.<locals>.<genexpr>-   s$      [[tT][[[[[[r   )youtubetiktok)z0%(py4)s
{%(py4)s = %(py0)s(%(py2)s)
} == %(py7)stuple)(r   batch_id
@pytest_ar_call_reprcompare@py_builtinslocals_should_repr_global_name	_safereprAssertionError_format_explanation	artifactsr   r   r&   side_effectsexternal_callspackagerequires_human_approvalr   final_video_languagesubtitle_trackrenderer_ownedcuesstart_msend_msr   duration_secondstts_planprovidervoiceblocks_video_gpupreview_video_pathr   existsendswithmanual_posting_packrequires_human_manual_upload
video_pathplatform_postsr=   )tmp_pathr   @py_assert1@py_assert4@py_assert3@py_format6@py_format8@py_assert0@py_assert5@py_assert2@py_format7@py_format9@py_assert7@py_assert6@py_format11r   @py_format10@py_assert8@py_assert10@py_assert12@py_format13@py_format15@py_format12@py_assert9s                           r   Mtest_build_top_truetrace_preview_packages_renders_three_mp4_approval_packagesrt      s0   1XY]^^^F?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C6CCCCC6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MMF<LMMMtQUVsQtQttMQtttttttttttMQttttttMtttttttttttQUtttttQUtttttttttttttVstttttVsttttttQt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%3  %A% A%%%%%%%%%% A%%%%%%%%%%%%3%%%%%3%%%%%%%%%%%%%v%%%%%v%%%%%%%%%% %%%%A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%["[["[[[[[[[[[[["[[[[[[[[[[[[[6[[[[[6[[[[[[[[[["[[[[[[[[[[[[[[[[[[[[[[[[[[[[ /K/ K////////// K////////////6/////6////// ////K///////////////////////////$ u u?7?4?74??????????74????????????x?????x??????????7????4?????????????????????????????919T91T99999999991T999999999999x99999x999999999919999T99999999999999999999999999999<4<<4<<<<<<<<<<4<<<<<<<<<<<<x<<<<<x<<<<<<<<<<4<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<&=&5==5==========5============x=====x======&====5=================================&9&39r93r99999999993r999999999999x99999x999999&999939999r99999999999999999999999999999&;&5;;5;;;;;;;;;;5;;;;;;;;;;;;x;;;;;x;;;;;;&;;;;5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;&+A.<.7<1<71<<<<<<<<<<71<<<<<.<<<<7<<<<1<<<<<<<<<<<<<<<<<<<<<<<<<<<<<&+B/d/6d(:Ld:L:]d`dd:]`d:dd6:ddddddddddd6:dddddd/dddd6ddddddddddd(ddddd(dddddd:L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 7 )7Z7)Z7777777777)Z777777777777x77777x777777 7777)7777Z77777777777777777777777777777 < &<*<<&*<<<<<<<<<<<&*<<<<<<<<<<<<<x<<<<<x<<<<<< <<<<&<<<<*<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< : 1:U:1U::::::::::1U::::::::::::x:::::x:::::: ::::1::::U:::::::::::::::::::::::::::::2,22,2222222222,222222222222x22222x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4.4"4."4444444444."444444444444x44444x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4444444444$A$7At788A8?A??AAAAAAAAAAAAAAAtAAAAAtAAAAAAAAAAAAAHAAAAAHAAAAAA$AAAA7AAAA8AAAA?AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ2J2;JMJ;;MJJJJJJJJJJJJJJJxJJJJJxJJJJJJJJJJ2JJJJ;JJJJM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JJ+P+HPDPHDPPPPPPPPPPHDPPPPPPPPPPPPxPPPPPxPPPPPP+PPPPHPPPPDPPPPPPPPPPPPPPPPPPPPPPPPPPPPP+>+8>B>8B>>>>>>>>>>8B>>>>>>>>>>>>x>>>>>x>>>>>>+>>>>8>>>>B>>>>>>>>>>>>>>>>>>>>>>>>>>>>>+@+:@b@:b@@@@@@@@@@:b@@@@@@@@@@@@x@@@@@x@@@@@@+@@@@:@@@@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+]+6](:J]:J:]]6:]]]]]]]]]]]6:]]]]]]]]]]]]]x]]]]]x]]]]]]+]]]]6]]]]]]]]]]](]]]]](]]]]]]:J]]]]:]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]][[x/K/Z[[[tu[[[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tutttttu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tttttttttttttttttt)u ur   c                    |                     |            t          dd          }|j        D ]}|j        }|j        }t          |          }|j        } |            }|sddt          j                    v st          j
        t
                    rt          j        t
                    nddt          j                    v st          j
        |          rt          j        |          ndt          j        |          t          j        |          t          j        |          t          j        |          t          j        |          dz  }	t          t          j        |	                    d x}x}x}x}}|j        }|j        }t          |          }|j        } |            }|sddt          j                    v st          j
        t
                    rt          j        t
                    nddt          j                    v st          j
        |          rt          j        |          ndt          j        |          t          j        |          t          j        |          t          j        |          t          j        |          dz  }	t          t          j        |	                    d x}x}x}x}}d S )	Nzrelative-previewsr
   r   zassert %(py11)s
{%(py11)s = %(py9)s
{%(py9)s = %(py7)s
{%(py7)s = %(py0)s(%(py5)s
{%(py5)s = %(py3)s
{%(py3)s = %(py1)s.package
}.preview_video_path
})
}.is_absolute
}()
}r   r   r5   r4   )chdirr   rG   rJ   rW   r   is_absoluterA   rB   r?   rC   rD   rE   rF   rX   )
r^   monkeypatchr   r   rf   r`   rj   rm   rn   rr   s
             r   Etest_build_top_truetrace_preview_packages_accepts_relative_output_dirry   0   s   h1=PdhiiiF$ B B$F$7Ft788F8DFDDFFFFFFFFFFFFFFFtFFFFFtFFFFFFFFFFFFFHFFFFFHFFFFFF$FFFF7FFFF8FFFFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF$A$7At788A8?A??AAAAAAAAAAAAAAAtAAAAAtAAAAAAAAAAAAAHAAAAAHAAAAAA$AAAA7AAAA8AAAA?AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB Br   c                     t          | d          }t          |          }d}||v }|st          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          t          j	        |                    d x}}d
}||v }|st          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          t          j	        |                    d x}}d}||v }|st          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          t          j	        |                    d x}}d}||v }|st          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          t          j	        |                    d x}}|j
        }d} ||          }	d}
|	|
k    }|st          j        d|fd|	|
f          dt          j                    v st          j        |          rt          j        |          ndt          j        |          t          j        |          t          j        |	          t          j        |
          dz  }dd|iz  }t          t          j	        |                    d x}x}x}	x}}
d}||v }|st          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          t          j	        |                    d x}}d}||v }|st          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          t          j	        |                    d x}}d}||v }|st          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          t          j	        |                    d x}}d}||v }|st          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          t          j	        |                    d x}}d}|j        } |            }||v}|st          j        d|fd||f          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}}d}|j        } |            }||v}|st          j        d|fd||f          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}}t          |          }d}	||	k     }|st          j        d |fd!||	f          d"t          j                    v st          j        t                    rt          j        t                    nd"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}}	d S )&Nr
   r   z### TrueTrace Top-3 Preview Packages)in)z%(py1)s in %(py3)stext)r   r    zassert %(py5)sr   zPackages: 3zApproval language: dezFinal video language: enzPreview video:r%   r   )zK%(py6)s
{%(py6)s = %(py2)s
{%(py2)s = %(py0)s.count
}(%(py4)s)
} == %(py9)s)r   r   r!   r"   r.   zassert %(py11)sr1   zSubtitle cues:z)TTS baseline: edge_tts / en-GB-RyanNeuralzFreigabe allez Manual upload pack prepared: yespublish)not in)zK%(py1)s not in %(py7)s
{%(py7)s = %(py5)s
{%(py5)s = %(py3)s.casefold
}()
})r   r    r   r   r-   r.   r9   i   )<)z/%(py3)s
{%(py3)s = %(py0)s(%(py1)s)
} < %(py6)sr&   )r   r   r    r"   r#   r$   )r   r   r?   r@   rD   rA   rB   rC   rE   rF   countcasefoldr&   )r^   r   r|   rd   rf   @py_format4rb   r_   ra   re   rm   ri   rl   rr   r`   rj   rc   rg   rh   s                      r   Vtest_render_top_truetrace_preview_summary_is_telegram_safe_and_references_three_videosr   :   s|
   1XY]^^^F/77D080D88888888880D88888088888888888D88888D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 =D          =D     =           D     D                           "*"d**********"d*****"***********d*****d***************************%-%----------%-----%-------------------------------------------:,&,::&'',1,'1,,,,,,,,,,'1,,,,,,,,,,,,4,,,,,4,,,,,,:,,,,&,,,,',,,,1,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,#t##########t################t#####t###########################6>6$>>>>>>>>>>6$>>>>>6>>>>>>>>>>>$>>>>>$>>>>>>>>>>>>>>>>>>>>>>>>>>>"?d""""""""""?d"""""?"""""""""""d"""""d"""""""""""""""""""""""""""-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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+DM+MMOO+9O++++++++++9O+++++9+++++++++++D+++++D++++++M++++O+++++++++++++++++++++++++++++(((6((((((((((6(((((6(((((((((((((((((((((((((((((((((((((((((((((((((((((((t99t9t9t33tt9tr   )builtinsrA   _pytest.assertion.rewrite	assertionrewriter?   pathlibr   shutilpytest*autoshorts.demo.truetrace_preview_packagesr   r   r   markskipifwhich
pytestmarkrt   ry   r   r   r   r   <module>r      s                                   [X 6 6$ >Guvv
u u u@B B B    r   