K i3 XddlZddlmZddlZddlmZddlmZddlm Z GddZ y)N)mock) build_clib) Distribution)DistutilsSetupErrorcleZdZejddZejddZy) TestBuildCLibz2setuptools.command.build_clib.newer_pairwise_groupct}t|}dddifg}tjt5|j |dddd}ddg|dfg}tjt5|j |dddddi}ddg|dfg}tjt5|j |dddddi}ddg|dfg}tjt5|j |dddt j|j|_ggf|_ d d d }dd g|dfg}|j |gd g|jdvsJ|jjjrJ|jjjdk(sJ|jjd|_ |j ||jjjdk(sJ|jjjdk(sJy#1swYxYw#1swYxYw#1swYxYw#1swYXxYw)Nexamplesourceszbroken.c some_stringzsource.cr obj_depsspecglobal.h example.hr example.cr)rrrr)rrpytestraisesrbuild_librariesr MagicMockcompiler return_value call_argscompilecalledcreate_static_lib call_count reset_mock)self mock_newerdistcmdlibsrs f/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/setuptools/tests/test_build_clib.pytest_build_librariesz"TestBuildCLib.test_build_libraries sH~Y 345 ]]. / &    % &! (KLM ]]. / &    % &8 (KLM ]]. / &    % &# (KLM ]]. / &    % & ~~3<<8 #%r( %NC 8LMN D!67:;O;OPQ;RRRR<<''....||--88A=== !"$  D!||##..!333||--88A===K & &  & &  & &  & &s/H54I4I4I5H?I II&ct}t|}tj|j|_ggf|_ddg}|}ddd}d||dfg}|j ||jd }||k(r%tj|t|}||k(r%d||dfg}|j |||jd k(sJy) Nrz a-example.crrrrr r r) rrrrrrrrrandomsamplelen) r%r&r'r(original_sourcesr rr)computed_call_argss r*!test_build_libraries_reproduciblez/TestBuildCLib.test_build_libraries_reproducible<s~~~3<<8 #%r( );7"%NCXFGH D!'11!4))mm$4c:J6KLG))XFGH D!!Z%9%9!%<<<<N)__name__ __module__ __qualname__rpatchr+r2r3r*rr sCTZZDE,>F,>\TZZDE=F=r3r) r-unittestrrsetuptools.command.build_clibrsetuptools.distrdistutils.errorsrrr8r3r*r=s#  4(0H=H=r3