From 1c7485e58c2fc02ceed4656752c5315178e9b9a9 Mon Sep 17 00:00:00 2001 From: Jarred Sumner Date: Fri, 17 Sep 2021 03:14:23 -0700 Subject: Begin to add integration tests --- integration/snippets/_auth.js | 1 + integration/snippets/_bacon.js | 1 + integration/snippets/_login.js | 3 ++ integration/snippets/bundled-entry-point.js | 7 +++ ...shouldnt-have-static-imports-in-cjs-function.js | 15 +++++++ integration/snippets/export.js | 29 ++++++++++++ integration/snippets/package.json | 10 +++++ integration/snippets/public/index.html | 51 ++++++++++++++++++++++ integration/snippets/type-only-imports.ts | 12 +++++ 9 files changed, 129 insertions(+) create mode 100644 integration/snippets/_auth.js create mode 100644 integration/snippets/_bacon.js create mode 100644 integration/snippets/_login.js create mode 100644 integration/snippets/bundled-entry-point.js create mode 100644 integration/snippets/cjs-transform-shouldnt-have-static-imports-in-cjs-function.js create mode 100644 integration/snippets/export.js create mode 100644 integration/snippets/package.json create mode 100644 integration/snippets/public/index.html create mode 100644 integration/snippets/type-only-imports.ts (limited to 'integration/snippets') diff --git a/integration/snippets/_auth.js b/integration/snippets/_auth.js new file mode 100644 index 000000000..407090812 --- /dev/null +++ b/integration/snippets/_auth.js @@ -0,0 +1 @@ +export default "hi"; diff --git a/integration/snippets/_bacon.js b/integration/snippets/_bacon.js new file mode 100644 index 000000000..c07ffb9be --- /dev/null +++ b/integration/snippets/_bacon.js @@ -0,0 +1 @@ +export let hello = true; diff --git a/integration/snippets/_login.js b/integration/snippets/_login.js new file mode 100644 index 000000000..b2fc2ef65 --- /dev/null +++ b/integration/snippets/_login.js @@ -0,0 +1,3 @@ +export default function () { + return true; +} diff --git a/integration/snippets/bundled-entry-point.js b/integration/snippets/bundled-entry-point.js new file mode 100644 index 000000000..a996f8632 --- /dev/null +++ b/integration/snippets/bundled-entry-point.js @@ -0,0 +1,7 @@ +import "react"; + +var hello = 123 ? null ?? "world" : "ok"; + +export function test() { + return testDone(import.meta.url); +} diff --git a/integration/snippets/cjs-transform-shouldnt-have-static-imports-in-cjs-function.js b/integration/snippets/cjs-transform-shouldnt-have-static-imports-in-cjs-function.js new file mode 100644 index 000000000..4191b7116 --- /dev/null +++ b/integration/snippets/cjs-transform-shouldnt-have-static-imports-in-cjs-function.js @@ -0,0 +1,15 @@ +import _login from "./_login"; +import _auth from "./_auth"; +import * as _loginReally from "./_login"; +import * as _authReally from "./_auth"; + +module.exports.iAmCommonJs = true; +exports.YouAreCommonJS = true; +require("./_login"); +export { _login as login }; + +export function test() { + return testDone(import.meta.url); +} + +export let foo, bar; diff --git a/integration/snippets/export.js b/integration/snippets/export.js new file mode 100644 index 000000000..fe0abfa53 --- /dev/null +++ b/integration/snippets/export.js @@ -0,0 +1,29 @@ +import what from "./_auth"; +export { default as auth } from "./_auth"; +export { default as login } from "./_login"; +export * from "./_bacon"; +export let yoyoyo = "yoyoyo"; +export default function hey() { + return true; +} +export const foo = () => {}; +export var bar = 100; +export let powerLevel = Symbol("9001"); +export { what }; +export { what as when, what as whence }; +export {} from "./_bacon"; +export * as where from "./_auth"; +export { bar as booop }; + +export function test() { + hey(); + foo(); + if (where.default !== "hi") { + throw new Error(`_auth import is incorrect.`); + } + console.assert( + powerLevel.description === "9001", + "Symbol is not exported correctly" + ); + return testDone(import.meta.url); +} diff --git a/integration/snippets/package.json b/integration/snippets/package.json new file mode 100644 index 000000000..8edbd79a1 --- /dev/null +++ b/integration/snippets/package.json @@ -0,0 +1,10 @@ +{ + "name": "snippets", + "version": "1.0.0", + "main": "index.js", + "license": "MIT", + "dependencies": { + "react": "^17.0.2", + "redux": "^4.1.1" + } +} diff --git a/integration/snippets/public/index.html b/integration/snippets/public/index.html new file mode 100644 index 000000000..74a744a7d --- /dev/null +++ b/integration/snippets/public/index.html @@ -0,0 +1,51 @@ + + + + + + Bun Test + + + + + diff --git a/integration/snippets/type-only-imports.ts b/integration/snippets/type-only-imports.ts new file mode 100644 index 000000000..447f86793 --- /dev/null +++ b/integration/snippets/type-only-imports.ts @@ -0,0 +1,12 @@ +import type Bacon from "tree"; +import type { SilentSymbolCollisionsAreOkayInTypeScript } from "./app"; + +export const baconator: Bacon = true; +export const SilentSymbolCollisionsAreOkayInTypeScript: SilentSymbolCollisionsAreOkayInTypeScript = + true; + +export function test() { + console.assert(SilentSymbolCollisionsAreOkayInTypeScript); + console.assert(baconator); + return testDone(import.meta.url); +} -- cgit v1.2.3