Skip to content

Commit 265f826

Browse files
committed
chore: fix unused code warning on windows
1 parent 407bd2f commit 265f826

File tree

2 files changed

+97
-93
lines changed

2 files changed

+97
-93
lines changed

src/tests/full_specified.rs

Lines changed: 95 additions & 93 deletions
Original file line numberDiff line numberDiff line change
@@ -1,111 +1,113 @@
11
//! https://github.com/webpack/enhanced-resolve/blob/main/test/fullSpecified.test.js
22
3-
use std::path::PathBuf;
3+
#[cfg(not(target_os = "windows"))] // MemoryFS's path separator is always `/` so the test will not pass in windows.
4+
mod windows {
5+
use std::path::PathBuf;
46

5-
use crate::{AliasValue, ResolveOptions, ResolverGeneric};
7+
use crate::{AliasValue, ResolveOptions, ResolverGeneric};
68

7-
use super::memory_fs::MemoryFS;
9+
use super::super::memory_fs::MemoryFS;
810

9-
fn file_system() -> MemoryFS {
10-
MemoryFS::new(&[
11-
("/a/node_modules/package1/index.js", ""),
12-
("/a/node_modules/package1/file.js", ""),
13-
("/a/node_modules/package2/package.json", r#"{"main":"a"}"#),
14-
("/a/node_modules/package2/a.js", ""),
15-
("/a/node_modules/package3/package.json", r#"{"main":"dir"}"#),
16-
("/a/node_modules/package3/dir/index.js", ""),
17-
("/a/node_modules/package4/package.json", r#"{"browser":{"./a.js":"./b"}}"#),
18-
("/a/node_modules/package4/a.js", ""),
19-
("/a/node_modules/package4/b.js", ""),
20-
("/a/abc.js", ""),
21-
("/a/dir/index.js", ""),
22-
("/a/index.js", ""),
23-
])
24-
}
11+
fn file_system() -> MemoryFS {
12+
MemoryFS::new(&[
13+
("/a/node_modules/package1/index.js", ""),
14+
("/a/node_modules/package1/file.js", ""),
15+
("/a/node_modules/package2/package.json", r#"{"main":"a"}"#),
16+
("/a/node_modules/package2/a.js", ""),
17+
("/a/node_modules/package3/package.json", r#"{"main":"dir"}"#),
18+
("/a/node_modules/package3/dir/index.js", ""),
19+
("/a/node_modules/package4/package.json", r#"{"browser":{"./a.js":"./b"}}"#),
20+
("/a/node_modules/package4/a.js", ""),
21+
("/a/node_modules/package4/b.js", ""),
22+
("/a/abc.js", ""),
23+
("/a/dir/index.js", ""),
24+
("/a/index.js", ""),
25+
])
26+
}
2527

26-
#[test]
27-
#[cfg(not(target_os = "windows"))] // MemoryFS's path separator is always `/` so the test will not pass in windows.
28-
fn test() {
29-
let file_system = file_system();
28+
#[test]
29+
fn test() {
30+
let file_system = file_system();
3031

31-
let resolver = ResolverGeneric::<MemoryFS>::new_with_file_system(
32-
file_system,
33-
ResolveOptions {
34-
alias: vec![
35-
("alias1".into(), vec![AliasValue::Path("/a/abc".into())]),
36-
("alias2".into(), vec![AliasValue::Path("/a".into())]),
37-
],
38-
alias_fields: vec![vec!["browser".into()]],
39-
fully_specified: true,
40-
..ResolveOptions::default()
41-
},
42-
);
32+
let resolver = ResolverGeneric::<MemoryFS>::new_with_file_system(
33+
file_system,
34+
ResolveOptions {
35+
alias: vec![
36+
("alias1".into(), vec![AliasValue::Path("/a/abc".into())]),
37+
("alias2".into(), vec![AliasValue::Path("/a".into())]),
38+
],
39+
alias_fields: vec![vec!["browser".into()]],
40+
fully_specified: true,
41+
..ResolveOptions::default()
42+
},
43+
);
4344

44-
let failing_resolves = [
45-
("no extensions", "./abc"),
46-
("no extensions (absolute)", "/a/abc"),
47-
("no extensions in packages", "package1/file"),
48-
("no directories", "."),
49-
("no directories 2", "./"),
50-
("no directories in packages", "package3/dir"),
51-
("no extensions in packages 2", "package3/a"),
52-
];
45+
let failing_resolves = [
46+
("no extensions", "./abc"),
47+
("no extensions (absolute)", "/a/abc"),
48+
("no extensions in packages", "package1/file"),
49+
("no directories", "."),
50+
("no directories 2", "./"),
51+
("no directories in packages", "package3/dir"),
52+
("no extensions in packages 2", "package3/a"),
53+
];
5354

54-
for (comment, request) in failing_resolves {
55-
let resolution = resolver.resolve("/a", request);
56-
assert!(resolution.is_err(), "{comment} {request}");
57-
}
55+
for (comment, request) in failing_resolves {
56+
let resolution = resolver.resolve("/a", request);
57+
assert!(resolution.is_err(), "{comment} {request}");
58+
}
5859

59-
let successful_resolves = [
60-
("fully relative", "./abc.js", "/a/abc.js"),
61-
("fully absolute", "/a/abc.js", "/a/abc.js"),
62-
("fully relative in package", "package1/file.js", "/a/node_modules/package1/file.js"),
63-
("extensions in mainFiles", "package1", "/a/node_modules/package1/index.js"),
64-
("extensions in mainFields", "package2", "/a/node_modules/package2/a.js"),
65-
("extensions in alias", "alias1", "/a/abc.js"),
66-
("directories in alias", "alias2", "/a/index.js"),
67-
("directories in packages", "package3", "/a/node_modules/package3/dir/index.js"),
68-
("extensions in aliasFields", "package4/a.js", "/a/node_modules/package4/b.js"),
69-
];
60+
let successful_resolves = [
61+
("fully relative", "./abc.js", "/a/abc.js"),
62+
("fully absolute", "/a/abc.js", "/a/abc.js"),
63+
("fully relative in package", "package1/file.js", "/a/node_modules/package1/file.js"),
64+
("extensions in mainFiles", "package1", "/a/node_modules/package1/index.js"),
65+
("extensions in mainFields", "package2", "/a/node_modules/package2/a.js"),
66+
("extensions in alias", "alias1", "/a/abc.js"),
67+
("directories in alias", "alias2", "/a/index.js"),
68+
("directories in packages", "package3", "/a/node_modules/package3/dir/index.js"),
69+
("extensions in aliasFields", "package4/a.js", "/a/node_modules/package4/b.js"),
70+
];
7071

71-
for (comment, request, expected) in successful_resolves {
72-
let resolution = resolver.resolve("/a", request).map(|r| r.full_path());
73-
assert_eq!(resolution, Ok(PathBuf::from(expected)), "{comment} {request}");
72+
for (comment, request, expected) in successful_resolves {
73+
let resolution = resolver.resolve("/a", request).map(|r| r.full_path());
74+
assert_eq!(resolution, Ok(PathBuf::from(expected)), "{comment} {request}");
75+
}
7476
}
75-
}
7677

77-
#[test]
78-
#[cfg(not(target_os = "windows"))] // MemoryFS's path separator is always `/` so the test will not pass in windows.
79-
fn resolve_to_context() {
80-
let file_system = file_system();
78+
#[test]
79+
#[cfg(not(target_os = "windows"))] // MemoryFS's path separator is always `/` so the test will not pass in windows.
80+
fn resolve_to_context() {
81+
let file_system = file_system();
8182

82-
let resolver = ResolverGeneric::<MemoryFS>::new_with_file_system(
83-
file_system,
84-
ResolveOptions {
85-
alias: vec![
86-
("alias1".into(), vec![AliasValue::Path("/a/abc".into())]),
87-
("alias2".into(), vec![AliasValue::Path("/a".into())]),
88-
],
89-
alias_fields: vec![vec!["browser".into()]],
90-
fully_specified: true,
91-
resolve_to_context: true,
92-
..ResolveOptions::default()
93-
},
94-
);
83+
let resolver = ResolverGeneric::<MemoryFS>::new_with_file_system(
84+
file_system,
85+
ResolveOptions {
86+
alias: vec![
87+
("alias1".into(), vec![AliasValue::Path("/a/abc".into())]),
88+
("alias2".into(), vec![AliasValue::Path("/a".into())]),
89+
],
90+
alias_fields: vec![vec!["browser".into()]],
91+
fully_specified: true,
92+
resolve_to_context: true,
93+
..ResolveOptions::default()
94+
},
95+
);
9596

96-
let successful_resolves = [
97-
("current folder", ".", "/a"),
98-
("current folder 2", "./", "/a"),
99-
("relative directory", "./dir", "/a/dir"),
100-
("relative directory 2", "./dir/", "/a/dir"),
101-
("relative directory with query and fragment", "./dir?123#456", "/a/dir?123#456"),
102-
("relative directory with query and fragment 2", "./dir/?123#456", "/a/dir?123#456"),
103-
("absolute directory", "/a/dir", "/a/dir"),
104-
("directory in package", "package3/dir", "/a/node_modules/package3/dir"),
105-
];
97+
let successful_resolves = [
98+
("current folder", ".", "/a"),
99+
("current folder 2", "./", "/a"),
100+
("relative directory", "./dir", "/a/dir"),
101+
("relative directory 2", "./dir/", "/a/dir"),
102+
("relative directory with query and fragment", "./dir?123#456", "/a/dir?123#456"),
103+
("relative directory with query and fragment 2", "./dir/?123#456", "/a/dir?123#456"),
104+
("absolute directory", "/a/dir", "/a/dir"),
105+
("directory in package", "package3/dir", "/a/node_modules/package3/dir"),
106+
];
106107

107-
for (comment, request, expected) in successful_resolves {
108-
let resolution = resolver.resolve("/a", request).map(|r| r.full_path());
109-
assert_eq!(resolution, Ok(PathBuf::from(expected)), "{comment} {request}");
108+
for (comment, request, expected) in successful_resolves {
109+
let resolution = resolver.resolve("/a", request).map(|r| r.full_path());
110+
assert_eq!(resolution, Ok(PathBuf::from(expected)), "{comment} {request}");
111+
}
110112
}
111113
}

src/tests/memory_fs.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ impl MemoryFS {
1515
///
1616
/// * Fails to create directory
1717
/// * Fails to write file
18+
#[allow(dead_code)]
1819
pub fn new(data: &[(&'static str, &'static str)]) -> Self {
1920
let mut fs = Self { fs: vfs::MemoryFS::default() };
2021
for (path, content) in data {
@@ -23,6 +24,7 @@ impl MemoryFS {
2324
fs
2425
}
2526

27+
#[allow(dead_code)]
2628
pub fn add_file(&mut self, path: &Path, content: &str) {
2729
use vfs::FileSystem;
2830
let fs = &mut self.fs;

0 commit comments

Comments
 (0)