Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 759588f

Browse files
committed
integration test for is_file() and is_directory()
1 parent 8206a78 commit 759588f

File tree

1 file changed

+28
-11
lines changed

1 file changed

+28
-11
lines changed

‎uefi-test-runner/src/proto/media/known_disk.rs

Lines changed: 28 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,13 @@ fn test_existing_dir(directory: &mut Directory) {
1515
info!("Testing existing directory");
1616

1717
let input_dir_path = cstr16!("test_dir");
18-
let mutdir = directory
18+
let dir = directory
1919
.open(input_dir_path, FileMode::Read, FileAttribute::empty())
20-
.expect("failed to open directory")
20+
.expect("failed to open directory");
21+
22+
assert!(dir.is_directory().unwrap());
23+
24+
let mut dir = dir
2125
.into_directory()
2226
.expect("not a directory");
2327

@@ -129,13 +133,17 @@ fn test_create_file(directory: &mut Directory) {
129133
info!("Testing file creation");
130134

131135
// Create a new file.
132-
let mutfile = directory
136+
let file = directory
133137
.open(
134138
cstr16!("new_test_file.txt"),
135139
FileMode::CreateReadWrite,
136140
FileAttribute::empty(),
137141
)
138-
.expect("failed to create file")
142+
.expect("failed to create file");
143+
144+
assert!(file.is_regular_file().unwrap());
145+
146+
let mut file = file
139147
.into_regular_file()
140148
.expect("not a regular file");
141149
file.write(b"test output data").unwrap();
@@ -261,10 +269,19 @@ pub fn test_known_disk(bt: &BootServices) {
261269
let mut sfs = bt
262270
.open_protocol_exclusive::<SimpleFileSystem>(handle)
263271
.expect("Failed to get simple file system");
264-
let mut directory = sfs.open_volume().unwrap();
272+
let mut root_directory = sfs.open_volume().unwrap();
273+
274+
// test is_directory() and is_regular_file() from the File trait which is the
275+
// base for into_type() used later in the test.
276+
{
277+
let root_directory: &dyn File = &root_directory;
278+
assert_eq!(Ok(true), root_directory.is_directory());
279+
assert_eq!(Ok(false), root_directory.is_regular_file());
280+
}
281+
265282

266283
let mut fs_info_buf = vec![0; 128];
267-
let fs_info = directory
284+
let fs_info = root_directory
268285
.get_info::<FileSystemInfo>(&mut fs_info_buf)
269286
.unwrap();
270287

@@ -281,13 +298,13 @@ pub fn test_known_disk(bt: &BootServices) {
281298
assert_eq!(fs_info.block_size(), 512);
282299

283300
// Check that `get_boxed_info` returns the same info.
284-
let boxed_fs_info = directory.get_boxed_info::<FileSystemInfo>().unwrap();
301+
let boxed_fs_info = root_directory.get_boxed_info::<FileSystemInfo>().unwrap();
285302
assert_eq!(*fs_info, *boxed_fs_info);
286303

287-
test_existing_dir(&mut directory);
288-
test_delete_warning(&mut directory);
289-
test_existing_file(&mut directory);
290-
test_create_file(&mut directory);
304+
test_existing_dir(&mut root_directory);
305+
test_delete_warning(&mut root_directory);
306+
test_existing_file(&mut root_directory);
307+
test_create_file(&mut root_directory);
291308
}
292309

293310
test_raw_disk_io(handle, bt);

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /