#[derive(Clone)]
pub struct LogFileConfig {
pub max_size_in_mb: u64,
pub path: String,
pub name: String,
pub extension: String,
pub overwrite: bool,
pub truncate: bool,
pub num_files_to_keep: u64,
}
impl LogFileConfig {
pub fn new() -> LogFileConfig {
LogFileConfig {
max_size_in_mb: 1,
path: String::from("./"),
name: String::from("logfile_"),
extension: String::from(".log"),
overwrite: true,
truncate: true,
num_files_to_keep: 5,
}
}
}
#[cfg(test)]
mod test {
use super::*;
#[test]
fn default_constructor_test() {
let default = LogFileConfig::new();
assert_eq!(default.max_size_in_mb, 1);
assert_eq!(default.path, "./");
assert_eq!(default.name, "logfile_");
assert_eq!(default.extension, ".log");
assert_eq!(default.overwrite, true);
assert_eq!(default.num_files_to_keep, 5);
}
}