
    i	                         d Z ddlZddlmc mZ ddlmc m	Z
 ddlZej                  j                  dd       d Zedk(  r e        yy)z;Tests for Story 2.05 (Track B): build_envelope XML Assembly    Nz/mnt/e/genesis-systemc            	         ddl m} m}  |d d d d      } | |      }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}}t        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
                  |
      dz  }dd|iz  }t        t        j                  |            d x}	x}}
|j                  }	d} |	|      }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
                  |      t        j
                  |      dz  }dd|iz  }t        t        j                  |            d x}	x}x}x}}|j                  }	d} |	|      }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
                  |      t        j
                  |      dz  }dd|iz  }t        t        j                  |            d x}	x}x}x}}|j                  }	d} |	|      }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
                  |      t        j
                  |      dz  }dd|iz  }t        t        j                  |            d x}	x}x}x}}|j                  }	d} |	|      }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
                  |      t        j
                  |      dz  }dd|iz  }t        t        j                  |            d x}	x}x}x}} |dd d d      } | |      }t        j                  |      }|j                  }	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
                  |      t        j
                  |      t        j
                  |      t        j
                  |      d z  }d!d"|iz  }t        t        j                  |            d x}	x}x}x}x}} |d#d$d%d&      } | |      }t        j                  |      }|j                  }	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
                  |      t        j
                  |      t        j
                  |      t        j
                  |      d z  }d!d"|iz  }t        t        j                  |            d x}	x}x}x}x}}|j                  }	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
                  |      t        j
                  |      t        j
                  |      t        j
                  |      d z  }d!d"|iz  }t        t        j                  |            d x}	x}x}x}x}}|j                  }	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
                  |      t        j
                  |      t        j
                  |      t        j
                  |      d z  }d!d"|iz  }t        t        j                  |            d x}	x}x}x}x}} |d d d d'      } | |      }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 d d d)      } | |      }t        j                  |      }t!        |      }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
                  |      d.z  }t        j$                  d/t#        |             d0z   d1|iz  }t        t        j                  |            d x}x}
} |d2d d d3      } | |      }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}}t'        d4       y )5Nr   )build_envelopeMemoryContextg      )@zCold start. No prior state.)in)z%(py1)s in %(py3)sxml_str)py1py3zassert %(py5)spy5zNo KG context available.z"No prior scars for this task type.ZERO_AMNESIA_STATE)==)z+%(py2)s
{%(py2)s = %(py0)s.tag
} == %(py5)sroot)py0py2r
   zassert %(py7)spy7WORKING_CONTEXT)is not)zN%(py6)s
{%(py6)s = %(py2)s
{%(py2)s = %(py0)s.find
}(%(py4)s)
} is not %(py9)s)r   r   py4py6py9zassert %(py11)spy11TOPOLOGICAL_BLAST_RADIUSLEARNED_CONSTRAINTSHYDRATION_LATENCY_MSzx < y & z > wg      @)ze%(py8)s
{%(py8)s = %(py6)s
{%(py6)s = %(py2)s
{%(py2)s = %(py0)s.find
}(%(py4)s)
}.text
} == %(py11)s)r   r   r   r   py8r   zassert %(py13)spy13z
state datazkg topologyzlearned constraintsg@@g$(@z12.3</HYDRATION_LATENCY_MS>g           )z0%(py3)s
{%(py3)s = %(py0)s(%(py1)s)
} == %(py6)slenchildren)r   r   r	   r   zExpected 4 children, got z
>assert %(py8)sr    g      ?u)   ALL TESTS PASSED — Story 2.05 (Track B))!core.memory.zero_amnesia_enveloper   r   
@pytest_ar_call_reprcompare	_saferepr@py_builtinslocals_should_repr_global_nameAssertionError_format_explanationET
fromstringtagfindtextlistr   _format_assertmsgprint)r   r   ctxr   @py_assert0@py_assert2@py_format4@py_format6r   @py_assert1@py_assert4@py_assert3@py_format8@py_assert5@py_assert8@py_assert7@py_format10@py_format12@py_assert10@py_assert9@py_format14r   @py_format7@py_format9s                           6/mnt/e/genesis-system/tests/track_b/test_story_2_05.pytest_build_enveloperE      s
	   O dD$
/CS!G(3(G3333(G333(333333G333G3333333%0%0000%000%0000000000000000/:/7::::/7:::/::::::7:::7::::::: ==!D88+++8+++++8+++++++4+++4+++8+++++++++++993&39&'3t3't3333't333333433343339333&333'333t333333399</<9/0<<0<<<<0<<<<<<4<<<4<<<9<<</<<<0<<<<<<<<<<997*79*+747+47777+4777777477747779777*777+77747777777998+89+,8D8,D8888,D888888488848889888+888,888D8888888 tS
9CS!G==!D99?&?9&'?',,??,????,??????4???4???9???&???'???,??????????? m5JD
QCS!G==!D99<&<9&'<',,<<,<<<<,<<<<<<4<<<4<<<9<<<&<<<'<<<,<<<<<<<<<<<99F/F9/0F055FF5FFFF5FFFFFF4FFF4FFF9FFF/FFF0FFF5FFFFFFFFFFF99I*I9*+I+00I4II04IIIII04IIIIIII4III4III9III*III+III0III4IIIIIIIII dD*
5CS!G(3(G3333(G333(333333G333G3333333 dD#
.CS!G==!DDzHx=JAJ=AJJJ=AJJJJJJ3JJJ3JJJJJJxJJJxJJJ=JJJAJJJ!:3x=/JJJJJJJJ D$
,CS!G(3(G3333(G333(333333G333G3333333	
56    __main__)__doc__builtinsr$   _pytest.assertion.rewrite	assertionrewriter!   xml.etree.ElementTreeetreeElementTreer)   syspathinsertrE   __name__ rF   rD   <module>rU      sD    A    " " 
 * +17h z rF   