From 88e3a5ac66a94cf65c1ec225bc2e3f1a392ead23 Mon Sep 17 00:00:00 2001 From: owjs3901 Date: Sat, 13 Sep 2025 17:05:37 +0900 Subject: [PATCH 1/4] Add banner --- .changeset/fine-frogs-judge.md | 5 +++++ libs/sheet/src/lib.rs | 31 +++++++++++++++++++++++++------ 2 files changed, 30 insertions(+), 6 deletions(-) create mode 100644 .changeset/fine-frogs-judge.md diff --git a/.changeset/fine-frogs-judge.md b/.changeset/fine-frogs-judge.md new file mode 100644 index 00000000..4ea20f4f --- /dev/null +++ b/.changeset/fine-frogs-judge.md @@ -0,0 +1,5 @@ +--- +"@devup-ui/wasm": patch +--- + +Add css banner diff --git a/libs/sheet/src/lib.rs b/libs/sheet/src/lib.rs index 1100c8fc..2a1ab5f7 100644 --- a/libs/sheet/src/lib.rs +++ b/libs/sheet/src/lib.rs @@ -543,13 +543,32 @@ impl StyleSheet { current_css } + fn create_header(&self) -> String { + format!( + "/*! devup-ui v{version} | Apache License 2.0 | https://devup-ui.com */", + // get version from package.json + version = include_str!("../../../bindings/devup-ui-wasm/package.json") + .lines() + .find(|line| line.contains("\"version\"")) + .unwrap() + .split(":") + .nth(1) + .unwrap() + .trim() + .replace("\"", ""), + ) + } + pub fn create_css(&self, filename: Option<&str>, import_main_css: bool) -> String { - let mut css = self - .imports - .values() - .flatten() - .map(|import| format!("@import \"{import}\";")) - .collect::(); + let mut css = format!( + "{}{}", + self.create_header(), + self.imports + .values() + .flatten() + .map(|import| format!("@import \"{import}\";")) + .collect::() + ); let write_global = filename.is_none(); From 6da334c229a97f7efb118e5dded971a3d48f4482 Mon Sep 17 00:00:00 2001 From: owjs3901 Date: Sat, 13 Sep 2025 19:44:10 +0900 Subject: [PATCH 2/4] Fix test --- bindings/devup-ui-wasm/src/lib.rs | 2 +- libs/sheet/src/lib.rs | 119 +++++++++--------- .../src/__tests__/plugin.test.ts | 6 +- 3 files changed, 66 insertions(+), 61 deletions(-) diff --git a/bindings/devup-ui-wasm/src/lib.rs b/bindings/devup-ui-wasm/src/lib.rs index e4ef4cc6..009d794c 100644 --- a/bindings/devup-ui-wasm/src/lib.rs +++ b/bindings/devup-ui-wasm/src/lib.rs @@ -246,7 +246,7 @@ mod tests { sheet.set_theme(theme); } - assert_debug_snapshot!(get_css(None, false).unwrap()); + assert_debug_snapshot!(get_css(None, false).unwrap().split("*/").nth(1).unwrap()); } #[test] diff --git a/libs/sheet/src/lib.rs b/libs/sheet/src/lib.rs index 2a1ab5f7..0e7f3be1 100644 --- a/libs/sheet/src/lib.rs +++ b/libs/sheet/src/lib.rs @@ -560,15 +560,12 @@ impl StyleSheet { } pub fn create_css(&self, filename: Option<&str>, import_main_css: bool) -> String { - let mut css = format!( - "{}{}", - self.create_header(), - self.imports - .values() - .flatten() - .map(|import| format!("@import \"{import}\";")) - .collect::() - ); + let mut css = self + .imports + .values() + .flatten() + .map(|import| format!("@import \"{import}\";")) + .collect::(); let write_global = filename.is_none(); @@ -676,7 +673,11 @@ impl StyleSheet { } } } - css + if css.is_empty() { + css + } else { + format!("{}{}", self.create_header(), css) + } } } @@ -708,12 +709,12 @@ mod tests { let mut sheet = StyleSheet::default(); sheet.add_property("test", "background-color", 1, "red", None, None, None); sheet.add_property("test", "background", 1, "some", None, None, None); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); let mut sheet = StyleSheet::default(); sheet.add_property("test", "border", 0, "1px solid", None, None, None); sheet.add_property("test", "border-color", 0, "red", None, None, None); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); } #[test] fn test_create_css_with_selector_sort_test() { @@ -728,7 +729,7 @@ mod tests { None, ); sheet.add_property("test", "background-color", 1, "some", None, None, None); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); let mut sheet = StyleSheet::default(); sheet.add_property("test", "background-color", 1, "red", None, None, None); @@ -741,29 +742,29 @@ mod tests { None, None, ); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); let mut sheet = StyleSheet::default(); sheet.add_property("test", "background-color", 1, "red", None, None, None); sheet.add_property("test", "background", 1, "some", None, None, None); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); } #[test] fn test_create_css_with_basic_sort_test() { let mut sheet = StyleSheet::default(); sheet.add_property("test", "background-color", 1, "red", None, Some(0), None); sheet.add_property("test", "background", 1, "some", None, None, None); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); let mut sheet = StyleSheet::default(); sheet.add_property("test", "border", 0, "1px solid", None, None, None); sheet.add_property("test", "border-color", 0, "red", None, Some(0), None); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); let mut sheet = StyleSheet::default(); sheet.add_property("test", "display", 0, "flex", None, Some(0), None); sheet.add_property("test", "display", 0, "block", None, None, None); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); } #[test] @@ -779,28 +780,28 @@ mod tests { None, ); sheet.add_property("test", "background-color", 1, "some", None, Some(0), None); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); let mut sheet = StyleSheet::default(); sheet.add_property("test", "display", 0, "flex", None, Some(0), None); sheet.add_property("test", "display", 0, "none", None, None, None); sheet.add_property("test", "display", 2, "flex", None, None, None); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); } #[test] fn test_create_css() { let mut sheet = StyleSheet::default(); sheet.add_property("test", "margin", 1, "40px", None, None, None); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); let mut sheet = StyleSheet::default(); sheet.add_css("test.tsx", "div {display:flex;}"); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); let mut sheet = StyleSheet::default(); sheet.add_property("test", "margin", 2, "40px", None, None, None); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); let mut sheet = StyleSheet::default(); sheet.add_property( @@ -821,7 +822,7 @@ mod tests { None, None, ); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); let mut sheet = StyleSheet::default(); sheet.add_property( @@ -842,7 +843,7 @@ mod tests { None, None, ); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); let mut sheet = StyleSheet::default(); sheet.add_property( @@ -863,7 +864,7 @@ mod tests { None, None, ); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); let mut sheet = StyleSheet::default(); sheet.add_property( @@ -884,7 +885,7 @@ mod tests { None, None, ); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); let mut sheet = StyleSheet::default(); sheet.add_property( @@ -896,7 +897,7 @@ mod tests { None, None, ); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); let mut sheet = StyleSheet::default(); sheet.add_property( @@ -908,7 +909,7 @@ mod tests { None, None, ); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); let mut sheet = StyleSheet::default(); sheet.add_property( @@ -920,7 +921,7 @@ mod tests { None, None, ); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); let mut sheet = StyleSheet::default(); sheet.add_property( @@ -932,7 +933,7 @@ mod tests { None, None, ); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); let mut sheet = StyleSheet::default(); sheet.add_property( @@ -944,7 +945,7 @@ mod tests { None, None, ); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); } #[test] @@ -952,15 +953,15 @@ mod tests { let mut sheet = StyleSheet::default(); sheet.add_css("test.tsx", "div {display:flex;}"); sheet.add_css("test2.tsx", "div {display:flex;}"); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); sheet.rm_global_css("test.tsx", true); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); sheet.rm_global_css("wrong.tsx", true); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); } #[test] @@ -983,12 +984,12 @@ mod tests { sheet.add_property("test", "margin-right", 1, "60px", None, None, None); sheet.add_property("test", "margin-left", 0, "70px", None, None, None); sheet.add_property("test", "margin-right", 0, "70px", None, None, None); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); let mut sheet = StyleSheet::default(); sheet.add_property("test", "background", 0, "red", None, Some(3), None); sheet.add_property("test", "background", 0, "blue", None, Some(17), None); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); } #[test] @@ -996,7 +997,7 @@ mod tests { let mut sheet = StyleSheet::default(); sheet.add_property("test", "margin-left", 10, "40px", None, None, None); sheet.add_property("test", "margin-right", 10, "40px", None, None, None); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); } #[test] @@ -1038,7 +1039,7 @@ mod tests { None, None, ); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); } #[test] @@ -1098,7 +1099,7 @@ mod tests { None, None, ); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); let mut sheet = StyleSheet::default(); sheet.add_property( @@ -1141,7 +1142,7 @@ mod tests { ); sheet.add_property("test", "margin-left", 0, "42px", None, None, None); sheet.add_property("test", "margin-right", 0, "42px", None, None, None); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); let mut sheet = StyleSheet::default(); sheet.add_property( @@ -1180,7 +1181,7 @@ mod tests { None, None, ); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); } #[test] @@ -1259,7 +1260,7 @@ mod tests { None, None, ); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); let mut sheet = StyleSheet::default(); sheet.add_property( @@ -1283,7 +1284,7 @@ mod tests { sheet.add_property("test", "margin-top", 0, "40px", None, None, None); sheet.add_property("test", "margin-bottom", 0, "40px", None, None, None); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); } #[test] @@ -1314,7 +1315,7 @@ mod tests { None, ); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); } #[test] @@ -1406,7 +1407,7 @@ mod tests { None, None, ); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); let mut sheet = StyleSheet::default(); sheet.add_property( "test", @@ -1420,7 +1421,7 @@ mod tests { None, None, ); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); let mut sheet = StyleSheet::default(); @@ -1448,7 +1449,7 @@ mod tests { None, None, ); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); let mut sheet = StyleSheet::default(); sheet.add_property( @@ -1475,7 +1476,7 @@ mod tests { Some(255), None, ); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); sheet.add_property( "test", @@ -1501,7 +1502,7 @@ mod tests { ); sheet.rm_global_css("test.tsx", true); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); let mut sheet = StyleSheet::default(); sheet.add_property( @@ -1529,7 +1530,7 @@ mod tests { None, ); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); sheet.rm_global_css("test.tsx", true); assert_debug_snapshot!(sheet.create_css(None, false)); @@ -1560,10 +1561,10 @@ mod tests { None, ); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); sheet.rm_global_css("test.tsx", true); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); } #[test] @@ -1574,19 +1575,19 @@ mod tests { sheet.add_import("test2.tsx", "@devup-ui/core/css/global2.css"); sheet.add_import("test3.tsx", "@devup-ui/core/css/global3.css"); sheet.add_import("test4.tsx", "@devup-ui/core/css/global4.css"); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); } { let mut sheet = StyleSheet::default(); sheet.add_import("test.tsx", "@devup-ui/core/css/global.css"); sheet.add_import("test.tsx", "@devup-ui/core/css/new-global.css"); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); } { let mut sheet = StyleSheet::default(); sheet.add_import("test.tsx", "@devup-ui/core/css/global.css"); sheet.add_import("test.tsx", "@devup-ui/core/css/global.css"); - assert_debug_snapshot!(sheet.create_css(None, false)); + assert_debug_snapshot!(sheet.create_css(None, false).split("*/").nth(1).unwrap()); } } @@ -1678,7 +1679,7 @@ mod tests { sheet.add_keyframes("fadeIn", keyframes, None); let past = sheet.create_css(None, false); - assert_debug_snapshot!(past); + assert_debug_snapshot!(past.split("*/").nth(1).unwrap()); let mut keyframes: BTreeMap> = BTreeMap::new(); let mut from_props = BTreeSet::new(); @@ -1708,7 +1709,7 @@ mod tests { sheet.add_keyframes("fadeIn", keyframes, None); let now = sheet.create_css(None, false); - assert_debug_snapshot!(now); + assert_debug_snapshot!(now.split("*/").nth(1).unwrap()); assert_eq!(past, now); } @@ -1731,6 +1732,6 @@ mod tests { assert!(css.contains("src:url('/fonts/Roboto-Regular.ttf')")); assert!(css.contains("font-weight:400")); - assert_debug_snapshot!(css); + assert_debug_snapshot!(css.split("*/").nth(1).unwrap()); } } diff --git a/packages/rsbuild-plugin/src/__tests__/plugin.test.ts b/packages/rsbuild-plugin/src/__tests__/plugin.test.ts index 01b7ba14..8ed56c8a 100644 --- a/packages/rsbuild-plugin/src/__tests__/plugin.test.ts +++ b/packages/rsbuild-plugin/src/__tests__/plugin.test.ts @@ -66,7 +66,9 @@ describe('DevupUIRsbuildPlugin', () => { }) it('should error when write data files', async () => { - vi.mocked(readFile).mockRejectedValueOnce(new Error('error')) + const originalConsoleError = console.error + console.error = vi.fn() + vi.mocked(readFile).mockRejectedValueOnce('error') vi.mocked(existsSync).mockImplementation((path) => { if (path === 'devup.json') return true return false @@ -80,6 +82,8 @@ describe('DevupUIRsbuildPlugin', () => { transform, modifyRsbuildConfig, } as any) + expect(console.error).toHaveBeenCalledWith('error') + console.error = originalConsoleError }) it('should not register css transform', async () => { From 95e27031be6f3ae2688a7c747207c62b0475c249 Mon Sep 17 00:00:00 2001 From: owjs3901 Date: Sat, 13 Sep 2025 20:03:29 +0900 Subject: [PATCH 3/4] Fix benchmark --- benchmark.js | 78 +++++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 62 insertions(+), 16 deletions(-) diff --git a/benchmark.js b/benchmark.js index be81bf39..18325bcb 100644 --- a/benchmark.js +++ b/benchmark.js @@ -1,4 +1,3 @@ -/* eslint-disable no-console */ import { existsSync, readdirSync, rmSync, statSync } from 'node:fs' import { join } from 'node:path' @@ -64,40 +63,87 @@ function checkDirSize(path) { clearBuildFile() -console.time('kuma-ui') +performance.mark('kuma-ui-start') +console.profile('kuma-ui') execSync('pnpm -F next-kuma-ui-benchmark build', { stdio: 'inherit', }) -console.timeEnd('kuma-ui') -console.info('kuma-ui', checkDirSize('./benchmark/next-kuma-ui/.next')) +console.profileEnd('kuma-ui') +performance.mark('kuma-ui-end') +performance.measure('kuma-ui', 'kuma-ui-start', 'kuma-ui-end') -console.time('chakra-ui') +performance.mark('chakra-ui-start') +console.profile('chakra-ui') execSync('pnpm -F next-chakra-ui-benchmark build', { stdio: 'inherit', }) -console.timeEnd('chakra-ui') -console.info('chakra-ui', checkDirSize('./benchmark/next-chakra-ui/.next')) +console.profileEnd('chakra-ui') +performance.mark('chakra-ui-end') +performance.measure('chakra-ui', 'chakra-ui-start', 'chakra-ui-end') -console.time('mui') +performance.mark('mui-start') +console.profile('mui') execSync('pnpm -F next-mui-benchmark build', { stdio: 'inherit', }) -console.timeEnd('mui') -console.info('mui', checkDirSize('./benchmark/next-mui/.next')) +console.profileEnd('mui') +performance.mark('mui-end') +performance.measure('mui', 'mui-start', 'mui-end') -console.time('devup-ui') +performance.mark('devup-ui-start') +console.profile('devup-ui') execSync('pnpm -F next-devup-ui-benchmark build', { stdio: 'inherit', }) -console.timeEnd('devup-ui') -console.info('devup-ui', checkDirSize('./benchmark/next-devup-ui/.next')) +console.profileEnd('devup-ui') +performance.mark('devup-ui-end') +performance.measure('devup-ui', 'devup-ui-start', 'devup-ui-end') -console.time('devup-ui-single') +performance.mark('devup-ui-single-start') +console.profile('devup-ui-single') execSync('pnpm -F next-devup-ui-single-benchmark build', { stdio: 'inherit', }) -console.timeEnd('devup-ui-single') +console.profileEnd('devup-ui-single') +performance.mark('devup-ui-single-end') +performance.measure( + 'devup-ui-single', + 'devup-ui-single-start', + 'devup-ui-single-end', +) + +console.info(performance.getEntriesByName('kuma-ui')) + +console.info( + 'kuma-ui', + checkDirSize('./benchmark/next-kuma-ui/.next').toLocaleString() + 'bytes', +) + +console.info(performance.getEntriesByName('chakra-ui')) + +console.info( + 'chakra-ui', + checkDirSize('./benchmark/next-chakra-ui/.next').toLocaleString() + 'bytes', +) + +console.info(performance.getEntriesByName('mui')) + +console.info( + 'mui', + checkDirSize('./benchmark/next-mui/.next').toLocaleString() + 'bytes', +) + +console.info(performance.getEntriesByName('devup-ui')) + +console.info( + 'devup-ui', + checkDirSize('./benchmark/next-devup-ui/.next').toLocaleString() + 'bytes', +) + +console.info(performance.getEntriesByName('devup-ui-single')) + console.info( 'devup-ui-single', - checkDirSize('./benchmark/next-devup-ui-single/.next'), + checkDirSize('./benchmark/next-devup-ui-single/.next').toLocaleString() + + 'bytes', ) From 58d56aa327df1eae0b0be709d623f0388bd3ae00 Mon Sep 17 00:00:00 2001 From: owjs3901 Date: Sat, 13 Sep 2025 20:08:26 +0900 Subject: [PATCH 4/4] Add test --- libs/css/src/file_map.rs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libs/css/src/file_map.rs b/libs/css/src/file_map.rs index 0af29426..d3b78946 100644 --- a/libs/css/src/file_map.rs +++ b/libs/css/src/file_map.rs @@ -53,6 +53,8 @@ mod tests { let got = get_file_map(); assert_eq!(got.get_by_left("test-key"), Some(&42)); assert_eq!(got.get_by_right(&42), Some(&"test-key".to_string())); + assert_eq!(get_file_num_by_filename("test-key"), 42); + assert_eq!(get_filename_by_file_num(42), "test-key"); } #[test]