
    $/i9                         d Z ddlZddlmc mZ ddlZej                  j                  dd       d Z
d Zd Zd Zd Zd	 Zd
 Zd Zedk(  r e       Z ej(                  erdnd       yy)zk
Genesis Integration Test
=========================
Verifies all components connect and function properly.
    NzE:/genesis-system/corec                     t        d       	 ddlm} m} t        d       	 ddlm}m} t        d	       	 ddlm	}m
}m} t        d       	 ddlm}m}	 t        d       	 ddlm}
m} t        d       	 ddlm} t        d       y# t        $ r}t        d|        Y d}~yd}~ww xY w# t        $ r}t        d
|        Y d}~yd}~ww xY w# t        $ r}t        d|        Y d}~yd}~ww xY w# t        $ r}t        d|        Y d}~yd}~ww xY w# t        $ r}t        d|        Y d}~yd}~ww xY w# t        $ r}t        d|        Y d}~yd}~ww xY w)z)Test that all components can be imported.z
=== Testing Imports ===r   )
Blackboard	EntryTypeu     ✓ Blackboardu     ✗ Blackboard: NF)MemoryCortex
MemoryTieru     ✓ Memory Cortexu     ✗ Memory Cortex: )GenesisHeartbeatEnhancedSurpriseSystemAxiomGeneratoru     ✓ Heartbeatu     ✗ Heartbeat: )
ToolRouter
ToolIntentu     ✓ Tool Routeru     ✗ Tool Router: CircadianSchedulerTaskTypeu     ✓ Circadian Scheduleru     ✗ Circadian Scheduler: GenesisKernelu     ✓ Genesis Kernelu     ✗ Genesis Kernel: T)print
blackboardr   r   	Exceptiongenesis_memory_cortexr   r   genesis_heartbeatr   r	   r
   tool_routerr   r   circadian_schedulerr   r   genesis_kernelr   )r   r   er   r   r   r	   r
   r   r   r   r   r   s                //mnt/e/genesis-system/tests/test_integration.pytest_importsr      sS   	
%&4 !
B#$
^^ 
6!"
D)*
0$%
 O  "1#&'  %aS)*  !!%&  #A3'(  +A3/0  &qc*+s   B B) C C1 D 3D9 	B&B!!B&)	C
2CC
	C.C))C.1	D:DD	D6D11D69	EEEc                  0   t        d       ddlm}   |        }g d}|D ]u  \  }}|j                  |      }|j                  j
                  |k(  rdnd}t        d| d|d	d
  d|j                  j
                   dt        |j                         d	       w y)z Test tool routing functionality.z
=== Testing Tool Router ===r   )r   ))z search for files containing TODOobserve)zcreate a new Python scriptmodify)zsend an email to the teamcommunicate)z what time is my meeting tomorrowr   )zdelete the old backup filesr   u   ✓u   ✗  z 'N(   u	   ...' →  (z tools)T)r   r   r   routedetected_intentvaluelenrelevant_tools)r   routertest_queriesqueryexpected_intentresultstatuss          r   test_tool_routerr/   <   s    	
)*&\FL #/ we$ 0066/Iu6("U3BZL	&2H2H2N2N1OrRUV\VkVkRlQmmtuvw
     c                  J   t        d       ddlm} m}  |        }|j	                         }t        d|j
                          |j                  |j                  |j                  fD ];  }|j                  |      \  }}t        d|j
                   d|rdnd d	|d
d         = y)zTest circadian scheduler.z$
=== Testing Circadian Scheduler ===r   r   u     ✓ Current activity: u     ✓ : YESNOz - N2   T)
r   r   r   r   get_current_activity_levelr&   	HEARTBEATCONSOLIDATIONAXIOM_GENERATIONshould_run_task)r   r   	schedulerleveltaskshouldreasons          r   test_circadianr@   T   s    	
12@"$I 002E	$U[[M
23 ##X%;%;X=V=VW R"2248tzzl"fU$$?s6#2;-PQR r0   c                     t        d       ddlm}   |        }|j                  ddd       |j	                  ddi       }t        d	|j
                  d
d|j                  j                   d       |j                  ddd       |j	                  ddi       }t        d|j
                  d
d|j                  j                   d       y)zTest surprise detection.z 
=== Testing Surprise System ===r   )r	   testzExpected result Ag?)
event_typeexpected_outcome
confidence)rC   actual_outcomecontextu     ✓ Matching outcome: z.2fr#   )test2zExpected result Bg?zCompletely unexpected result Zu     ✓ Surprising outcome: T)r   r   r	   predictr   composite_scorer<   r&   )r	   surprisescore1score2s       r   test_surpriserO   h   s    	
-.8%'H ,   *  F
 
$V%;%;C$@6<<CUCUBVVW
XY ,  
 7  F
 
&v'='=c&B"V\\EWEWDXXY
Z[r0   c                  2   t        d       ddlm} m}  |        }t        d|j                  j
                          t        d|j                          t        dt        |j                  j                                |j                  |j                  k(  S )zTest kernel initialization.z&
=== Testing Kernel Initialization ===r   )r   KernelStateu     ✓ State: u     ✓ Version:      ✓ Tools: )r   r   r   rQ   stater&   VERSIONr'   r   toolsREADY)r   rQ   kernels      r   test_kernel_initrX      sy    	
349_F	M&,,,,-
./	OFNN+
,-	M#f006678
9:<<;,,,,r0   c            	         t        d       ddlm}   |        }|j                  d      }t        d|j	                  dd              t        d|j	                  d	i       j	                  d
d              t        dt        |j	                  d	i       j	                  dg                     t        d|j	                  dd       d       |j	                  d      dk(  S )zTest query processing.z!
=== Testing Query Processing ===r   r   z4search for recent news about artificial intelligenceu     ✓ Status: r.   unknownu     ✓ Intent: routingintentrR   rU   u     ✓ Time: processing_time_msmssuccess)r   r   r   processgetr'   )r   rW   r-   s      r   test_kernel_processrb      s    	
./,_F^^RSF	N6::h	:;
<=	N6::i4889MN
OP	M#fjjB7;;GRHIJ
KL	L$8!<=R
@A::h9,,r0   c                     t        d       ddlm}   |        }|j                  d      }t        dt	        |j
                         d       t        dt	        |j                         d       t        dt	        |j                         d       |j                         }t        d	t	        |       d       t	        |      dkD  S )
z.Test context compilation for prompt injection.z$
=== Testing Context Compilation ===r   r   zsearch for filesu     ✓ Axioms: z charsrR   u     ✓ Temporal: u     ✓ Full prompt: )	r   r   r   compile_contextr'   axiomstool_guidancetemporal_contextto_system_prompt)r   rW   rG   prompts       r   test_context_compilationrj      s    	
12,_F$$%78G	N3w~~./v
67	M#g3345V
<=	S!9!9:;6
BC %%'F	F}F
34v;?r0   c                     t        d       t        d       t        d       dt        fdt        fdt        fdt        fdt
        fdt        fd	t        fg} g }| D ]   \  }}	  |       }|j                  ||f       " t        d       t        d       t        d       t        d |D              }t        |      }|D ]  \  }}|rdnd}	t        d|	 d|         t        d| d| d       ||k(  S # t        $ rB}t        d
| d|        ddl
}|j                          |j                  |df       Y d}~d}~ww xY w)zRun all tests.z<============================================================zGENESIS INTEGRATION TESTImportszTool RouterzCircadian SchedulerzSurprise SystemzKernel InitzQuery ProcessingzContext Compilationz
  ERROR in r2   r   NFz=
============================================================zTEST SUMMARYc              3   ,   K   | ]  \  }}|s	d   yw)   N ).0_ps      r   	<genexpr>zmain.<locals>.<genexpr>   s     ,tq!!,s   
u   ✓ PASSu   ✗ FAILr!   z

  Total: /z passed)r   r   r/   r@   rO   rX   rb   rj   appendr   	traceback	print_excsumr'   )
testsresultsname	test_funcpassedr   rv   totalrr   r.   s
             r   mainr      sc   	(O	
$%	(O 
L!	()	/	M*	()	01	 89E G  *i	*[FNND&>** 
/	.	(O,w,,FLE %a j6("TF#$% 
Kxqw
/0U?)  	*M$r!-.!NND%=))		*s    C22	D=;8D88D=__main__rn   )__doc__builtins@py_builtins_pytest.assertion.rewrite	assertionrewrite
@pytest_arsyspathinsertr   r/   r@   rO   rX   rb   rj   r   __name__r_   exitro   r0   r   <module>r      sy     
 + ,.b0($N--$*)X zfGCHH'Qq! r0   