| mod support; |
| use support::*; |
| |
| use tracing::{subscriber::with_default, Level}; |
| use tracing_futures::Instrument; |
| |
| #[test] |
| fn enter_exit_is_reasonable() { |
| let (subscriber, handle) = subscriber::mock() |
| .enter(span::mock().named("foo")) |
| .exit(span::mock().named("foo")) |
| .enter(span::mock().named("foo")) |
| .exit(span::mock().named("foo")) |
| .drop_span(span::mock().named("foo")) |
| .done() |
| .run_with_handle(); |
| with_default(subscriber, || { |
| let future = PollN::new_ok(2).instrument(tracing::span!(Level::TRACE, "foo")); |
| block_on_future(future).unwrap(); |
| }); |
| handle.assert_finished(); |
| } |
| |
| #[test] |
| fn error_ends_span() { |
| let (subscriber, handle) = subscriber::mock() |
| .enter(span::mock().named("foo")) |
| .exit(span::mock().named("foo")) |
| .enter(span::mock().named("foo")) |
| .exit(span::mock().named("foo")) |
| .drop_span(span::mock().named("foo")) |
| .done() |
| .run_with_handle(); |
| with_default(subscriber, || { |
| let future = PollN::new_err(2).instrument(tracing::span!(Level::TRACE, "foo")); |
| block_on_future(future).unwrap_err(); |
| }); |
| handle.assert_finished(); |
| } |