Skip to content

Commit a6ca55b

Browse files
committed
modified TcpListener and UnixListener tests to use with_backlog variants where appropriate
1 parent 6f03b95 commit a6ca55b

File tree

4 files changed

+34
-10
lines changed

4 files changed

+34
-10
lines changed

library/std/src/net/tcp.rs

+1
Original file line numberDiff line numberDiff line change
@@ -730,6 +730,7 @@ impl TcpListener {
730730
/// Creates a TCP listener bound to `127.0.0.1:80` with a backlog of 1000:
731731
///
732732
/// ```no_run
733+
/// #![feature(bind_with_backlog)]
733734
/// use std::net::TcpListener;
734735
///
735736
/// let listener = TcpListener::bind_with_backlog("127.0.0.1:80", 1000).unwrap();

library/std/src/net/tcp/tests.rs

+27-5
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ fn connect_error() {
4848
#[test]
4949
fn listen_localhost() {
5050
let socket_addr = next_test_ip4();
51-
let listener = t!(TcpListener::bind(&socket_addr));
51+
let listener = t!(TcpListener::bind_with_backlog(&socket_addr, 1));
5252

5353
let _t = thread::spawn(move || {
5454
let mut stream = t!(TcpStream::connect(&("localhost", socket_addr.port())));
@@ -64,7 +64,7 @@ fn listen_localhost() {
6464
#[test]
6565
fn connect_loopback() {
6666
each_ip(&mut |addr| {
67-
let acceptor = t!(TcpListener::bind(&addr));
67+
let acceptor = t!(TcpListener::bind_with_backlog(&addr, 1));
6868

6969
let _t = thread::spawn(move || {
7070
let host = match addr {
@@ -85,7 +85,7 @@ fn connect_loopback() {
8585
#[test]
8686
fn smoke_test() {
8787
each_ip(&mut |addr| {
88-
let acceptor = t!(TcpListener::bind(&addr));
88+
let acceptor = t!(TcpListener::bind_with_backlog(&addr, 1));
8989

9090
let (tx, rx) = channel();
9191
let _t = thread::spawn(move || {
@@ -172,11 +172,33 @@ fn multiple_connect_serial() {
172172
})
173173
}
174174

175+
#[test]
176+
fn multiple_connect_serial_with_backlog() {
177+
each_ip(&mut |addr| {
178+
let max = 10;
179+
let acceptor = t!(TcpListener::bind_with_backlog(&addr, max));
180+
181+
let _t = thread::spawn(move || {
182+
for _ in 0..max {
183+
let mut stream = t!(TcpStream::connect(&addr));
184+
t!(stream.write(&[99]));
185+
}
186+
});
187+
188+
for stream in acceptor.incoming().take(max) {
189+
let mut stream = t!(stream);
190+
let mut buf = [0];
191+
t!(stream.read(&mut buf));
192+
assert_eq!(buf[0], 99);
193+
}
194+
})
195+
}
196+
175197
#[test]
176198
fn multiple_connect_interleaved_greedy_schedule() {
177199
const MAX: usize = 10;
178200
each_ip(&mut |addr| {
179-
let acceptor = t!(TcpListener::bind(&addr));
201+
let acceptor = t!(TcpListener::bind_with_backlog(&addr, MAX));
180202

181203
let _t = thread::spawn(move || {
182204
let acceptor = acceptor;
@@ -213,7 +235,7 @@ fn multiple_connect_interleaved_greedy_schedule() {
213235
fn multiple_connect_interleaved_lazy_schedule() {
214236
const MAX: usize = 10;
215237
each_ip(&mut |addr| {
216-
let acceptor = t!(TcpListener::bind(&addr));
238+
let acceptor = t!(TcpListener::bind_with_backlog(&addr, MAX));
217239

218240
let _t = thread::spawn(move || {
219241
for stream in acceptor.incoming().take(MAX) {

library/std/src/os/unix/net/listener.rs

+1
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,7 @@ impl UnixListener {
9898
/// # Examples
9999
///
100100
/// ```no_run
101+
/// #![feature(bind_with_backlog)]
101102
/// use std::os::unix::net::UnixListener;
102103
///
103104
/// let listener = match UnixListener::bind_with_backlog("/path/to/the/socket", 1000) {

library/std/src/os/unix/net/tests.rs

+5-5
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ fn basic() {
4141
let msg1 = b"hello";
4242
let msg2 = b"world!";
4343

44-
let listener = or_panic!(UnixListener::bind(&socket_path));
44+
let listener = or_panic!(UnixListener::bind_with_backlog(&socket_path, 1));
4545
let thread = thread::spawn(move || {
4646
let mut stream = or_panic!(listener.accept()).0;
4747
let mut buf = [0; 5];
@@ -111,7 +111,7 @@ fn try_clone() {
111111
let msg1 = b"hello";
112112
let msg2 = b"world";
113113

114-
let listener = or_panic!(UnixListener::bind(&socket_path));
114+
let listener = or_panic!(UnixListener::bind_with_backlog(&socket_path, 1));
115115
let thread = thread::spawn(move || {
116116
let mut stream = or_panic!(listener.accept()).0;
117117
or_panic!(stream.write_all(msg1));
@@ -135,7 +135,7 @@ fn iter() {
135135
let dir = tmpdir();
136136
let socket_path = dir.path().join("sock");
137137

138-
let listener = or_panic!(UnixListener::bind(&socket_path));
138+
let listener = or_panic!(UnixListener::bind_with_backlog(&socket_path, 2));
139139
let thread = thread::spawn(move || {
140140
for stream in listener.incoming().take(2) {
141141
let mut stream = or_panic!(stream);
@@ -423,7 +423,7 @@ fn test_abstract_stream_connect() {
423423
let msg2 = b"world";
424424

425425
let socket_addr = or_panic!(SocketAddr::from_abstract_namespace(b"namespace"));
426-
let listener = or_panic!(UnixListener::bind_addr(&socket_addr));
426+
let listener = or_panic!(UnixListener::bind_addr_with_backlog(&socket_addr, 1));
427427

428428
let thread = thread::spawn(move || {
429429
let mut stream = or_panic!(listener.accept()).0;
@@ -451,7 +451,7 @@ fn test_abstract_stream_connect() {
451451
#[test]
452452
fn test_abstract_stream_iter() {
453453
let addr = or_panic!(SocketAddr::from_abstract_namespace(b"hidden"));
454-
let listener = or_panic!(UnixListener::bind_addr(&addr));
454+
let listener = or_panic!(UnixListener::bind_addr_with_backlog(&addr, 2));
455455

456456
let thread = thread::spawn(move || {
457457
for stream in listener.incoming().take(2) {

0 commit comments

Comments
 (0)