Annotation For tests/mail.rs
Logged in as anonymous

Origin for each line in tests/mail.rs from check-in b9af445709:

e45c7e529b 2026-07-31        arcade: use smtp2tg::mail::MailServer;
e45c7e529b 2026-07-31        arcade: 
e45c7e529b 2026-07-31        arcade: use stacked_errors::{
e45c7e529b 2026-07-31        arcade: 	Result,
e45c7e529b 2026-07-31        arcade: 	StackableErr,
e45c7e529b 2026-07-31        arcade: };
e45c7e529b 2026-07-31        arcade: 
e45c7e529b 2026-07-31        arcade: use tgbot::types::ChatPeerId;
e45c7e529b 2026-07-31        arcade: /// Builds a `MailServer` purely from an in-memory TOML source, no
e45c7e529b 2026-07-31        arcade: /// network access is performed while constructing it.
e45c7e529b 2026-07-31        arcade: fn build_server () -> Result<MailServer> {
e45c7e529b 2026-07-31        arcade: 	let settings = config::Config::builder()
e45c7e529b 2026-07-31        arcade: 		.add_source(config::File::from_str(r#"
e45c7e529b 2026-07-31        arcade: 			api_key = "test-api-key"
e45c7e529b 2026-07-31        arcade: 			api_gateway = "https://api.telegram.org"
e45c7e529b 2026-07-31        arcade: 			default = 0
e45c7e529b 2026-07-31        arcade: 			unknown = "relay"
e45c7e529b 2026-07-31        arcade: 			fields = ["date", "from", "subject"]
e45c7e529b 2026-07-31        arcade: 			domains = ["example.com"]
e45c7e529b 2026-07-31        arcade: 
e45c7e529b 2026-07-31        arcade: 			[recipients]
e45c7e529b 2026-07-31        arcade: 			"someone@example.com" = 1
e45c7e529b 2026-07-31        arcade: 			"root" = -1
e45c7e529b 2026-07-31        arcade: 		"#, config::FileFormat::Toml))
e45c7e529b 2026-07-31        arcade: 		.build()
e45c7e529b 2026-07-31        arcade: 		.stack()?;
e45c7e529b 2026-07-31        arcade: 	MailServer::new(settings)
e45c7e529b 2026-07-31        arcade: }
e45c7e529b 2026-07-31        arcade: 
e45c7e529b 2026-07-31        arcade: #[test]
b9af445709 2026-07-31        arcade: fn get_id_returns_configured_recipient () -> Result<()> {
b9af445709 2026-07-31        arcade: 	let server = build_server()?;
b9af445709 2026-07-31        arcade: 	let cases = [
b9af445709 2026-07-31        arcade: 		("someone@example.com", 1),
b9af445709 2026-07-31        arcade: 		("someone", 0),
b9af445709 2026-07-31        arcade: 		("root", -1),
b9af445709 2026-07-31        arcade: 		("unknown@example.com", 0),
b9af445709 2026-07-31        arcade: 	];
b9af445709 2026-07-31        arcade: 	for (email, id) in cases {
b9af445709 2026-07-31        arcade: 		assert_eq!(*server.get_id(email)?, ChatPeerId::from(id), "email [{email}] expected to return id [{id}]");
b9af445709 2026-07-31        arcade: 	}
e45c7e529b 2026-07-31        arcade: 	Ok(())
e45c7e529b 2026-07-31        arcade: }