#![deny(warnings)]
use tracers_macros::{init_provider, probe, tracer};
#[tracer]
trait TestProbes {
fn probe0();
fn probe1(foo: &str);
fn probe2(foo: &str, bar: usize);
}
#[test]
fn probe_firing() {
probe!(TestProbes::probe0());
probe!(TestProbes::probe1("foo bar baz"));
probe!(TestProbes::probe2("foo bar baz", 5));
}
#[test]
fn expected_impl() {
if let Ok(expected_impl) = std::env::var("TRACERS_EXPECTED_PROVIDER") {
match init_provider!(TestProbes) {
Err(e) => panic!("Provider initialization error: {}", e),
Ok(details) => assert_eq!(expected_impl, details),
}
}
}