blob: 540ee2d5a6405fcb3f51f2004385c567f8714016 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
use tokio::fs;
use testdir::testdir;
use crate::fs_utils;
#[tokio::test]
async fn test_fs_utils_create_dir_allow_existing() {
let dir = testdir!();
let foo = dir.join("foo");
assert!(fs_utils::create_dir_allow_existing(&foo).await.is_ok());
assert!(fs::try_exists(&foo).await.unwrap());
assert!(fs_utils::create_dir_allow_existing(&foo).await.is_ok());
}
#[tokio::test]
async fn test_fs_utils_create_dir_allow_existing_file() {
let dir = testdir!();
let foo = dir.join("foo");
assert!(fs::write(&foo, "hello").await.is_ok());
assert!(fs_utils::create_dir_allow_existing(&foo).await.is_err());
}
#[tokio::test]
async fn test_fs_utils_remove_file_allow_not_found() {
let dir = testdir!();
let foo = dir.join("foo");
assert!(fs_utils::remove_file_allow_not_found(&foo).await.is_ok());
assert!(fs::write(&foo, "hello").await.is_ok());
assert!(fs_utils::remove_file_allow_not_found(&foo).await.is_ok());
assert!(!fs::try_exists(&foo).await.unwrap());
}
#[tokio::test]
async fn test_fs_utils_symlink_update_existing() {
let dir = testdir!();
let foo = dir.join("foo");
let bar = dir.join("bar");
let fum = dir.join("fum");
assert!(fs::write(&foo, "hello").await.is_ok());
assert!(fs_utils::symlink_update_existing(&foo, &bar).await.is_ok());
assert!(fs_utils::symlink_update_existing(&foo, &bar).await.is_ok());
assert_eq!(fs::read_link(&bar).await.unwrap(), foo);
assert!(fs_utils::symlink_update_existing(&fum, &bar).await.is_ok());
assert_eq!(fs::read_link(&bar).await.unwrap(), fum);
}
|