From 5ff87afa78e5bb56f2b03678577279256c18e4da Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Donny/=EA=B0=95=EB=8F=99=EC=9C=A4?= Date: Mon, 28 Nov 2022 11:50:26 +0900 Subject: [PATCH] test(es/transforms): Add tests about preserving top-level directives (#6518) **Related issue:** - Closes https://github.com/swc-project/swc/issues/6508. --- .../fixture/issues-6xxx/6508/1/input/.swcrc | 5 +++++ .../fixture/issues-6xxx/6508/1/input/index.js | 2 ++ .../fixture/issues-6xxx/6508/1/output/index.js | 2 ++ .../fixture/issues-6xxx/6508/2/input/.swcrc | 5 +++++ .../fixture/issues-6xxx/6508/2/input/index.js | 6 ++++++ .../fixture/issues-6xxx/6508/2/output/index.js | 16 ++++++++++++++++ .../fixture/issues-6xxx/6508/3/input/.swcrc | 5 +++++ .../fixture/issues-6xxx/6508/3/input/index.js | 6 ++++++ .../fixture/issues-6xxx/6508/3/output/index.js | 4 ++++ 9 files changed, 51 insertions(+) create mode 100644 crates/swc/tests/fixture/issues-6xxx/6508/1/input/.swcrc create mode 100644 crates/swc/tests/fixture/issues-6xxx/6508/1/input/index.js create mode 100644 crates/swc/tests/fixture/issues-6xxx/6508/1/output/index.js create mode 100644 crates/swc/tests/fixture/issues-6xxx/6508/2/input/.swcrc create mode 100644 crates/swc/tests/fixture/issues-6xxx/6508/2/input/index.js create mode 100644 crates/swc/tests/fixture/issues-6xxx/6508/2/output/index.js create mode 100644 crates/swc/tests/fixture/issues-6xxx/6508/3/input/.swcrc create mode 100644 crates/swc/tests/fixture/issues-6xxx/6508/3/input/index.js create mode 100644 crates/swc/tests/fixture/issues-6xxx/6508/3/output/index.js diff --git a/crates/swc/tests/fixture/issues-6xxx/6508/1/input/.swcrc b/crates/swc/tests/fixture/issues-6xxx/6508/1/input/.swcrc new file mode 100644 index 000000000000..088bc6e52178 --- /dev/null +++ b/crates/swc/tests/fixture/issues-6xxx/6508/1/input/.swcrc @@ -0,0 +1,5 @@ +{ + "jsc": { + "target": "es5" + } +} \ No newline at end of file diff --git a/crates/swc/tests/fixture/issues-6xxx/6508/1/input/index.js b/crates/swc/tests/fixture/issues-6xxx/6508/1/input/index.js new file mode 100644 index 000000000000..50bca323d358 --- /dev/null +++ b/crates/swc/tests/fixture/issues-6xxx/6508/1/input/index.js @@ -0,0 +1,2 @@ +'use client'; +foo(() => { }) \ No newline at end of file diff --git a/crates/swc/tests/fixture/issues-6xxx/6508/1/output/index.js b/crates/swc/tests/fixture/issues-6xxx/6508/1/output/index.js new file mode 100644 index 000000000000..abd1018de3c9 --- /dev/null +++ b/crates/swc/tests/fixture/issues-6xxx/6508/1/output/index.js @@ -0,0 +1,2 @@ +"use client"; +foo(function() {}); diff --git a/crates/swc/tests/fixture/issues-6xxx/6508/2/input/.swcrc b/crates/swc/tests/fixture/issues-6xxx/6508/2/input/.swcrc new file mode 100644 index 000000000000..088bc6e52178 --- /dev/null +++ b/crates/swc/tests/fixture/issues-6xxx/6508/2/input/.swcrc @@ -0,0 +1,5 @@ +{ + "jsc": { + "target": "es5" + } +} \ No newline at end of file diff --git a/crates/swc/tests/fixture/issues-6xxx/6508/2/input/index.js b/crates/swc/tests/fixture/issues-6xxx/6508/2/input/index.js new file mode 100644 index 000000000000..fb1e16696ec8 --- /dev/null +++ b/crates/swc/tests/fixture/issues-6xxx/6508/2/input/index.js @@ -0,0 +1,6 @@ +'use client'; + + +export class Foo { + foo() { } +} \ No newline at end of file diff --git a/crates/swc/tests/fixture/issues-6xxx/6508/2/output/index.js b/crates/swc/tests/fixture/issues-6xxx/6508/2/output/index.js new file mode 100644 index 000000000000..3df58be09e47 --- /dev/null +++ b/crates/swc/tests/fixture/issues-6xxx/6508/2/output/index.js @@ -0,0 +1,16 @@ +"use client"; +import _class_call_check from "@swc/helpers/src/_class_call_check.mjs"; +import _create_class from "@swc/helpers/src/_create_class.mjs"; +export var Foo = /*#__PURE__*/ function() { + "use strict"; + function Foo() { + _class_call_check(this, Foo); + } + _create_class(Foo, [ + { + key: "foo", + value: function foo() {} + } + ]); + return Foo; +}(); diff --git a/crates/swc/tests/fixture/issues-6xxx/6508/3/input/.swcrc b/crates/swc/tests/fixture/issues-6xxx/6508/3/input/.swcrc new file mode 100644 index 000000000000..088bc6e52178 --- /dev/null +++ b/crates/swc/tests/fixture/issues-6xxx/6508/3/input/.swcrc @@ -0,0 +1,5 @@ +{ + "jsc": { + "target": "es5" + } +} \ No newline at end of file diff --git a/crates/swc/tests/fixture/issues-6xxx/6508/3/input/index.js b/crates/swc/tests/fixture/issues-6xxx/6508/3/input/index.js new file mode 100644 index 000000000000..8f8f6847ecde --- /dev/null +++ b/crates/swc/tests/fixture/issues-6xxx/6508/3/input/index.js @@ -0,0 +1,6 @@ +'use client'; + + +export var Foo = { + foo() { } +} \ No newline at end of file diff --git a/crates/swc/tests/fixture/issues-6xxx/6508/3/output/index.js b/crates/swc/tests/fixture/issues-6xxx/6508/3/output/index.js new file mode 100644 index 000000000000..d545b3e9c19a --- /dev/null +++ b/crates/swc/tests/fixture/issues-6xxx/6508/3/output/index.js @@ -0,0 +1,4 @@ +"use client"; +export var Foo = { + foo: function foo() {} +};