24 lines
789 B
Rust
24 lines
789 B
Rust
mod common;
|
|
|
|
pub use common::*; // `pub` only to silence unused code warnings
|
|
use spamassassin_milter::*;
|
|
|
|
#[test]
|
|
fn reject_spam() {
|
|
let mut builder = Config::builder();
|
|
builder.reject_spam(true);
|
|
builder.spamc_args(vec![format!("--port={}", SPAMD_PORT)]);
|
|
let config = builder.build();
|
|
|
|
let server = spawn_mock_spamd_server(SPAMD_PORT, |spam| {
|
|
Err(spam.replacen("\r\n\r\n", "\r\nX-Spam-Flag: YES\r\n\r\n", 1))
|
|
});
|
|
let miltertest = spawn_miltertest_runner(file!());
|
|
|
|
run("inet:3333@localhost", config).expect("milter execution failed");
|
|
|
|
let exit_code = miltertest.join().expect("panic in miltertest runner");
|
|
assert!(exit_code.success(), "miltertest returned error exit code");
|
|
|
|
server.join().expect("panic in mock spamd server");
|
|
}
|