mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-26 00:34:06 +00:00
epoll test_socketpair_read: explicitly check real and Miri behavior
This commit is contained in:
parent
8821108bf1
commit
e614d7d51b
@ -478,11 +478,17 @@ fn test_socketpair_read() {
|
||||
assert_eq!(res, 3);
|
||||
assert_eq!(buf, "abc".as_bytes());
|
||||
|
||||
// Notification will be provided.
|
||||
// But in real system, no notification will be provided here.
|
||||
// Notification will be provided in Miri.
|
||||
// But in real systems, no notification will be provided here, since Linux prefers to avoid
|
||||
// wakeups that are likely to lead to only small amounts of data being read/written.
|
||||
// We make the test work in both cases, thus documenting the difference in behavior.
|
||||
let expected_event = u32::try_from(libc::EPOLLOUT).unwrap();
|
||||
let expected_value = fds[1] as u64;
|
||||
check_epoll_wait::<8>(epfd, &[(expected_event, expected_value)]);
|
||||
if cfg!(miri) {
|
||||
check_epoll_wait::<8>(epfd, &[(expected_event, expected_value)]);
|
||||
} else {
|
||||
check_epoll_wait::<8>(epfd, &[]);
|
||||
}
|
||||
|
||||
// Read until the buffer is empty.
|
||||
let mut buf: [u8; 2] = [0; 2];
|
||||
|
Loading…
Reference in New Issue
Block a user