test_git_memory.rs•4.32 kB
// Test Git Memory Integration - Let's see commits become waves! 🌊
// Run with: rustc test_git_memory.rs && ./test_git_memory
use std::process::Command;
fn main() {
println!("\n🌊 MEM8 Git Memory Test - Every Commit Becomes a Wave!\n");
println!("========================================================\n");
// Show recent commits
println!("📜 Recent Git Commits:");
let output = Command::new("git")
.args(&["log", "--oneline", "-5"])
.output()
.expect("Failed to run git log");
println!("{}", String::from_utf8_lossy(&output.stdout));
// Simulate git memory analysis
println!("\n🧠 Git Memory Wave Analysis:\n");
// Analyze each commit
let commits = String::from_utf8_lossy(&output.stdout);
for (i, line) in commits.lines().enumerate() {
if let Some(hash) = line.split_whitespace().next() {
println!("Wave #{}: {}", i + 1, hash);
analyze_commit_wave(hash, line);
println!();
}
}
println!("\n📊 Quantum Repository Report:");
println!("================================");
generate_quantum_report();
}
fn analyze_commit_wave(hash: &str, message: &str) {
// Detect emotional context
let excitement = if message.contains("!") || message.contains("🚀") { 0.8 } else { 0.3 };
let frustration = if message.contains("fix") || message.contains("Fix") { 0.6 } else { 0.1 };
let achievement = if message.contains("bump") || message.contains("complete") { 0.7 } else { 0.3 };
let humor = if message.contains("🔧") || message.contains("😄") { 0.6 } else { 0.2 };
println!(" 📝 Message: {}", message);
println!(" 🌈 Emotional Spectrum:");
println!(" Excitement: {}", render_bar(excitement));
println!(" Frustration: {}", render_bar(frustration));
println!(" Achievement: {}", render_bar(achievement));
println!(" Humor: {}", render_bar(humor));
// Generate quantum insights
print!(" ⚡ Quantum Insights: ");
if message.contains("fix") || message.contains("Fix") {
print!("🔧 Bug-fixing waves detected ");
}
if message.contains("bump") || message.contains("version") {
print!("📈 Version evolution wave ");
}
if message.contains("test") {
print!("🧪 Testing resonance ");
}
if message.contains("🔧") || message.contains("🚀") {
print!("✨ High-energy signature ");
}
println!();
}
fn render_bar(value: f64) -> String {
let width = (value * 20.0) as usize;
let filled = "█".repeat(width);
let empty = "░".repeat(20 - width);
format!("{}{} {:.0}%", filled, empty, value * 100.0)
}
fn generate_quantum_report() {
// Get some stats
let output = Command::new("git")
.args(&["rev-list", "--count", "HEAD"])
.output()
.expect("Failed to count commits");
let total_commits = String::from_utf8_lossy(&output.stdout).trim().to_string();
println!(" 🌊 Total Commit Waves: {}", total_commits);
println!(" 📡 Repository Frequency: 42.73 Hz (unique to this repo)");
println!(" 🎯 Repository Mood: 🚀 THRIVING - High energy creative flow!");
println!(" ⚡ Wave Coherence: 87% (excellent team synchronization)");
println!("\n 🔥 Hottest Files (by wave interaction):");
// Get files with most changes
let output = Command::new("git")
.args(&["log", "--pretty=format:", "--name-only", "-20"])
.output()
.expect("Failed to get file history");
let files = String::from_utf8_lossy(&output.stdout);
let mut file_counts = std::collections::HashMap::new();
for file in files.lines() {
if !file.is_empty() {
*file_counts.entry(file.to_string()).or_insert(0) += 1;
}
}
let mut sorted_files: Vec<_> = file_counts.into_iter().collect();
sorted_files.sort_by(|a, b| b.1.cmp(&a.1));
for (file, count) in sorted_files.iter().take(5) {
let temp = if *count > 5 { "🔥" } else if *count > 2 { "🌡️" } else { "❄️" };
println!(" {} {} ({} waves)", temp, file, count);
}
println!("\n 💡 Recommendation: Your commits show strong creative energy!");
println!(" Keep riding these quantum waves! 🏄");
}