mirror of
https://github.com/oven-sh/bun
synced 2026-02-10 10:58:56 +00:00
103 lines
2.4 KiB
TypeScript
103 lines
2.4 KiB
TypeScript
import { itBundled } from "../expectBundled";
|
|
|
|
describe("css", () => {
|
|
itBundled("css-module/GlobalPseudoFunction", {
|
|
files: {
|
|
"index.module.css": /* css */ `
|
|
:global(.foo) {
|
|
color: red;
|
|
}
|
|
`,
|
|
},
|
|
outdir: "/out",
|
|
entryPoints: ["/index.module.css"],
|
|
onAfterBundle(api) {
|
|
api.expectFile("/out/index.module.css").toEqualIgnoringWhitespace(`
|
|
/* index.module.css */
|
|
.foo {
|
|
color: red;
|
|
}
|
|
`);
|
|
},
|
|
});
|
|
|
|
itBundled("css-module/BundleTwoFilesWithoutCodeSplitting", {
|
|
files: {
|
|
"/foo-entry.js": `
|
|
import styles from './common.module.css'
|
|
console.log(styles)
|
|
`,
|
|
"/bar-entry.js": `
|
|
import styles from './common.module.css'
|
|
console.log(styles)
|
|
`,
|
|
"/common.module.css": `.baz { color: red }`,
|
|
},
|
|
entryPoints: ["/foo-entry.js", "/bar-entry.js"],
|
|
outdir: "/out",
|
|
|
|
onAfterBundle(api) {
|
|
api.expectFile("/out/foo-entry.js").toMatchInlineSnapshot(`
|
|
"// common.module.css
|
|
var common_module_default = {
|
|
baz: "baz_I7o34g"
|
|
};
|
|
|
|
// foo-entry.js
|
|
console.log(common_module_default);
|
|
"
|
|
`);
|
|
api.expectFile("/out/bar-entry.js").toMatchInlineSnapshot(`
|
|
"// common.module.css
|
|
var common_module_default = {
|
|
baz: "baz_I7o34g"
|
|
};
|
|
|
|
// bar-entry.js
|
|
console.log(common_module_default);
|
|
"
|
|
`);
|
|
},
|
|
});
|
|
|
|
itBundled("css-module/BundleTwoFilesWithCodeSplitting", {
|
|
files: {
|
|
"/foo-entry.js": `
|
|
import styles from './common.module.css'
|
|
console.log(styles)
|
|
`,
|
|
"/bar-entry.js": `
|
|
import styles from './common.module.css'
|
|
console.log(styles)
|
|
`,
|
|
"/common.module.css": `.baz { color: red }`,
|
|
},
|
|
entryPoints: ["/foo-entry.js", "/bar-entry.js"],
|
|
splitting: true,
|
|
outdir: "/out",
|
|
|
|
onAfterBundle(api) {
|
|
api.expectFile("/out/foo-entry.js").toMatchInlineSnapshot(`
|
|
"// common.module.css
|
|
var common_module_default = {
|
|
baz: "baz_I7o34g"
|
|
};
|
|
|
|
// foo-entry.js
|
|
console.log(common_module_default);
|
|
"
|
|
`);
|
|
api.expectFile("/out/bar-entry.js").toMatchInlineSnapshot(`
|
|
"// common.module.css
|
|
var common_module_default = {
|
|
baz: "baz_I7o34g"
|
|
};
|
|
|
|
// bar-entry.js
|
|
console.log(common_module_default);
|
|
"
|
|
`);
|
|
},
|
|
});
|
|
});
|