mirror of
https://github.com/fafhrd91/actix-net
synced 2025-02-17 15:53:31 +01:00
stop tests threads
This commit is contained in:
parent
6659b192d3
commit
7ff923a58f
@ -25,6 +25,7 @@ fn port(scheme: Option<&str>) -> Option<u16> {
|
|||||||
"ws" => Some(80),
|
"ws" => Some(80),
|
||||||
"wss" => Some(443),
|
"wss" => Some(443),
|
||||||
"amqp" => Some(5672),
|
"amqp" => Some(5672),
|
||||||
|
"amqps" => Some(5671),
|
||||||
"mqtt" => Some(1883),
|
"mqtt" => Some(1883),
|
||||||
"mqtts" => Some(8883),
|
"mqtts" => Some(8883),
|
||||||
_ => None,
|
_ => None,
|
||||||
|
@ -22,9 +22,11 @@ fn unused_addr() -> net::SocketAddr {
|
|||||||
#[test]
|
#[test]
|
||||||
fn test_bind() {
|
fn test_bind() {
|
||||||
let addr = unused_addr();
|
let addr = unused_addr();
|
||||||
|
let (tx, rx) = mpsc::channel();
|
||||||
|
|
||||||
thread::spawn(move || {
|
let h = thread::spawn(move || {
|
||||||
Server::build()
|
let sys = actix_rt::System::new("test");
|
||||||
|
let srv = Server::build()
|
||||||
.bind("test", addr, move || {
|
.bind("test", addr, move || {
|
||||||
fn_cfg_factory(move |cfg: &ServerConfig| {
|
fn_cfg_factory(move |cfg: &ServerConfig| {
|
||||||
assert_eq!(cfg.local_addr(), addr);
|
assert_eq!(cfg.local_addr(), addr);
|
||||||
@ -32,11 +34,16 @@ fn test_bind() {
|
|||||||
})
|
})
|
||||||
})
|
})
|
||||||
.unwrap()
|
.unwrap()
|
||||||
.run()
|
.start();
|
||||||
|
let _ = tx.send((srv, actix_rt::System::current()));
|
||||||
|
let _ = sys.run();
|
||||||
});
|
});
|
||||||
|
let (_, sys) = rx.recv().unwrap();
|
||||||
|
|
||||||
thread::sleep(time::Duration::from_millis(500));
|
thread::sleep(time::Duration::from_millis(500));
|
||||||
assert!(net::TcpStream::connect(addr).is_ok());
|
assert!(net::TcpStream::connect(addr).is_ok());
|
||||||
|
let _ = sys.stop();
|
||||||
|
let _ = h.join();
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
@ -44,7 +51,7 @@ fn test_bind_no_config() {
|
|||||||
let addr = unused_addr();
|
let addr = unused_addr();
|
||||||
let (tx, rx) = mpsc::channel();
|
let (tx, rx) = mpsc::channel();
|
||||||
|
|
||||||
thread::spawn(move || {
|
let h = thread::spawn(move || {
|
||||||
let sys = actix_rt::System::new("test");
|
let sys = actix_rt::System::new("test");
|
||||||
let srv = Server::build()
|
let srv = Server::build()
|
||||||
.bind("test", addr, move || fn_service(|_| Ok::<_, ()>(())))
|
.bind("test", addr, move || fn_service(|_| Ok::<_, ()>(())))
|
||||||
@ -56,15 +63,18 @@ fn test_bind_no_config() {
|
|||||||
let (_, sys) = rx.recv().unwrap();
|
let (_, sys) = rx.recv().unwrap();
|
||||||
assert!(net::TcpStream::connect(addr).is_ok());
|
assert!(net::TcpStream::connect(addr).is_ok());
|
||||||
let _ = sys.stop();
|
let _ = sys.stop();
|
||||||
|
let _ = h.join();
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_listen() {
|
fn test_listen() {
|
||||||
let addr = unused_addr();
|
let addr = unused_addr();
|
||||||
|
let (tx, rx) = mpsc::channel();
|
||||||
|
|
||||||
thread::spawn(move || {
|
let h = thread::spawn(move || {
|
||||||
|
let sys = actix_rt::System::new("test");
|
||||||
let lst = net::TcpListener::bind(addr).unwrap();
|
let lst = net::TcpListener::bind(addr).unwrap();
|
||||||
Server::build()
|
let srv = Server::build()
|
||||||
.listen("test", lst, move || {
|
.listen("test", lst, move || {
|
||||||
fn_cfg_factory(move |cfg: &ServerConfig| {
|
fn_cfg_factory(move |cfg: &ServerConfig| {
|
||||||
assert_eq!(cfg.local_addr(), addr);
|
assert_eq!(cfg.local_addr(), addr);
|
||||||
@ -72,11 +82,16 @@ fn test_listen() {
|
|||||||
})
|
})
|
||||||
})
|
})
|
||||||
.unwrap()
|
.unwrap()
|
||||||
.run()
|
.start();
|
||||||
|
let _ = tx.send((srv, actix_rt::System::current()));
|
||||||
|
let _ = sys.run();
|
||||||
});
|
});
|
||||||
|
let (_, sys) = rx.recv().unwrap();
|
||||||
|
|
||||||
thread::sleep(time::Duration::from_millis(500));
|
thread::sleep(time::Duration::from_millis(500));
|
||||||
assert!(net::TcpStream::connect(addr).is_ok());
|
assert!(net::TcpStream::connect(addr).is_ok());
|
||||||
|
let _ = sys.stop();
|
||||||
|
let _ = h.join();
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
@ -85,9 +100,8 @@ fn test_start() {
|
|||||||
let addr = unused_addr();
|
let addr = unused_addr();
|
||||||
let (tx, rx) = mpsc::channel();
|
let (tx, rx) = mpsc::channel();
|
||||||
|
|
||||||
thread::spawn(move || {
|
let h = thread::spawn(move || {
|
||||||
let sys = actix_rt::System::new("test");
|
let sys = actix_rt::System::new("test");
|
||||||
|
|
||||||
let srv = Server::build()
|
let srv = Server::build()
|
||||||
.backlog(100)
|
.backlog(100)
|
||||||
.bind("test", addr, move || {
|
.bind("test", addr, move || {
|
||||||
@ -144,4 +158,5 @@ fn test_start() {
|
|||||||
|
|
||||||
thread::sleep(time::Duration::from_millis(100));
|
thread::sleep(time::Duration::from_millis(100));
|
||||||
let _ = sys.stop();
|
let _ = sys.stop();
|
||||||
|
let _ = h.join();
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user