fn logger_roll_if_needed()

in proxy_agent_shared/src/logger/rolling_logger.rs [194:224]


    fn logger_roll_if_needed() {
        let mut temp_test_path = env::temp_dir();
        temp_test_path.push("logger_roll_if_needed");

        // clean up and ignore the clean up errors
        _ = fs::remove_dir_all(&temp_test_path);

        let logger =
            RollingLogger::create_new(temp_test_path.clone(), String::from("proxyagent"), 100, 6);

        // test without deleting old files
        for _ in [0; 10] {
            logger
                .write(log::Level::Info, String::from("This is a test message"))
                .unwrap();
        }
        let file_count = logger.get_log_files().unwrap();
        assert_eq!(5, file_count.len(), "log file count mismatch");

        // test with deleting old files
        for _ in [0; 10] {
            logger
                .write(log::Level::Trace, String::from("This is a test message"))
                .unwrap();
        }
        let file_count = logger.get_log_files().unwrap();
        assert_eq!(6, file_count.len(), "log file count mismatch");

        // clean up and ignore the clean up errors
        _ = fs::remove_dir_all(&temp_test_path);
    }