blob: 574fd4094c414be34217f577f1877f9743d85cca (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
#[macro_use]
extern crate libnewsboat;
extern crate tempfile;
use self::tempfile::TempDir;
use libnewsboat::logger::{self, get_instance, Level};
use std::fs::File;
use std::io::{BufRead, BufReader, Result};
use std::path;
fn log_contains_n_lines(logfile: &path::Path, n: usize) -> Result<()> {
let file = File::open(logfile)?;
let reader = BufReader::new(file);
assert_eq!(reader.lines().count(), n);
Ok(())
}
#[test]
fn t_log_macro_writes_messages_to_the_log() {
let tmp = TempDir::new().unwrap();
let logfile = {
let mut logfile = tmp.path().to_owned();
logfile.push("example.log");
logfile
};
get_instance().set_logfile(logfile.to_str().unwrap());
get_instance().set_loglevel(Level::Debug);
log!(Level::Debug, "Greetings");
log!(Level::UserError, "Please set some settings");
log!(Level::Error, "Answer invalid: {}", 41);
log_contains_n_lines(&logfile, 3).unwrap();
}
|