rust/tests/ui/open_options.rs
2023-08-22 17:18:11 +02:00

23 lines
1.0 KiB
Rust

use std::fs::OpenOptions;
#[allow(unused_must_use)]
#[warn(clippy::nonsensical_open_options)]
fn main() {
OpenOptions::new().read(true).truncate(true).open("foo.txt");
//~^ ERROR: file opened with `truncate` and `read`
//~| NOTE: `-D clippy::nonsensical-open-options` implied by `-D warnings`
OpenOptions::new().append(true).truncate(true).open("foo.txt");
//~^ ERROR: file opened with `append` and `truncate`
OpenOptions::new().read(true).read(false).open("foo.txt");
//~^ ERROR: the method `read` is called more than once
OpenOptions::new().create(true).create(false).open("foo.txt");
//~^ ERROR: the method `create` is called more than once
OpenOptions::new().write(true).write(false).open("foo.txt");
//~^ ERROR: the method `write` is called more than once
OpenOptions::new().append(true).append(false).open("foo.txt");
//~^ ERROR: the method `append` is called more than once
OpenOptions::new().truncate(true).truncate(false).open("foo.txt");
//~^ ERROR: the method `truncate` is called more than once
}