Skip to content

Commit ade57d9

Browse files
committed
rt::io::net::tcp: Fix eof_twice tests on Win32
cc #8811
1 parent 8aadcd4 commit ade57d9

File tree

1 file changed

+20
-6
lines changed

1 file changed

+20
-6
lines changed

src/libstd/rt/io/net/tcp.rs

+20-6
Original file line numberDiff line numberDiff line change
@@ -306,7 +306,6 @@ mod test {
306306
}
307307

308308
#[test]
309-
#[ignore(cfg(windows))] // FIXME #8811
310309
fn read_eof_twice_ip4() {
311310
do run_in_mt_newsched_task {
312311
let addr = next_test_ip4();
@@ -321,8 +320,16 @@ mod test {
321320
let mut buf = [0];
322321
let nread = stream.read(buf);
323322
assert!(nread.is_none());
324-
let nread = stream.read(buf);
325-
assert!(nread.is_none());
323+
do read_error::cond.trap(|e| {
324+
if cfg!(windows) {
325+
assert_eq!(e.kind, NotConnected);
326+
} else {
327+
fail2!();
328+
}
329+
}).inside {
330+
let nread = stream.read(buf);
331+
assert!(nread.is_none());
332+
}
326333
}
327334

328335
do spawntask {
@@ -334,7 +341,6 @@ mod test {
334341
}
335342

336343
#[test]
337-
#[ignore(cfg(windows))] // FIXME #8811
338344
fn read_eof_twice_ip6() {
339345
do run_in_mt_newsched_task {
340346
let addr = next_test_ip6();
@@ -349,8 +355,16 @@ mod test {
349355
let mut buf = [0];
350356
let nread = stream.read(buf);
351357
assert!(nread.is_none());
352-
let nread = stream.read(buf);
353-
assert!(nread.is_none());
358+
do read_error::cond.trap(|e| {
359+
if cfg!(windows) {
360+
assert_eq!(e.kind, NotConnected);
361+
} else {
362+
fail2!();
363+
}
364+
}).inside {
365+
let nread = stream.read(buf);
366+
assert!(nread.is_none());
367+
}
354368
}
355369

356370
do spawntask {

0 commit comments

Comments
 (0)