1#[doc(hidden)]
2#[macro_export]
3macro_rules! is_debug_level_enabled {
4 () => {{
5 cfg_if::cfg_if! {
6 if #[cfg(feature = "tracing")] {
7 tracing::enabled!(tracing::Level::DEBUG)
8 } else if #[cfg(feature = "logging")] {
9 log::log_enabled!(log::Level::Debug)
10 } else {
11 false
12 }
13 }
14 }};
15}
16
17#[doc(hidden)]
18#[macro_export]
19macro_rules! is_trace_level_enabled {
20 () => {{
21 cfg_if::cfg_if! {
22 if #[cfg(feature = "tracing")] {
23 tracing::enabled!(tracing::Level::TRACE)
24 } else if #[cfg(feature = "logging")] {
25 log::log_enabled!(log::Level::Trace)
26 } else {
27 false
28 }
29 }
30 }};
31}
32
33#[cfg(test)]
34pub fn enable_logging() {
35 cfg_if::cfg_if! {
36 if #[cfg(feature = "tracing")] {
37 let _ = tracing_subscriber::fmt()
38 .json()
39 .with_max_level(tracing::Level::TRACE)
40 .try_init();
41 } else if #[cfg(feature = "logging")] {
42 let _ = env_logger::builder()
43 .filter_level(log::LevelFilter::max())
44 .is_test(true)
45 .try_init();
46 }
47 }
48}
49
50#[cfg(test)]
51pub fn info<T: AsRef<str>>(_text: T) {
52 cfg_if::cfg_if! {
53 if #[cfg(feature = "tracing")] {
54 tracing::info!("{}", _text.as_ref());
55 } else if #[cfg(feature = "logging")] {
56 log::info!("{}", _text.as_ref());
57 }
58 }
59}