Add file policy reset helpers

This commit is contained in:
Nanaloveyuki
2026-05-10 13:20:08 +08:00
parent c637631a30
commit b1ffd9021b
8 changed files with 100 additions and 0 deletions
+37
View File
@@ -355,9 +355,46 @@ test "configured logger file setters update file sink policy state" {
inspect(state.append, content="false")
inspect(state.auto_flush, content="false")
inspect(state.rotation is None, content="true")
inspect(logger.file_reset_policy(), content="true")
inspect(logger.file_append_mode(), content="true")
inspect(logger.file_auto_flush(), content="true")
inspect(logger.file_rotation_config() is None, content="true")
ignore(logger.close())
}
test "configured logger reset policy restores configured file defaults" {
let logger = build_logger(
LoggerConfig::new(
sink=SinkConfig::new(
kind=SinkKind::File,
path="config-reset-policy.log",
append=false,
auto_flush=false,
rotation=Some(file_rotation(36, max_backups=2)),
),
),
)
inspect(logger.file_set_append_mode(true), content="true")
inspect(logger.file_set_auto_flush(true), content="true")
inspect(logger.file_clear_rotation(), content="true")
inspect(logger.file_reset_policy(), content="true")
inspect(logger.file_append_mode(), content="false")
inspect(logger.file_auto_flush(), content="false")
match logger.file_rotation_config() {
Some(rotation) => {
inspect(rotation.max_bytes, content="36")
inspect(rotation.max_backups, content="2")
}
None => inspect(false, content="true")
}
ignore(logger.close())
}
test "configured non-file logger cannot reset file policy" {
let logger = build_logger(LoggerConfig::new(sink=SinkConfig::new(kind=SinkKind::Console)))
inspect(logger.file_reset_policy(), content="false")
}
test "configured logger can reopen built file sink" {
let logger = build_logger(
LoggerConfig::new(