Ë
    ÑsÁiª,  ã                   óò   — d Z 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
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Ü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
                  |«      rt        j                  |«      nddœz  }t        j                  d	«      d
z   d|iz  }t        t        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-team)únot in)z%(py0)s not in %(py2)sÚ
large_descÚprompt_with_large©Úpy0Úpy2u‹   FAIL: í”„ë¡¬í”„íŠ¸ì— task_desc ì›ë¬¸ ('A' * 2000)ì´ í¬í•¨ë˜ì–´ ìžˆìŠµë‹ˆë‹¤. ì´ëŠ” í”„ë¡¬í”„íŠ¸ê°€ ë„ˆë¬´ ê¸¸ì–´ì§ˆ ìˆ˜ ìžˆìŠµë‹ˆë‹¤.ú
>assert %(py4)sÚpy4NuA   âœ“ PASS: task_desc ì›ë¬¸ì´ í”„ë¡¬í”„íŠ¸ì— í¬í•¨ë˜ì§€ ì•ŠìŒu   âœ“ PASS: í”„ë¡¬í”„íŠ¸ ê¸¸ì´ u0   ìž (task_desc ì›ë¬¸ ë¯¸í¬í•¨ìœ¼ë¡œ íš¨ìœ¨ì ))r   Ú
@pytest_arÚ_call_reprcompareÚ@py_builtinsÚlocalsÚ_should_repr_global_nameÚ	_safereprÚ_format_assertmsgÚAssertionErrorÚ_format_explanationÚprintÚlenr   )Úselfr   r   r   Ú@py_assert1Ú@py_format3Ú@py_format5s          r
   Ú+test_large_task_desc_not_embedded_in_promptz@TestTask182GlmPrompt.test_large_task_desc_not_embedded_in_prompt5   s+  € ð ˆØˆ
ð	,Ü ,¨[¸'À:Ó NÐð Ð%6Ð6÷ ïé ó:Ð%6÷ ò ÷ v÷ò ïé ð ÷ ñ ÷ Ið ÷ ó ÷ v÷ò ïé ð &7÷ ñ ÷ Ið &7÷ ÷ ïé ðL÷÷ ö ïé ÷ó ô ÐUÔVô
 Ð2´3Ð7HÓ3IÐ2JÐJzÐ{Ô|ð ×"Ñ" 7Õ+øˆD×"Ñ" 7Õ+ús   †DD, Ä,D?c                 ój  — d}d}	 t        d||«      }d|› d}||v }|sà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
                  |«      rt        j                  |«      nd	d
œz  }t        j                  d|› d«      dz   d|iz  }t        t        j                  |«      «      ‚d}t        d|› d«       d|› d}||v }|sà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
                  |«      rt        j                  |«      nd	d
œz  }t        j                  d|› d«      dz   d|iz  }t        t        j                  |«      «      ‚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ë¥¼ ì½ê³  íŒŒì•…í•˜ì„¸ìš”©Úin©z%(py0)s in %(py2)sÚexpected_ref_1Úpromptr   u   FAIL: í”„ë¡¬í”„íŠ¸ì— 'uO   ' ë¬¸êµ¬ê°€ ì—†ìŠµë‹ˆë‹¤. í”„ë¡¬í”„íŠ¸ ë³¸ë¬¸ì— íŒŒì¼ ì°¸ì¡°ê°€ ì—†ìŠµë‹ˆë‹¤.r   r   Nu   âœ“ PASS: í”„ë¡¬í”„íŠ¸ì— 'u   ' ë¬¸êµ¬ í¬í•¨z1task_file_path: /home/jay/workspace/memory/tasks/r   Úexpected_ref_2u   FAIL: ì›Œí¬í”Œë¡œìš°ì— 'uJ   ' ë¬¸êµ¬ê°€ ì—†ìŠµë‹ˆë‹¤. GLMì— ì „ë‹¬ë  task_file_pathê°€ ì—†ìŠµë‹ˆë‹¤.u   âœ“ PASS: ì›Œí¬í”Œë¡œìš°ì— ')r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r   )	r+   r   Ú	task_descr5   r4   r,   r-   r.   r6   s	            r
   Útest_file_reference_in_promptz2TestTask182GlmPrompt.test_file_reference_in_promptQ   s-  € ð ˆØ5ˆ	ð	,Ü! +¨w¸	ÓBˆFð  -¨W¨IÐ5RÐSˆNØ! VÐ+÷ ïé ó> V÷ ò ÷ v÷ò ïé ð "÷ ñ ÷ Ið "÷ ó ÷ v÷ò ïé ð &,÷ ñ ÷ Ið &,÷ ÷ ïé ð *¨.Ð)9ð :Hð I÷÷ ö ïé ÷ó ô Ð/°Ð/?¸ÐOÔPð  QÐQXÐPYÐY\Ð]ˆNØ! VÐ+÷ ïé ó> V÷ ò ÷ v÷ò ïé ð "÷ ñ ÷ Ið "÷ ó ÷ v÷ò ïé ð &,÷ ñ ÷ Ið &,÷ ÷ ïé ð -¨^Ð,<ð =Cð D÷÷ ö ïé ÷ó ô Ð2°>Ð2BÀ/ÐRÔSð ×"Ñ" 7Õ+øˆD×"Ñ" 7Õ+ús   †HH ÈH2c                 ó¦  — d}d}	 t        d||«      }d}||v }|s¯t        j                  d|fd||f«      t        j                  |«      dt	        j
                  «       v st        j                  |«      rt        j                  |«      nddœz  }t        j                  d	«      d
z   d|iz  }t        t        j                  |«      «      ‚dx}}t        d«       d}||v }|s¯t        j                  d|fd||f«      t        j                  |«      dt	        j
                  «       v st        j                  |«      rt        j                  |«      nddœz  }t        j                  d«      d
z   d|iz  }t        t        j                  |«      «      ‚dx}}t        d«       d}||v }|s¯t        j                  d|fd||f«      t        j                  |«      dt	        j
                  «       v st        j                  |«      rt        j                  |«      nddœz  }t        j                  d«      d
z   d|iz  }t        t        j                  |«      «      ‚dx}}t        d«       d}||v }|s¯t        j                  d|fd||f«      t        j                  |«      dt	        j
                  «       v st        j                  |«      rt        j                  |«      nddœz  }t        j                  d«      d
z   d|iz  }t        t        j                  |«      «      ‚dx}}t        d«       | j                  |«       y# | j                  |«       w xY w)u  
        í…ŒìŠ¤íŠ¸ 3: ê¸°ì¡´ ê¸°ëŠ¥ ë³´ì¡´ í™•ì¸

        - 'openclaw' ëª…ë ¹ì–´ í¬í•¨ ì—¬ë¶€
        - 'done' íŒŒì¼ ê´€ë ¨ ê²€í†  ì²´í¬ë¦¬ìŠ¤íŠ¸ í¬í•¨ ì—¬ë¶€
        - GLM-WORKFLOW.md ì°¸ì¡° í¬í•¨ ì—¬ë¶€
        - run-glm.sh ëž˜í¼ ìŠ¤í¬ë¦½íŠ¸ í˜¸ì¶œ í¬í•¨ ì—¬ë¶€
        r   u   í…ŒìŠ¤íŠ¸ ìž‘ì—…r   Úopenclawr1   ©z%(py1)s in %(py3)sr5   ©Úpy1Úpy3un   FAIL: í”„ë¡¬í”„íŠ¸ì— 'openclaw' ëª…ë ¹ì–´ê°€ ì—†ìŠµë‹ˆë‹¤. ê¸°ì¡´ ê¸°ëŠ¥ì´ ì†ìƒë˜ì—ˆì„ ìˆ˜ ìžˆìŠµë‹ˆë‹¤.ú
>assert %(py5)sÚpy5Nu%   âœ“ 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' ëž˜í¼ ìŠ¤í¬ë¦½íŠ¸ í˜¸ì¶œ í¬í•¨)r   r    r!   r%   r"   r#   r$   r&   r'   r(   r)   r   )r+   r   r7   r5   Ú@py_assert0Ú@py_assert2Ú@py_format4Ú@py_format6s           r
   Ú%test_existing_functionality_preservedz:TestTask182GlmPrompt.test_existing_functionality_preservedq   sò  € ð ˆØ&ˆ	ð	,Ü! +¨w¸	ÓBˆFð ð : Ð'÷ ïé ó: ÷ ñ ÷ Ið ÷ ñ ÷ v÷ò ïé ð "(÷ ñ ÷ Ið "(÷ ÷ ïé ðE÷÷ ö ïé ÷õ ô Ð9Ô:ð !ð = FÐ*÷ ïé ó= F÷ ñ çIð !÷ ñ çv÷ò ïé ð %+÷ ñ çIð %+÷ ÷ ïé ð ^÷÷ ö ïé ÷õ ô ÐIÔJð %ð Ð$¨Ð.÷ ïé óÐ$¨÷ ñ ÷ Ið %÷ ñ ÷ v÷ò ïé ð )/÷ ñ ÷ Ið )/÷ ÷ ïé ðN÷÷ ö ïé ÷õ ô Ð=Ô>ð  ð < 6Ð)÷ ïé ó< 6÷ ñ çIð  ÷ ñ çv÷ò ïé ð $*÷ ñ çIð $*÷ ÷ ïé ð a÷÷ ö ïé ÷õ ô ÐLÔMð ×"Ñ" 7Õ+øˆD×"Ñ" 7Õ+ús   †L%L= Ì=Mc                 óŽ  — d}d}t        d«      |› dz  }	 |j                  «       r|j                  «        t        d||«      }|j                  } |«       }|s¦t	        j
                  d|› «      dz   dt        j                  «       v st	        j                  |«      rt	        j                  |«      ndt	        j                  |«      t	        j                  |«      d	œz  }t        t	        j                  |«      «      ‚d
x}}t        d|› d«       |j                  d¬«      }||k(  }|sã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                  |«      rt	        j                  |«      nddœz  }	t	        j
                  d|› d|› d«      dz   d|	iz  }t        t	        j                  |«      «      ‚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: íŒŒì¼ì´ ìƒì„±ë˜ì§€ ì•Šì•˜ìŠµë‹ˆë‹¤. zC
>assert %(py4)s
{%(py4)s = %(py2)s
{%(py2)s = %(py0)s.exists
}()
}Útask_file_path)r   r   r   Nu   âœ“ PASS: íŒŒì¼ ìƒì„±ë¨ (ú)zutf-8)Úencoding)ú==)z%(py0)s == %(py2)sÚfile_contentr7   r   uH   FAIL: íŒŒì¼ ë‚´ìš©ì´ task_descì™€ ì¼ì¹˜í•˜ì§€ ì•ŠìŠµë‹ˆë‹¤. ì˜ˆìƒ: 'u   ', ì‹¤ì œ: 'ú'r   r   u1   âœ“ PASS: íŒŒì¼ ë‚´ìš©ì´ task_descì™€ ì¼ì¹˜ ('z'))r   r   r   r   r    r&   r"   r#   r$   r%   r'   r(   r)   Ú	read_textr!   r   )
r+   r   r7   rG   r5   r,   Ú@py_assert3r.   rK   r-   s
             r
   Ú test_task_file_created_correctlyz5TestTask182GlmPrompt.test_task_file_created_correctly   s.  € ð (ˆØ4ˆ	ÜÐ@ÓAÀwÀiÈsÀOÑSˆð	,à×$Ñ$Ô&Ø×%Ñ%Ô'ä! +¨w¸	ÓBˆFð "×(Ñ(ð Ñ(Ó*ð Ñ*ô ïé ð AÀÐ@PÐQ÷ô çv÷ò ïé ð "÷ ñ çIð "÷ ò çIð )÷ ð çIð +÷ ÷ ò ïé ÷õ ô Ð0°Ð0@ÀÐBÔCð *×3Ñ3¸WÐ3ÓEˆLØ 9Ñ,÷ ïé ó< 9÷ ò ÷ v÷ò ïé ð  ÷ ñ ÷ Ið  ÷ ó ÷ v÷ò ïé ð $-÷ ñ ÷ Ið $-÷ ÷ ïé ðØ%˜; l°<°.ÀðC÷÷ ö ïé ÷ó ô ÐEÀiÀ[ÐPRÐSÔTð ×"Ñ" 7Õ+øˆD×"Ñ" 7Õ+ús   —HH1 È1Ic                 ó´  — d}d}	 t        d||«      }g }d}||v }|}|rd}||v }	|	}|snt        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  }|j                  |«       |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  }|j                  |«       t        j                  |d«      i z  }t        j                  d«      dz   d|iz  }t        t        j                  |«      «      ‚dx}x}x}x}x}}	t        d«       d}||v }|s¯t        j                  d|fd||f«      t        j                  |«      dt	        j
                  «       v st        j                  |«      rt        j                  |«      nddœz  }t        j                  d«      dz   d|iz  }
t        t        j                  |
«      «      ‚dx}}t        d«       d}||v }|s¯t        j                  d|fd||f«      t        j                  |«      dt	        j
                  «       v st        j                  |«      rt        j                  |«      nddœz  }t        j                  d«      dz   d|iz  }
t        t        j                  |
«      «      ‚dx}}t        d«       ||v }|sà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                  |«      rt        j                  |«      ndd"œz  }t        j                  d#|› d$«      d%z   d&|iz  }t        t        j                  |«      «      ‚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íŒ€ìž¥r1   )z%(py3)s in %(py5)sr5   )r>   r@   z%(py7)sÚpy7)z%(py10)s in %(py12)s)Úpy10Úpy12z%(py14)sÚpy14r   uU   FAIL: í”„ë¡¬í”„íŠ¸ì— íŒ€ìž¥ ì—­í•  ì§€ì‹œ('ë¼(Ra), ê°œë°œ8íŒ€ìž¥')ê°€ ì—†ìŠµë‹ˆë‹¤.z
>assert %(py17)sÚpy17Nu%   âœ“ PASS: íŒ€ìž¥ ì—­í•  ì§€ì‹œ í¬í•¨u   ì¤‘ìš” ê·œì¹™r;   r<   u=   FAIL: í”„ë¡¬í”„íŠ¸ì— 'ì¤‘ìš” ê·œì¹™' ì„¹ì…˜ì´ ì—†ìŠµë‹ˆë‹¤.r?   r@   u'   âœ“ PASS: 'ì¤‘ìš” ê·œì¹™' ì„¹ì…˜ í¬í•¨u   ì›Œí¬í”Œë¡œìš°u?   FAIL: í”„ë¡¬í”„íŠ¸ì— 'ì›Œí¬í”Œë¡œìš°' ì„¹ì…˜ì´ ì—†ìŠµë‹ˆë‹¤.u)   âœ“ PASS: 'ì›Œí¬í”Œë¡œìš°' ì„¹ì…˜ í¬í•¨r3   r   r   u!   FAIL: í”„ë¡¬í”„íŠ¸ì— ìž‘ì—… ID 'u   'ê°€ ì—†ìŠµë‹ˆë‹¤.r   r   u   âœ“ PASS: ìž‘ì—… ID 'u   ' í¬í•¨)r   r    r!   r%   r"   r#   r$   ÚappendÚ_format_boolopr&   r'   r(   r)   r   )r+   r   r7   r5   r,   rB   Ú@py_assert4rA   Ú@py_assert9Ú@py_assert11rD   Ú@py_format8Ú@py_format13Ú@py_format15Ú@py_format16Ú@py_format18rC   r-   r.   s                      r
   Útest_prompt_structurez*TestTask182GlmPrompt.test_prompt_structureÀ   sÑ  € ð 'ˆØ-ˆ	ð	,Ü! +¨w¸	ÓBˆFñ9ð 9 Ð&ô ¨?ð ¨?¸fÐ+D÷ ò ïé ó9 ÷ ñ çIð ÷ ñ çv÷ò ïé ð !'÷ ñ çIð !'÷ ÷ ò çvðäöïé ó¨?¸f÷ ñ çIð ,;÷ ñ çv÷ò ïé ð ?E÷ ñ çIð ?E÷ ÷ ò çvðäôïé ÷ö ïé ð h÷÷ ö ïé ÷÷ õ ô Ð9Ô:ð #ð ? fÐ,÷ ïé ó? f÷ ñ çIð #÷ ñ çv÷ò ïé ð '-÷ ñ çIð '-÷ ÷ ïé ð P÷÷ ö ïé ÷õ ô Ð;Ô<ð %ð Ð$¨Ð.÷ ïé óÐ$¨÷ ñ çIð %÷ ñ çv÷ò ïé ð )/÷ ñ çIð )/÷ ÷ ïé ð R÷÷ ö ïé ÷õ ô Ð=Ô>ð ˜fÐ$÷ ïé ó7˜f÷ ò çv÷ò ïé ð ÷ ñ çIð ÷ ó çv÷ò ïé ð %÷ ñ çIð %÷ ÷ ïé ð 4°G°9Ð<NÐO÷÷ ö ïé ÷ó ô Ð)¨'¨°(Ð;Ô<ð ×"Ñ" 7Õ+øˆD×"Ñ" 7Õ+ús   †P,Q ÑQN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ústaticmethodr   Ústrr   r/   r8   rE   rO   r`   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/   r8   rE   rO   r`   r'   rf   Ú	Exception)ÚtesterÚtestsÚpassedÚfailedÚ	test_nameÚ	test_funcÚes          r
   Úrun_all_testsrr   ë   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__ri   )rd   Úbuiltinsr"   Ú_pytest.assertion.rewriteÚ	assertionÚrewriter    ÚsysÚosÚtempfileÚshutilÚpathlibr   ÚpathÚinsertÚprompts.team_promptsr   r   rr   ra   ÚsuccessÚexitr   r	   r
   ú<module>r‚      sr   ðñ÷0 „ ƒ
Û 	Û Û Ý ð ‡‡Ð(Ô )å -÷C,ñ C,òL.ðb ˆzÒÙ‹o€GØ€C‡HH‘'‰Q˜qÕ!ð r	   