MCPcopy Create free account
hub / github.com/bytecodealliance/system-interface / test_get_set_fd_flags

Function test_get_set_fd_flags

tests/fd_flags.rs:8–41  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

6
7#[test]
8fn test_get_set_fd_flags() {
9 let tmpdir = tmpdir();
10 let mut file = check!(tmpdir.create("file"));
11
12 let flags = check!(file.get_fd_flags());
13 assert!(!flags.contains(FdFlags::SYNC));
14 assert!(!flags.contains(FdFlags::APPEND));
15 assert!(!flags.contains(FdFlags::NONBLOCK));
16
17 let set_fd_flags = check!(file.new_set_fd_flags(FdFlags::APPEND));
18 check!(file.set_fd_flags(set_fd_flags));
19
20 let flags = check!(file.get_fd_flags());
21 assert!(!flags.contains(FdFlags::SYNC));
22 assert!(flags.contains(FdFlags::APPEND));
23 assert!(!flags.contains(FdFlags::NONBLOCK));
24
25 // `NONBLOCK` is not supported on Windows yet.
26 #[cfg(windows)]
27 {
28 let set_fd_flags = check!(file.new_set_fd_flags(FdFlags::NONBLOCK));
29 check!(file.set_fd_flags(set_fd_flags));
30 }
31 #[cfg(not(windows))]
32 {
33 let set_fd_flags = check!(file.new_set_fd_flags(FdFlags::NONBLOCK));
34 check!(file.set_fd_flags(set_fd_flags));
35
36 let flags = check!(file.get_fd_flags());
37 assert!(!flags.contains(FdFlags::SYNC));
38 assert!(!flags.contains(FdFlags::APPEND));
39 assert!(flags.contains(FdFlags::NONBLOCK));
40 }
41}
42
43#[test]
44fn test_append() {

Callers

nothing calls this directly

Calls 1

tmpdirFunction · 0.85

Tested by

no test coverage detected