feat(testing): stabilize simulation suite and fix gemini caching

This commit is contained in:
2026-02-25 01:44:46 -05:00
parent fb80ce8c5a
commit c952d2f67b
23 changed files with 784 additions and 596 deletions

View File

@@ -5,38 +5,34 @@ from simulation.sim_base import BaseSimulation, run_sim
class AISettingsSimulation(BaseSimulation):
def run(self):
print("\n--- Running AI Settings Simulation ---")
print("\n--- Running AI Settings Simulation (Gemini Only) ---")
# 1. Verify initial model (Gemini by default)
# 1. Verify initial model
provider = self.client.get_value("current_provider")
model = self.client.get_value("current_model")
print(f"[Sim] Initial Provider: {provider}, Model: {model}")
assert provider == "gemini", f"Expected gemini, got {provider}"
# 2. Switch to Anthropic
print("[Sim] Switching to Anthropic...")
self.client.set_value("current_provider", "anthropic")
# Need to set a valid model for Anthropic too
anthropic_model = "claude-3-5-sonnet-20241022"
self.client.set_value("current_model", anthropic_model)
time.sleep(1)
# 2. Switch to another Gemini model
other_gemini = "gemini-1.5-flash"
print(f"[Sim] Switching to {other_gemini}...")
self.client.set_value("current_model", other_gemini)
time.sleep(2)
# Verify
new_provider = self.client.get_value("current_provider")
new_model = self.client.get_value("current_model")
print(f"[Sim] Updated Provider: {new_provider}, Model: {new_model}")
assert new_provider == "anthropic", f"Expected 'anthropic', got {new_provider}"
assert new_model == anthropic_model, f"Expected {anthropic_model}, got {new_model}"
print(f"[Sim] Updated Model: {new_model}")
assert new_model == other_gemini, f"Expected {other_gemini}, got {new_model}"
# 3. Switch back to Gemini
print("[Sim] Switching back to Gemini...")
self.client.set_value("current_provider", "gemini")
gemini_model = "gemini-2.5-flash-lite"
self.client.set_value("current_model", gemini_model)
time.sleep(1)
# 3. Switch back to flash-lite
target_model = "gemini-2.5-flash-lite"
print(f"[Sim] Switching back to {target_model}...")
self.client.set_value("current_model", target_model)
time.sleep(2)
final_provider = self.client.get_value("current_provider")
print(f"[Sim] Final Provider: {final_provider}")
assert final_provider == "gemini", f"Expected 'gemini', got {final_provider}"
final_model = self.client.get_value("current_model")
print(f"[Sim] Final Model: {final_model}")
assert final_model == target_model, f"Expected {target_model}, got {final_model}"
if __name__ == "__main__":
run_sim(AISettingsSimulation)