Update: 将子项目从 submodule 转为完整内容
- 移除 GovAI, nomifun-tauri, 算力盒子 的 submodule 引用 - 添加所有子项目的完整源代码 - 保留原始 .git 为 .git.bak 备份
This commit is contained in:
@@ -0,0 +1,51 @@
|
||||
use nomi_config::logging::{ResolvedLogging, create_file_layer};
|
||||
use tracing::info;
|
||||
use tracing_subscriber::layer::SubscriberExt;
|
||||
use tracing_subscriber::util::SubscriberInitExt;
|
||||
|
||||
#[test]
|
||||
fn create_file_layer_writes_json_to_file() {
|
||||
let tmp = tempfile::tempdir().unwrap();
|
||||
let config = ResolvedLogging {
|
||||
enabled: true,
|
||||
level: "info".to_string(),
|
||||
dir: tmp.path().to_path_buf(),
|
||||
};
|
||||
|
||||
let (layer, _guard) = create_file_layer(&config).unwrap();
|
||||
|
||||
tracing_subscriber::registry().with(layer).init();
|
||||
|
||||
info!(target: "nomi_test", key = "value", "test message");
|
||||
|
||||
drop(_guard);
|
||||
|
||||
let entries: Vec<_> = std::fs::read_dir(tmp.path())
|
||||
.unwrap()
|
||||
.filter_map(|e| e.ok())
|
||||
.filter(|e| e.path().extension().is_some_and(|ext| ext == "log"))
|
||||
.collect();
|
||||
assert!(!entries.is_empty(), "expected at least one .log file");
|
||||
|
||||
let content = std::fs::read_to_string(entries[0].path()).unwrap();
|
||||
assert!(
|
||||
content.contains("test message"),
|
||||
"log should contain message"
|
||||
);
|
||||
assert!(content.contains("nomi_test"), "log should contain target");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn create_file_layer_creates_directory() {
|
||||
let tmp = tempfile::tempdir().unwrap();
|
||||
let nested = tmp.path().join("sub").join("dir");
|
||||
let config = ResolvedLogging {
|
||||
enabled: true,
|
||||
level: "info".to_string(),
|
||||
dir: nested.clone(),
|
||||
};
|
||||
|
||||
let result = create_file_layer::<tracing_subscriber::Registry>(&config);
|
||||
assert!(result.is_ok());
|
||||
assert!(nested.exists());
|
||||
}
|
||||
Reference in New Issue
Block a user