From ef69fe83bfa5785b3504d1e21851ade70cdfa6f0 Mon Sep 17 00:00:00 2001 From: Jeremy Soller Date: Tue, 7 May 2024 09:03:44 -0600 Subject: [PATCH] Add mock target for testing greeter --- examples/server.rs | 23 +++++++++++++++-------- justfile | 4 ++++ 2 files changed, 19 insertions(+), 8 deletions(-) diff --git a/examples/server.rs b/examples/server.rs index e25d996..3a59996 100644 --- a/examples/server.rs +++ b/examples/server.rs @@ -1,11 +1,21 @@ use greetd_ipc::{codec::SyncCodec, AuthMessageType, ErrorType, Request, Response}; -use std::io; +use std::{env, fs, io, thread}; use tokio::net::UnixListener; #[tokio::main] async fn main() { - let listener = UnixListener::bind("socket").unwrap(); - println!("listening"); + let greetd_sock = env::current_dir().unwrap().join("socket"); + if greetd_sock.exists() { + fs::remove_file(&greetd_sock).unwrap(); + } + + let listener = UnixListener::bind(&greetd_sock).unwrap(); + println!("listening at {:?}", greetd_sock); + + env::set_var("GREETD_SOCK", &greetd_sock); + thread::spawn(|| { + cosmic_greeter::greeter::main(); + }); loop { let (socket, _addr) = listener.accept().await.unwrap(); @@ -38,7 +48,7 @@ async fn main() { let response = match request { Request::CreateSession { .. } => Response::AuthMessage { auth_message_type: AuthMessageType::Secret, - auth_message: "Password:".to_string(), + auth_message: "MOCKING:".to_string(), }, Request::PostAuthMessageResponse { response } => { match response.as_ref().map(|x| x.as_str()) { @@ -50,10 +60,7 @@ async fn main() { } } Request::StartSession { .. } => Response::Success, - _ => { - println!("unhandled request"); - break; - } + Request::CancelSession => Response::Success, }; let mut bytes = Vec::with_capacity(4096); diff --git a/justfile b/justfile index ea8ac63..c7d5dfd 100644 --- a/justfile +++ b/justfile @@ -55,6 +55,10 @@ check *args: # Runs a clippy check with JSON message format check-json: (check '--message-format=json') +mock: + cargo build --release --example server + cosmic-comp target/release/examples/server + # Run with debug logs run *args: env RUST_LOG=debug RUST_BACKTRACE=full cargo run --release {{args}}