Spaces:
Sleeping
Sleeping
File size: 2,169 Bytes
a345062 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 |
import torch
import numpy as np
import pytest
from types import SimpleNamespace
from cognitive_mapping_probe.resonance_seismograph import run_silent_cogitation_seismic
from cognitive_mapping_probe.orchestrator_seismograph import run_seismic_analysis
def test_run_silent_cogitation_seismic_output(mock_llm):
"""
Testet die Kernfunktion `run_silent_cogitation_seismic`.
ASSERT: Gibt eine Liste von Floats zurück, deren Länge der Anzahl der Schritte entspricht.
"""
num_steps = 10
state_deltas = run_silent_cogitation_seismic(
llm=mock_llm,
prompt_type="control_long_prose",
num_steps=num_steps,
temperature=0.7
)
assert isinstance(state_deltas, list)
assert len(state_deltas) == num_steps
assert all(isinstance(delta, float) for delta in state_deltas)
def test_seismic_analysis_orchestrator(mocker, mock_llm):
"""
Testet den `run_seismic_analysis` Orchestrator.
Wir mocken die darunterliegende `run_silent_cogitation_seismic`, um das Verhalten
des Orchestrators isoliert zu prüfen.
ASSERT: Berechnet korrekte Statistiken und gibt die erwartete Datenstruktur zurück.
"""
mock_deltas = [1.0, 2.0, 3.0, 4.0, 5.0]
mocker.patch('cognitive_mapping_probe.orchestrator_seismograph.run_silent_cogitation_seismic', return_value=mock_deltas)
# Mocke den Gradio Progress-Callback
mock_progress = mocker.MagicMock()
results = run_seismic_analysis(
model_id="mock_model",
prompt_type="test_prompt",
seed=42,
num_steps=5,
progress_callback=mock_progress
)
# ASSERT: Die Ergebnisse haben die korrekte Struktur und den korrekten Inhalt
assert "verdict" in results
assert "stats" in results
assert "state_deltas" in results
stats = results["stats"]
assert stats["mean_delta"] == pytest.approx(np.mean(mock_deltas))
assert stats["std_delta"] == pytest.approx(np.std(mock_deltas))
assert stats["max_delta"] == pytest.approx(max(mock_deltas))
assert results["state_deltas"] == mock_deltas
# ASSERT: Der Progress-Callback wurde aufgerufen
assert mock_progress.call_count > 0
|