use cfgmatic_source::prelude::*;
#[test]
fn test_memory_source_creation() {
let source = MemorySource::new();
assert!(source.metadata().name == "memory");
}
#[test]
fn test_memory_source_load_returns_content() {
let value = serde_json::json!({
"name": "test",
"value": 42
});
let source = MemorySource::from_json(value);
let raw = source
.load_raw()
.expect("Failed to load from memory source");
let content = raw.as_str().expect("Failed to get string");
assert!(!content.is_empty());
assert_eq!(source.detect_format(), Some(Format::Json));
}
#[test]
fn test_memory_source_metadata() {
let source = MemorySource::builder().name("test-source").build();
let metadata = source.metadata();
assert_eq!(source.kind(), SourceKind::Memory);
assert_eq!(metadata.name, "test-source");
}