turn_server_proto/
lib.rs

1// Copyright (C) 2025 Matthew Waters <matthew@centricular.com>
2//
3// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
4// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
5// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
6// option. This file may not be copied, modified, or distributed
7// except according to those terms.
8
9mod server;
10
11pub use server::{TurnServer, TurnServerPollRet};
12pub use stun_proto as stun;
13pub use turn_types as types;
14
15#[cfg(test)]
16mod tests {
17    use tracing::subscriber::DefaultGuard;
18    use tracing_subscriber::layer::SubscriberExt;
19    use tracing_subscriber::Layer;
20
21    pub fn test_init_log() -> DefaultGuard {
22        turn_types::debug_init();
23        let level_filter = std::env::var("TURN_LOG")
24            .or(std::env::var("RUST_LOG"))
25            .ok()
26            .and_then(|var| var.parse::<tracing_subscriber::filter::Targets>().ok())
27            .unwrap_or(
28                tracing_subscriber::filter::Targets::new().with_default(tracing::Level::TRACE),
29            );
30        let registry = tracing_subscriber::registry().with(
31            tracing_subscriber::fmt::layer()
32                .with_file(true)
33                .with_line_number(true)
34                .with_level(true)
35                .with_target(false)
36                .with_test_writer()
37                .with_filter(level_filter),
38        );
39        tracing::subscriber::set_default(registry)
40    }
41}