fn test_log_rotate_nobuf()

in src/flowgger/output/file_output.rs [400:435]


    fn test_log_rotate_nobuf() -> Result<()> {
        let test_object = WriterTest::new("test_log_rotate_nobuf")?;
        let cfg = Config::from_string(&format!(
            "[output]\nfile_path = \"{}\"\nfile_rotation_size = 15\n",
            test_object.get_file_base()
        ))
        .unwrap();
        let mut writer = test_object.setup_writer(
            cfg,
            15,
            FILE_DEFAULT_ROTATION_MAXFILES,
            FILE_DEFAULT_BUFFER_SIZE,
            FILE_DEFAULT_ROTATION_TIME,
        );

        // We should have a RotatingFile instance unbuffered, check a 2 files are created after >15 bytes written
        let file_rotated = &format!("{}.0", test_object.get_file_base());
        let _ = fs::remove_file(file_rotated);
        let _ = writer.write_all(test_object.test_patterns[0].as_bytes());
        let _ = writer.write_all(test_object.test_patterns[1].as_bytes());
        let _ = writer.write_all(test_object.test_patterns[2].as_bytes());
        assert_eq!(
            fs::read_to_string(test_object.get_file_base()).unwrap(),
            test_object.test_patterns[2]
        );
        assert_eq!(
            fs::read_to_string(file_rotated).unwrap(),
            format!(
                "{}{}",
                test_object.test_patterns[0], test_object.test_patterns[1]
            )
        );

        let _ = fs::remove_file(file_rotated);
        Ok(())
    }