Skip to content

Commit 3d6ab4d

Browse files
committed
Add failing test.
The kernel expects a packed (no holes) epoll_event struct but Rust doesn't support packed types yet. Depends on rust-lang/rust#1704.
1 parent 470dc9e commit 3d6ab4d

File tree

1 file changed

+5
-2
lines changed

1 file changed

+5
-2
lines changed

epoll.rs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -102,10 +102,13 @@ fn test_epoll_wait() {
102102

103103
let magic = 42u64;
104104
assert epoll_ctl(epfd, EPOLL_CTL_ADD, 1, {events:EPOLLOUT, data:magic}) == 0;
105+
assert epoll_ctl(epfd, EPOLL_CTL_ADD, 2, {events:EPOLLOUT, data:magic}) == 0;
106+
107+
let events: [mutable epoll_event] = [
108+
mutable {events:0i32, data:0u64}, {events:0i32, data:0u64}];
105109

106-
let events: [mutable epoll_event] = [mutable {events:0i32, data:0u64}];
107110
let n = epoll_wait(epfd, events, 50);
108-
assert n == 1;
111+
assert n == 2;
109112
assert events[0].data == magic;
110113
assert events[0].events & EPOLLOUT == EPOLLOUT;
111114
}

0 commit comments

Comments
 (0)