| use tracing::subscriber::with_default; | |
| use tracing_attributes::instrument; | |
| use tracing_mock::*; | |
| #[instrument] | |
| fn default_target() {} | |
| #[instrument(target = "my_target")] | |
| fn custom_target() {} | |
| mod my_mod { | |
| use tracing_attributes::instrument; | |
| pub const MODULE_PATH: &str = module_path!(); | |
| #[instrument] | |
| pub fn default_target() {} | |
| #[instrument(target = "my_other_target")] | |
| pub fn custom_target() {} | |
| } | |
| #[test] | |
| fn default_targets() { | |
| let (subscriber, handle) = subscriber::mock() | |
| .new_span( | |
| span::mock() | |
| .named("default_target") | |
| .with_target(module_path!()), | |
| ) | |
| .enter( | |
| span::mock() | |
| .named("default_target") | |
| .with_target(module_path!()), | |
| ) | |
| .exit( | |
| span::mock() | |
| .named("default_target") | |
| .with_target(module_path!()), | |
| ) | |
| .new_span( | |
| span::mock() | |
| .named("default_target") | |
| .with_target(my_mod::MODULE_PATH), | |
| ) | |
| .enter( | |
| span::mock() | |
| .named("default_target") | |
| .with_target(my_mod::MODULE_PATH), | |
| ) | |
| .exit( | |
| span::mock() | |
| .named("default_target") | |
| .with_target(my_mod::MODULE_PATH), | |
| ) | |
| .done() | |
| .run_with_handle(); | |
| with_default(subscriber, || { | |
| default_target(); | |
| my_mod::default_target(); | |
| }); | |
| handle.assert_finished(); | |
| } | |
| #[test] | |
| fn custom_targets() { | |
| let (subscriber, handle) = subscriber::mock() | |
| .new_span(span::mock().named("custom_target").with_target("my_target")) | |
| .enter(span::mock().named("custom_target").with_target("my_target")) | |
| .exit(span::mock().named("custom_target").with_target("my_target")) | |
| .new_span( | |
| span::mock() | |
| .named("custom_target") | |
| .with_target("my_other_target"), | |
| ) | |
| .enter( | |
| span::mock() | |
| .named("custom_target") | |
| .with_target("my_other_target"), | |
| ) | |
| .exit( | |
| span::mock() | |
| .named("custom_target") | |
| .with_target("my_other_target"), | |
| ) | |
| .done() | |
| .run_with_handle(); | |
| with_default(subscriber, || { | |
| custom_target(); | |
| my_mod::custom_target(); | |
| }); | |
| handle.assert_finished(); | |
| } |