Files
projectmycelium/tests/tests_archive/test_parsing.rs
2025-09-01 21:37:01 -04:00

48 lines
2.0 KiB
Rust

use std::fs;
use serde_json;
// Import the structs from the main crate
use threefold_marketplace::services::user_persistence::UserPersistentData;
fn main() {
println!("🔍 Testing JSON parsing for user1...");
let user1_path = "./user_data/user1_at_example_com.json";
match fs::read_to_string(user1_path) {
Ok(json_content) => {
println!("✓ Successfully read user1 JSON file");
match serde_json::from_str::<UserPersistentData>(&json_content) {
Ok(user_data) => {
println!("✅ SUCCESS: JSON parsing completed without errors!");
println!(" - User email: {}", user_data.user_email);
println!(" - Number of nodes: {}", user_data.nodes.len());
println!(" - Number of SLAs: {}", user_data.slas.len());
println!(" - Number of services: {}", user_data.services.len());
println!(" - Number of apps: {}", user_data.apps.len());
if !user_data.nodes.is_empty() {
let first_node = &user_data.nodes[0];
println!(" - First node: {} ({})", first_node.name, first_node.status);
println!(" - Earnings today: {}", first_node.earnings_today_usd);
}
if !user_data.slas.is_empty() {
let first_sla = &user_data.slas[0];
println!(" - First SLA: {} ({})", first_sla.name, first_sla.status);
}
println!("\n🎉 All parsing successful! The JSON parsing fixes are working correctly.");
},
Err(e) => {
println!("❌ JSON parsing failed: {}", e);
println!("📄 Error details: {:#?}", e);
}
}
},
Err(e) => {
println!("❌ Failed to read user1 JSON file: {}", e);
}
}
}