Ë
    ÑsÁiª,  ã                   óØ   — d Z ddlZddlZddlZddlZddlmZ ej                  j                  dd«       ddl	m
Z
  G d„ d«      Zd„ Zed	k(  r e«       Z ej                  erdnd
«       yy)u  
ì•„ë¥´ê³ ìŠ¤(í…ŒìŠ¤í„°): test_task182_glm_prompt.py
============================================

dev8-teamì˜ _build_glm_prompt() ìˆ˜ì • ê²€ì¦ í…ŒìŠ¤íŠ¸

ë°°ê²½:
  - build_prompt('dev8-team', 'test-task', task_desc) í˜¸ì¶œ ì‹œ dev8-teamì€ typeì´ "glm"ì´ë¯€ë¡œ _build_glm_promptê°€ í˜¸ì¶œë¨
  - ìˆ˜ì • í›„ task_descê°€ í”„ë¡¬í”„íŠ¸ ë³¸ë¬¸ì— ì§ì ‘ ìž„ë² ë“œë˜ì§€ ì•Šê³ , íŒŒì¼ ì°¸ì¡°ë¡œ ëŒ€ì²´ë¨
  - WORKSPACE_ROOT ê¸°ë³¸ê°’: /home/jay/workspace

í…ŒìŠ¤íŠ¸ í•­ëª©:
  1. build_prompt('dev8-team', 'test-182', 'A' * 2000) í˜¸ì¶œ í›„:
     - ë°˜í™˜ëœ í”„ë¡¬í”„íŠ¸ ê¸¸ì´ê°€ 4096ìž ì´ë‚´ì¸ì§€ ê²€ì¦
     - í”„ë¡¬í”„íŠ¸ì— 'A' * 2000 (task_desc ì›ë¬¸)ì´ í¬í•¨ë˜ì–´ ìžˆì§€ ì•Šì€ì§€ ê²€ì¦
     - í”„ë¡¬í”„íŠ¸ì— 'memory/tasks/test-182.mdë¥¼ ì½ê³  íŒŒì•…í•˜ì„¸ìš”' ë¬¸êµ¬ê°€ í¬í•¨ë˜ì–´ ìžˆëŠ”ì§€ ê²€ì¦
     - í”„ë¡¬í”„íŠ¸ì— 'memory/tasks/test-182.md íŒŒì¼ì„ ì½ì–´ì„œ íŒŒì•…í•˜ì„¸ìš”' ë¬¸êµ¬ê°€ í¬í•¨ë˜ì–´ ìžˆëŠ”ì§€ ê²€ì¦ (glm_message ë¶€ë¶„)

  2. ê¸°ì¡´ ê¸°ëŠ¥ ë³´ì¡´ í™•ì¸:
     - 'openclaw' ëª…ë ¹ì–´ê°€ í¬í•¨ë˜ì–´ ìžˆëŠ”ì§€
     - 'done' íŒŒì¼ ê²½ë¡œê°€ í¬í•¨ë˜ì–´ ìžˆëŠ”ì§€
     - 'ìž¬ì‹œë„' ê´€ë ¨ ë¡œì§ì´ í¬í•¨ë˜ì–´ ìžˆëŠ”ì§€
é    N)ÚPathz/home/jay/workspace)Úbuild_promptc                   óT   — e Zd ZdZed„ «       Zedefd„«       Zd„ Zd„ Z	d„ Z
d„ Zd	„ Zy
)ÚTestTask182GlmPromptu!   GLM í”„ë¡¬í”„íŠ¸ ë¹Œë“œ í…ŒìŠ¤íŠ¸c                   ó   — y)u6   í…ŒìŠ¤íŠ¸ìš© ìž„ì‹œ ì›Œí¬ìŠ¤íŽ˜ì´ìŠ¤ ìƒì„± (ì˜µì…˜)N© r   ó    ú?/home/jay/workspace/teams/dev1/tests/test_task182_glm_prompt.pyÚsetup_workspacez$TestTask182GlmPrompt.setup_workspace(   s   € ð 	r	   Útask_idc                 óh   — t        d«      | › dz  }|j                  «       r|j                  «        yy)u,   í…ŒìŠ¤íŠ¸ í›„ ìƒì„±ëœ ìž„ì‹œ íŒŒì¼ ì •ë¦¬ú /home/jay/workspace/memory/tasksú.mdN)r   ÚexistsÚunlink)r   Ú	task_files     r
   Úcleanup_workspacez&TestTask182GlmPrompt.cleanup_workspace.   s7   € ô Ð;Ó<À'ÀÈ#¸ÑNˆ	Ø×ÑÔØ×ÑÕð r	   c                 óÒ   — d}d}	 t        d||«      }||vsJ d«       ‚t        d«       t        dt        |«      › d«       | j                  |«       y# | j                  |«       w xY w)	uC  
        í…ŒìŠ¤íŠ¸ 1: build_prompt í˜¸ì¶œ ì‹œ task_descê°€ í”„ë¡¬í”„íŠ¸ì— ì§ì ‘ ìž„ë² ë“œë˜ì§€ ì•ŠëŠ”ì§€ í™•ì¸

        - ë°˜í™˜ëœ í”„ë¡¬í”„íŠ¸ì— 'A' * 2000 (ì›ë¬¸)ì´ í¬í•¨ë˜ì–´ ìžˆì§€ ì•Šì€ì§€ ê²€ì¦
        - íŒŒì¼ ì°¸ì¡°ë¡œ ëŒ€ì²´ë˜ì–´, í”„ë¡¬í”„íŠ¸ ê¸¸ì´ê°€ íš¨ìœ¨ì ìœ¼ë¡œ ìœ ì§€ë˜ëŠ”ì§€ ê²€ì¦
        útest-182ÁÐ  AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAú	dev8-teamu‹   FAIL: í”„ë¡¬í”„íŠ¸ì— task_desc ì›ë¬¸ ('A' * 2000)ì´ í¬í•¨ë˜ì–´ ìžˆìŠµë‹ˆë‹¤. ì´ëŠ” í”„ë¡¬í”„íŠ¸ê°€ ë„ˆë¬´ ê¸¸ì–´ì§ˆ ìˆ˜ ìžˆìŠµë‹ˆë‹¤.uA   âœ“ PASS: task_desc ì›ë¬¸ì´ í”„ë¡¬í”„íŠ¸ì— í¬í•¨ë˜ì§€ ì•ŠìŒu   âœ“ PASS: í”„ë¡¬í”„íŠ¸ ê¸¸ì´ u0   ìž (task_desc ì›ë¬¸ ë¯¸í¬í•¨ìœ¼ë¡œ íš¨ìœ¨ì )N)r   ÚprintÚlenr   )Úselfr   Ú
large_descÚprompt_with_larges       r
   Ú+test_large_task_desc_not_embedded_in_promptz@TestTask182GlmPrompt.test_large_task_desc_not_embedded_in_prompt5   s†   € ð ˆØˆ
ð	,Ü ,¨[¸'À:Ó NÐð Ð%6Ñ6ð ðLóÐ6ô ÐUÔVô
 Ð2´3Ð7HÓ3IÐ2JÐJzÐ{Ô|ð ×"Ñ" 7Õ+øˆD×"Ñ" 7Õ+ús   †;A ÁA&c                 ó  — d}d}	 t        d||«      }d|› d}||v sJ d|› d«       ‚t        d|› d	«       d
|› d}||v sJ d|› d«       ‚t        d|› d	«       | j                  |«       y# | j                  |«       w xY w)u.  
        í…ŒìŠ¤íŠ¸ 2: íŒŒì¼ ì°¸ì¡° ë¬¸êµ¬ê°€ í”„ë¡¬í”„íŠ¸ì— í¬í•¨ë˜ì–´ ìžˆëŠ”ì§€ í™•ì¸

        - 'ìž‘ì—… ìƒì„¸ëŠ” ... memory/tasks/test-182.mdë¥¼ ì½ê³  íŒŒì•…í•˜ì„¸ìš”' í¬í•¨ ì—¬ë¶€
        - task_file_path ë³€ìˆ˜ê°€ ì›Œí¬í”Œë¡œìš° í”Œë ˆì´ìŠ¤í™€ë”ì— í¬í•¨ë˜ì–´ ìžˆëŠ”ì§€ ì—¬ë¶€
        r   u   API ì„œë²„ ê°œë°œ ê´€ë ¨ ìž‘ì—…r   zmemory/tasks/u   .mdë¥¼ ì½ê³  íŒŒì•…í•˜ì„¸ìš”u   FAIL: í”„ë¡¬í”„íŠ¸ì— 'uO   ' ë¬¸êµ¬ê°€ ì—†ìŠµë‹ˆë‹¤. í”„ë¡¬í”„íŠ¸ ë³¸ë¬¸ì— íŒŒì¼ ì°¸ì¡°ê°€ ì—†ìŠµë‹ˆë‹¤.u   âœ“ PASS: í”„ë¡¬í”„íŠ¸ì— 'u   ' ë¬¸êµ¬ í¬í•¨z1task_file_path: /home/jay/workspace/memory/tasks/r   u   FAIL: ì›Œí¬í”Œë¡œìš°ì— 'uJ   ' ë¬¸êµ¬ê°€ ì—†ìŠµë‹ˆë‹¤. GLMì— ì „ë‹¬ë  task_file_pathê°€ ì—†ìŠµë‹ˆë‹¤.u   âœ“ PASS: ì›Œí¬í”Œë¡œìš°ì— 'N©r   r   r   )r   r   Ú	task_descÚpromptÚexpected_ref_1Úexpected_ref_2s         r
   Útest_file_reference_in_promptz2TestTask182GlmPrompt.test_file_reference_in_promptQ   sá   € ð ˆØ5ˆ	ð	,Ü! +¨w¸	ÓBˆFð  -¨W¨IÐ5RÐSˆNØ! VÑ+ð Ø)¨.Ð)9ð :Hð IóÐ+ô Ð/°Ð/?¸ÐOÔPð  QÐQXÐPYÐY\Ð]ˆNØ! VÑ+ð Ø,¨^Ð,<ð =Cð DóÐ+ô Ð2°>Ð2BÀ/ÐRÔSð ×"Ñ" 7Õ+øˆD×"Ñ" 7Õ+ús   †AA- Á-B c                 ó&  — d}d}	 t        d||«      }d|v sJ d«       ‚t        d«       d|v sJ d«       ‚t        d	«       d
|v sJ d«       ‚t        d«       d|v sJ d«       ‚t        d«       | j                  |«       y# | j                  |«       w xY w)u  
        í…ŒìŠ¤íŠ¸ 3: ê¸°ì¡´ ê¸°ëŠ¥ ë³´ì¡´ í™•ì¸

        - 'openclaw' ëª…ë ¹ì–´ í¬í•¨ ì—¬ë¶€
        - 'done' íŒŒì¼ ê´€ë ¨ ê²€í†  ì²´í¬ë¦¬ìŠ¤íŠ¸ í¬í•¨ ì—¬ë¶€
        - GLM-WORKFLOW.md ì°¸ì¡° í¬í•¨ ì—¬ë¶€
        - run-glm.sh ëž˜í¼ ìŠ¤í¬ë¦½íŠ¸ í˜¸ì¶œ í¬í•¨ ì—¬ë¶€
        r   u   í…ŒìŠ¤íŠ¸ ìž‘ì—…r   Úopenclawun   FAIL: í”„ë¡¬í”„íŠ¸ì— 'openclaw' ëª…ë ¹ì–´ê°€ ì—†ìŠµë‹ˆë‹¤. ê¸°ì¡´ ê¸°ëŠ¥ì´ ì†ìƒë˜ì—ˆì„ ìˆ˜ ìžˆìŠµë‹ˆë‹¤.u%   âœ“ PASS: 'openclaw' ëª…ë ¹ì–´ í¬í•¨u   done íŒŒì¼uK   FAIL: í”„ë¡¬í”„íŠ¸ì— 'done íŒŒì¼' ê´€ë ¨ ì²´í¬ë¦¬ìŠ¤íŠ¸ê°€ ì—†ìŠµë‹ˆë‹¤.u5   âœ“ PASS: 'done íŒŒì¼' ê´€ë ¨ ì²´í¬ë¦¬ìŠ¤íŠ¸ í¬í•¨zGLM-WORKFLOW.mdu{   FAIL: í”„ë¡¬í”„íŠ¸ì— 'GLM-WORKFLOW.md' ì°¸ì¡°ê°€ ì—†ìŠµë‹ˆë‹¤. ì›Œí¬í”Œë¡œìš° ì°¸ì¡°ê°€ ì†ìƒë˜ì—ˆì„ ìˆ˜ ìžˆìŠµë‹ˆë‹¤.u)   âœ“ PASS: 'GLM-WORKFLOW.md' ì°¸ì¡° í¬í•¨z
run-glm.shuN   FAIL: í”„ë¡¬í”„íŠ¸ì— 'run-glm.sh' ëž˜í¼ ìŠ¤í¬ë¦½íŠ¸ í˜¸ì¶œì´ ì—†ìŠµë‹ˆë‹¤.u8   âœ“ PASS: 'run-glm.sh' ëž˜í¼ ìŠ¤í¬ë¦½íŠ¸ í˜¸ì¶œ í¬í•¨Nr   ©r   r   r    r!   s       r
   Ú%test_existing_functionality_preservedz:TestTask182GlmPrompt.test_existing_functionality_preservedq   sÚ   € ð ˆØ&ˆ	ð	,Ü! +¨w¸	ÓBˆFð  Ñ'ð ðEóÐ'ô Ð9Ô:ð ! FÑ*ð Ø]óÐ*ô ÐIÔJð %¨Ñ.ð ðNóÐ.ô Ð=Ô>ð   6Ñ)ð Ø`óÐ)ô ÐLÔMð ×"Ñ" 7Õ+øˆD×"Ñ" 7Õ+ús   †A%A= Á=Bc                 ó’  — d}d}t        d«      |› dz  }	 |j                  «       r|j                  «        t        d||«      }|j                  «       s
J d|› «       ‚t	        d|› d«       |j                  d	¬
«      }||k(  sJ d|› d|› d«       ‚t	        d|› d«       | j                  |«       y# | j                  |«       w xY w)uð   
        í…ŒìŠ¤íŠ¸ 4: build_prompt í˜¸ì¶œ í›„ task_descê°€ íŒŒì¼ì— ì˜¬ë°”ë¥´ê²Œ ì €ìž¥ë˜ëŠ”ì§€ í™•ì¸

        - /home/jay/workspace/memory/tasks/{task_id}.md íŒŒì¼ì´ ìƒì„±ë¨
        - íŒŒì¼ ë‚´ìš©ì´ task_descì™€ ì¼ì¹˜í•¨
        ztest-182-file-checku   íŒŒì¼ ì €ìž¥ ê²€ì¦ í…ŒìŠ¤íŠ¸r   r   r   u.   FAIL: íŒŒì¼ì´ ìƒì„±ë˜ì§€ ì•Šì•˜ìŠµë‹ˆë‹¤. u   âœ“ PASS: íŒŒì¼ ìƒì„±ë¨ (ú)zutf-8)ÚencodinguH   FAIL: íŒŒì¼ ë‚´ìš©ì´ task_descì™€ ì¼ì¹˜í•˜ì§€ ì•ŠìŠµë‹ˆë‹¤. ì˜ˆìƒ: 'u   ', ì‹¤ì œ: 'ú'u1   âœ“ PASS: íŒŒì¼ ë‚´ìš©ì´ task_descì™€ ì¼ì¹˜ ('z')N)r   r   r   r   r   Ú	read_textr   )r   r   r    Útask_file_pathr!   Úfile_contents         r
   Ú test_task_file_created_correctlyz5TestTask182GlmPrompt.test_task_file_created_correctly   s   € ð (ˆØ4ˆ	ÜÐ@ÓAÀwÀiÈsÀOÑSˆð	,à×$Ñ$Ô&Ø×%Ñ%Ô'ä! +¨w¸	ÓBˆFð "×(Ñ(Ô*ð Ø@ÀÐ@PÐQóÐ*ô Ð0°Ð0@ÀÐBÔCð *×3Ñ3¸WÐ3ÓEˆLØ 9Ò,ð ðØ%˜; l°<°.ÀðCóÐ,ô ÐEÀiÀ[ÐPRÐSÔTð ×"Ñ" 7Õ+øˆD×"Ñ" 7Õ+ús   —B
B3 Â3Cc                 ó>  — d}d}	 t        d||«      }d|v rd|v sJ d«       ‚t        d«       d|v sJ d	«       ‚t        d
«       d|v sJ d«       ‚t        d«       ||v sJ d|› d«       ‚t        d|› d«       | j                  |«       y# | j                  |«       w xY w)uä   
        í…ŒìŠ¤íŠ¸ 5: í”„ë¡¬í”„íŠ¸ êµ¬ì¡° ê²€ì¦

        - íŒ€ìž¥ ì—­í•  ì§€ì‹œ í¬í•¨ ('ë¼(Ra), ê°œë°œ8íŒ€ìž¥')
        - ì¤‘ìš” ê·œì¹™ ì„¹ì…˜ í¬í•¨
        - ì›Œí¬í”Œë¡œìš° ì„¹ì…˜ í¬í•¨
        - ìž‘ì—… ID í¬í•¨
        ztest-182-structureu   êµ¬ì¡° ê²€ì¦ í…ŒìŠ¤íŠ¸r   u   ë¼(Ra)u   ê°œë°œ8íŒ€ìž¥uU   FAIL: í”„ë¡¬í”„íŠ¸ì— íŒ€ìž¥ ì—­í•  ì§€ì‹œ('ë¼(Ra), ê°œë°œ8íŒ€ìž¥')ê°€ ì—†ìŠµë‹ˆë‹¤.u%   âœ“ PASS: íŒ€ìž¥ ì—­í•  ì§€ì‹œ í¬í•¨u   ì¤‘ìš” ê·œì¹™u=   FAIL: í”„ë¡¬í”„íŠ¸ì— 'ì¤‘ìš” ê·œì¹™' ì„¹ì…˜ì´ ì—†ìŠµë‹ˆë‹¤.u'   âœ“ PASS: 'ì¤‘ìš” ê·œì¹™' ì„¹ì…˜ í¬í•¨u   ì›Œí¬í”Œë¡œìš°u?   FAIL: í”„ë¡¬í”„íŠ¸ì— 'ì›Œí¬í”Œë¡œìš°' ì„¹ì…˜ì´ ì—†ìŠµë‹ˆë‹¤.u)   âœ“ PASS: 'ì›Œí¬í”Œë¡œìš°' ì„¹ì…˜ í¬í•¨u!   FAIL: í”„ë¡¬í”„íŠ¸ì— ìž‘ì—… ID 'u   'ê°€ ì—†ìŠµë‹ˆë‹¤.u   âœ“ PASS: ìž‘ì—… ID 'u   ' í¬í•¨Nr   r'   s       r
   Útest_prompt_structurez*TestTask182GlmPrompt.test_prompt_structureÀ   sî   € ð 'ˆØ-ˆ	ð	,Ü! +¨w¸	ÓBˆFð  Ñ&¨?¸fÑ+Dð ØgóÐDô Ð9Ô:ð # fÑ,ð ØOóÐ,ô Ð;Ô<ð %¨Ñ.ð ØQóÐ.ô Ð=Ô>ð ˜fÑ$ð Ø3°G°9Ð<NÐOóÐ$ô Ð)¨'¨°(Ð;Ô<ð ×"Ñ" 7Õ+øˆD×"Ñ" 7Õ+ús   †A1B	 Â	BN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ústaticmethodr   Ústrr   r   r$   r(   r0   r2   r   r	   r
   r   r   %   sN   „ Ù+àñó ðð
 ð 3ò ó ðò,ò8,ò@*,òX!,óF(,r	   r   c                  óà  — t        d«       t        d«       t        d«       t        «        t        «       } d| j                  fd| j                  fd| j                  fd| j
                  fd| j                  fg}d}d}|D ]D  \  }}t        d	|› «       t        d
«       	  |«        |dz  }t        d|› d«       t        «        ŒF t        d«       t        d|› d|› d«       t        d«       |dk(  S # t        $ r5}|dz  }t        d|› d«       t        dt        |«      › «       Y d}~Œrd}~wt        $ r5}|dz  }t        d|› d«       t        dt        |«      › «       Y d}~Œ®d}~ww xY w)u   ëª¨ë“  í…ŒìŠ¤íŠ¸ ì‹¤í–‰zF======================================================================uA   ì•„ë¥´ê³ ìŠ¤(í…ŒìŠ¤í„°): GLM í”„ë¡¬í”„íŠ¸ ë¹Œë“œ ê²€ì¦ í…ŒìŠ¤íŠ¸uQ   í…ŒìŠ¤íŠ¸ 1: task_descê°€ í”„ë¡¬í”„íŠ¸ì— ì§ì ‘ ìž„ë² ë“œë˜ì§€ ì•ŠëŠ”ì§€ í™•ì¸uK   í…ŒìŠ¤íŠ¸ 2: íŒŒì¼ ì°¸ì¡° ë¬¸êµ¬ê°€ í”„ë¡¬í”„íŠ¸ì— í¬í•¨ë˜ëŠ”ì§€ í™•ì¸u(   í…ŒìŠ¤íŠ¸ 3: ê¸°ì¡´ ê¸°ëŠ¥ ë³´ì¡´ í™•ì¸uG   í…ŒìŠ¤íŠ¸ 4: task_descê°€ íŒŒì¼ì— ì˜¬ë°”ë¥´ê²Œ ì €ìž¥ë˜ëŠ”ì§€ í™•ì¸u'   í…ŒìŠ¤íŠ¸ 5: í”„ë¡¬í”„íŠ¸ êµ¬ì¡° ê²€ì¦r   ú
zF----------------------------------------------------------------------é   u   âœ“ z PASSEDu   âœ— z FAILEDz  Nz ERRORu   í…ŒìŠ¤íŠ¸ ê²°ê³¼: z	 PASSED, )
r   r   r   r$   r(   r0   r2   ÚAssertionErrorr8   Ú	Exception)ÚtesterÚtestsÚpassedÚfailedÚ	test_nameÚ	test_funcÚes          r
   Úrun_all_testsrE   ë   s‘  € ä	ˆ(„OÜ	Ð
MÔNÜ	ˆ(„OÜ	„Gä!Ó#€Fð 
]Ø	×	;Ñ	;ð	=à	VØ	×	-Ñ	-ð	/à	3Ø	×	5Ñ	5ð	7à	RØ	×	0Ñ	0ð	2à	2Ø	×	%Ñ	%ð	'ð€Eð €FØ€Fà %ò Ñˆ	9Ü9+ÐÔÜˆhŒð	!ÙŒKØa‰KˆFÜD˜˜ 7Ð+Ô,ô 	ðô" 
ˆ(„OÜ	Ð˜v˜h i°¨x°wÐ
?Ô@Ü	ˆ(„OàQ‰;Ðøô ò 	!Øa‰KˆFÜD˜˜ 7Ð+Ô,ÜB”s˜1“vh-× Ñ ûÜò 	!Øa‰KˆFÜD˜˜ 6Ð*Ô+ÜB”s˜1“vh-× Ñ ûð	!ús$   ÂC3Ã3	E-Ã<+D,Ä,E-Ä8+E(Å(E-Ú__main__r;   )r6   ÚsysÚosÚtempfileÚshutilÚpathlibr   ÚpathÚinsertÚprompts.team_promptsr   r   rE   r3   ÚsuccessÚexitr   r	   r
   ú<module>rQ      sn   ðñó0 Û 	Û Û Ý ð ‡‡Ð(Ô )å -÷C,ñ C,òL.ðb ˆzÒÙ‹o€GØ€C‡HH‘'‰Q˜qÕ!ð r	   