aboutsummaryrefslogtreecommitdiff
path: root/test/js/third_party/webpack
diff options
context:
space:
mode:
authorGravatar Jarred Sumner <jarred@jarredsumner.com> 2023-07-11 19:14:34 -0700
committerGravatar GitHub <noreply@github.com> 2023-07-11 19:14:34 -0700
commitcbb88672f217a90db1aa1eb29cd92d5d9035b22b (patch)
tree43a00501f3cde495967e116f0b660777051551f8 /test/js/third_party/webpack
parent1f900cff453700b19bca2acadfe26da4468c1282 (diff)
parent34b0e7a2bbd8bf8097341cdb0075d0908283e834 (diff)
downloadbun-jarred/esm-conditions.tar.gz
bun-jarred/esm-conditions.tar.zst
bun-jarred/esm-conditions.zip
Merge branch 'main' into jarred/esm-conditionsjarred/esm-conditions
Diffstat (limited to '')
-rw-r--r--test/js/third_party/webpack/package.json7
-rw-r--r--test/js/third_party/webpack/test.js11
-rw-r--r--test/js/third_party/webpack/webpack.test.ts27
-rw-r--r--test/js/third_party/webpack/world.js3
4 files changed, 48 insertions, 0 deletions
diff --git a/test/js/third_party/webpack/package.json b/test/js/third_party/webpack/package.json
new file mode 100644
index 000000000..fb08bfdc5
--- /dev/null
+++ b/test/js/third_party/webpack/package.json
@@ -0,0 +1,7 @@
+{
+ "name": "webpack-test",
+ "version": "2.0.0",
+ "dependencies": {
+ "webpack": "5.88.0"
+ }
+} \ No newline at end of file
diff --git a/test/js/third_party/webpack/test.js b/test/js/third_party/webpack/test.js
new file mode 100644
index 000000000..bfd3e80a1
--- /dev/null
+++ b/test/js/third_party/webpack/test.js
@@ -0,0 +1,11 @@
+import { world } from "./world.js";
+
+function component() {
+ const element = document.createElement("div");
+
+ element.innerHTML = "hello " + world();
+
+ return element;
+}
+
+document.body.appendChild(component());
diff --git a/test/js/third_party/webpack/webpack.test.ts b/test/js/third_party/webpack/webpack.test.ts
new file mode 100644
index 000000000..ffc8195c6
--- /dev/null
+++ b/test/js/third_party/webpack/webpack.test.ts
@@ -0,0 +1,27 @@
+import { bunExe, bunEnv } from "harness";
+import { existsSync, rmdirSync } from "fs";
+import { join } from "path";
+
+afterEach(() => {
+ rmdirSync(join(import.meta.dir, "dist"), { recursive: true });
+});
+
+test("webpack works", () => {
+ Bun.spawnSync({
+ cmd: [bunExe(), "-b", "webpack", "--entry", "./test.js", "-o", "./dist/test1/main.js"],
+ cwd: import.meta.dir,
+ env: bunEnv,
+ });
+
+ expect(existsSync(join(import.meta.dir, "dist", "test1/main.js"))).toBe(true);
+});
+
+test("webpack --watch works", async () => {
+ Bun.spawnSync({
+ cmd: ["timeout", "3", bunExe(), "-b", "webpack", "--entry", "./test.js", "-o", "./dist/test2/main.js", "--watch"],
+ cwd: import.meta.dir,
+ env: bunEnv,
+ });
+
+ expect(existsSync(join(import.meta.dir, "dist", "test2/main.js"))).toBe(true);
+});
diff --git a/test/js/third_party/webpack/world.js b/test/js/third_party/webpack/world.js
new file mode 100644
index 000000000..3fa21bf67
--- /dev/null
+++ b/test/js/third_party/webpack/world.js
@@ -0,0 +1,3 @@
+export function world() {
+ return "world";
+}