summaryrefslogtreecommitdiff
path: root/tests/grpc_server_test.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/grpc_server_test.rs')
-rw-r--r--tests/grpc_server_test.rs61
1 files changed, 0 insertions, 61 deletions
diff --git a/tests/grpc_server_test.rs b/tests/grpc_server_test.rs
deleted file mode 100644
index ec471799..00000000
--- a/tests/grpc_server_test.rs
+++ /dev/null
@@ -1,61 +0,0 @@
-#[cfg(test)]
-mod tests {
- use authzd::create_server;
- use std::net::SocketAddr;
- use tokio::net::TcpListener;
- use tonic::transport::Channel;
-
- async fn available_port() -> SocketAddr {
- let listener = TcpListener::bind("127.0.0.1:0")
- .await
- .expect("Failed to bind to random port");
- let addr = listener.local_addr().expect("Failed to get local address");
- drop(listener);
- addr
- }
-
- async fn start_server() -> (SocketAddr, tokio::task::JoinHandle<()>) {
- let addr = available_port().await;
- let server = create_server().expect("Failed to create server");
-
- let handle = tokio::spawn(async move {
- server.serve(addr).await.expect("Failed to start server");
- });
-
- tokio::time::sleep(tokio::time::Duration::from_millis(100)).await;
-
- (addr, handle)
- }
-
- async fn build_channel(addr: SocketAddr) -> Channel {
- Channel::from_shared(format!("http://{}", addr))
- .expect("Failed to create channel")
- .connect()
- .await
- .expect("Failed to connect to server")
- }
-
- async fn build_client(
- addr: SocketAddr,
- ) -> tonic_health::pb::health_client::HealthClient<Channel> {
- tonic_health::pb::health_client::HealthClient::new(build_channel(addr).await)
- }
-
- #[tokio::test]
- async fn test_health_check_service() {
- let (addr, server) = start_server().await;
- let mut client = build_client(addr).await;
- let request = tonic::Request::new(tonic_health::pb::HealthCheckRequest {
- service: String::new(),
- });
-
- let response = client.check(request).await;
- assert!(response.is_ok());
- assert_eq!(
- response.unwrap().into_inner().status(),
- tonic_health::pb::health_check_response::ServingStatus::Serving
- );
-
- server.abort();
- }
-}