Research-Stack/5-Applications/scripts/test_comprehensive_learning.py

116 lines
4.9 KiB
Python

#!/usr/bin/env python3
"""Test script for comprehensive physics and engineering learning mechanism"""
import sys
import os
sys.path.insert(0, '/home/allaun/Documents/Research Stack/scripts')
from enhanced_integrated_swarm import ComprehensiveLearning
def test_comprehensive_learning():
"""Test comprehensive physics and engineering learning mechanism"""
print("[TEST] Testing comprehensive physics and engineering learning mechanism...")
# Create comprehensive learning instance
physics_learning = ComprehensiveLearning()
# Test 1: Load guide
print("\n[TEST 1] Loading comprehensive physics and engineering guide...")
guide_content = physics_learning.load_guide()
if guide_content:
print(f" ✓ Guide loaded successfully ({len(guide_content)} characters)")
else:
print(" ✗ Failed to load guide")
return False
# Test 2: Extract concepts
print("\n[TEST 2] Extracting physics and engineering concepts...")
concepts = physics_learning.extract_concepts(guide_content)
print(f" ✓ Extracted {len(concepts)} concepts")
print(f" Concepts: {concepts[:5]}...")
# Test 3: Auto-learn concepts
print("\n[TEST 3] Auto-learning physics and engineering concepts...")
physics_learning.auto_learn()
print(f" ✓ Learned {len(physics_learning.learned_concepts)} concepts")
# Test 4: Get recommendations
print("\n[TEST 4] Getting physics and engineering recommendations...")
# EM spectrum context
em_recommendation = physics_learning.get_recommendation({'domain': 'em_spectrum'})
print(f" EM spectrum recommendation: {em_recommendation}")
# Materials context
materials_recommendation = physics_learning.get_recommendation({'domain': 'materials'})
print(f" Materials recommendation: {materials_recommendation}")
# Computation context
computation_recommendation = physics_learning.get_recommendation({'domain': 'computation'})
print(f" Computation recommendation: {computation_recommendation}")
# Quantum context
quantum_recommendation = physics_learning.get_recommendation({'domain': 'quantum'})
print(f" Quantum recommendation: {quantum_recommendation}")
# Thermodynamics context
thermo_recommendation = physics_learning.get_recommendation({'domain': 'thermodynamics'})
print(f" Thermodynamics recommendation: {thermo_recommendation}")
# Networking context
networking_recommendation = physics_learning.get_recommendation({'domain': 'networking'})
print(f" Networking recommendation: {networking_recommendation}")
# OmniToken context
omnitoken_recommendation = physics_learning.get_recommendation({'domain': 'omnitoken'})
print(f" OmniToken recommendation: {omnitoken_recommendation}")
# ISO standards context
iso_recommendation = physics_learning.get_recommendation({'domain': 'iso'})
print(f" ISO standards recommendation: {iso_recommendation}")
# W3C standards context
w3c_recommendation = physics_learning.get_recommendation({'domain': 'w3c'})
print(f" W3C standards recommendation: {w3c_recommendation}")
# Internet protocols context
protocols_recommendation = physics_learning.get_recommendation({'domain': 'protocols'})
print(f" Internet protocols recommendation: {protocols_recommendation}")
# Comprehensive technical standards context
technical_recommendation = physics_learning.get_recommendation({'domain': 'technical'})
print(f" Comprehensive technical standards recommendation: {technical_recommendation}")
# Digital platforms context
digital_recommendation = physics_learning.get_recommendation({'domain': 'digital'})
print(f" Digital platforms recommendation: {digital_recommendation}")
# Test 5: Get learning summary
print("\n[TEST 5] Getting learning summary...")
summary = physics_learning.get_learning_summary()
print(f" ✓ Summary:")
print(f" Total concepts: {summary['total_concepts']}")
print(f" Average score: {summary['average_score']:.2f}")
print(f" Learning history count: {summary['learning_history_count']}")
# Test 6: Learn specific concept
print("\n[TEST 6] Learning specific concept...")
physics_learning.learn_concept("custom_physics_concept", score=0.9)
print(f" ✓ Learned custom concept")
# Test 7: Verify learning history
print("\n[TEST 7] Verifying learning history...")
if len(physics_learning.learning_history) > 0:
print(f" ✓ Learning history has {len(physics_learning.learning_history)} entries")
print(f" Latest entry: {physics_learning.learning_history[-1]}")
else:
print(" ✗ Learning history is empty")
return False
print("\n[SUCCESS] All comprehensive learning tests passed!")
return True
if __name__ == "__main__":
success = test_comprehensive_learning()
sys.exit(0 if success else 1)