summaryrefslogtreecommitdiff
path: root/test/test_stat.rs
diff options
context:
space:
mode:
Diffstat (limited to 'test/test_stat.rs')
-rw-r--r--test/test_stat.rs19
1 files changed, 17 insertions, 2 deletions
diff --git a/test/test_stat.rs b/test/test_stat.rs
index 4b22c296..765d4fa1 100644
--- a/test/test_stat.rs
+++ b/test/test_stat.rs
@@ -4,8 +4,8 @@ use std::os::unix::prelude::AsRawFd;
use libc::{S_IFMT, S_IFLNK};
-use nix::sys::stat::{stat, fstat, lstat};
-
+use nix::fcntl;
+use nix::sys::stat::{self, stat, fstat, lstat};
use nix::sys::stat::FileStat;
use nix::Result;
use tempdir::TempDir;
@@ -75,6 +75,21 @@ fn test_stat_and_fstat() {
}
#[test]
+fn test_fstatat() {
+ let tempdir = TempDir::new("nix-test_stat_and_fstat").unwrap();
+ let filename = tempdir.path().join("foo.txt");
+ File::create(&filename).unwrap();
+ let dirfd = fcntl::open(tempdir.path(),
+ fcntl::OFlag::empty(),
+ stat::Mode::empty());
+
+ let result = stat::fstatat(dirfd.unwrap(),
+ &filename,
+ fcntl::AtFlags::empty());
+ assert_stat_results(result);
+}
+
+#[test]
fn test_stat_fstat_lstat() {
let tempdir = TempDir::new("nix-test_stat_fstat_lstat").unwrap();
let filename = tempdir.path().join("bar.txt");