From 78960de72b1ec2ca375e57973dbf3deb72423857 Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Fri, 11 Aug 2017 11:11:12 -0400 Subject: [PATCH 01/11] organise tests --- .eslintignore | 3 +- package.json | 4 +- test/cli/index.js | 130 ++ .../rollup-config-foo/lib/config.js | 9 - .../rollup-config-foo/package.json | 3 - .../node_modules/foo/lib/config.js | 9 - .../node-config/node_modules/foo/package.json | 3 - .../banner-intro-outro-footer/_config.js | 0 .../banner-intro-outro-footer/_expected.js | 0 .../banner-intro-outro-footer/main.js | 0 .../config-cwd-case-insensitive/_config.js | 0 .../config-cwd-case-insensitive/main.js | 0 .../rollup.config.js | 0 test/cli/{ => samples}/config-env/_config.js | 0 test/cli/{ => samples}/config-env/main.js | 0 .../{ => samples}/config-env/rollup.config.js | 0 test/cli/{ => samples}/config-es6/_config.js | 0 test/cli/{ => samples}/config-es6/main.js | 0 .../{ => samples}/config-es6/rollup.config.js | 0 .../config-external-function/_config.js | 0 .../config-external-function/_expected.js | 0 .../config-external-function/main.js | 0 .../config-external-function/rollup.config.js | 0 .../{ => samples}/config-external/_config.js | 0 .../config-external/_expected.js | 0 .../cli/{ => samples}/config-external/main.js | 0 .../config-external/rollup.config.js | 0 test/cli/{ => samples}/config-json/_config.js | 0 test/cli/{ => samples}/config-json/main.js | 0 .../{ => samples}/config-json/package.json | 0 .../config-json/rollup.config.js | 0 .../config-missing-export/_config.js | 0 .../config-missing-export/rollup.config.js | 0 .../{ => samples}/config-override/_config.js | 0 .../cli/{ => samples}/config-override/main.js | 0 .../config-override/rollup.config.js | 0 .../config-plugin-entry/_config.js | 0 .../config-plugin-entry/_expected.js | 0 .../{ => samples}/config-plugin-entry/main.js | 0 .../config-plugin-entry/rollup.config.js | 0 test/cli/{ => samples}/config-true/_config.js | 0 test/cli/{ => samples}/config-true/main.js | 0 .../config-true/rollup.config.js | 0 test/cli/{ => samples}/config/_config.js | 0 test/cli/{ => samples}/config/_expected.js | 0 test/cli/{ => samples}/config/main.js | 0 .../cli/{ => samples}/config/rollup.config.js | 0 .../external-modules-auto-global/_config.js | 0 .../external-modules-auto-global/main.js | 0 .../{ => samples}/external-modules/_config.js | 0 .../{ => samples}/external-modules/main.js | 0 test/cli/{ => samples}/indent-none/_config.js | 0 .../{ => samples}/indent-none/_expected.js | 0 test/cli/{ => samples}/indent-none/main.js | 0 test/cli/{ => samples}/module-name/_config.js | 0 .../{ => samples}/module-name/_expected.js | 0 test/cli/{ => samples}/module-name/main.js | 0 .../{ => samples}/multiple-configs/_config.js | 0 .../multiple-configs/_expected/bundle1.js | 0 .../{ => samples}/multiple-configs/main.js | 0 .../multiple-configs/rollup.config.js | 0 .../multiple-targets-shared-config/_config.js | 0 .../_expected/cjs.js | 0 .../_expected/cjs.js.map | 0 .../_expected/es.js | 0 .../_expected/es.js.map | 0 .../multiple-targets-shared-config/main.js | 0 .../rollup.config.js | 0 .../{ => samples}/multiple-targets/_config.js | 0 .../multiple-targets/_expected/cjs.js | 0 .../multiple-targets/_expected/es.js | 0 .../{ => samples}/multiple-targets/main.js | 0 .../multiple-targets/rollup.config.js | 0 test/cli/{ => samples}/no-conflict/_config.js | 0 .../{ => samples}/no-conflict/_expected.js | 0 test/cli/{ => samples}/no-conflict/main.js | 0 .../no-conflict/rollup.config.js | 0 test/cli/{ => samples}/no-strict/_config.js | 0 test/cli/{ => samples}/no-strict/_expected.js | 0 test/cli/{ => samples}/no-strict/main.js | 0 .../cli/{ => samples}/no-treeshake/_config.js | 0 .../{ => samples}/no-treeshake/_expected.js | 0 test/cli/{ => samples}/no-treeshake/main.js | 0 .../node-config-auto-prefix/_config.js | 0 .../node-config-auto-prefix/_expected.js | 0 .../node-config-auto-prefix/main.js | 0 test/cli/{ => samples}/node-config/_config.js | 0 .../{ => samples}/node-config/_expected.js | 0 test/cli/{ => samples}/node-config/main.js | 0 test/cli/{ => samples}/silent/_config.js | 0 test/cli/{ => samples}/silent/_expected.js | 0 test/cli/{ => samples}/silent/foo.js | 0 test/cli/{ => samples}/silent/main.js | 0 .../sourcemap-newline/_config.js | 0 .../{ => samples}/sourcemap-newline/main.js | 0 test/form/index.js | 108 ++ .../absolute-path-resolver/_config.js | 0 .../absolute-path-resolver/_expected/amd.js | 0 .../absolute-path-resolver/_expected/cjs.js | 0 .../absolute-path-resolver/_expected/es.js | 0 .../absolute-path-resolver/_expected/iife.js | 0 .../absolute-path-resolver/_expected/umd.js | 0 .../{ => samples}/absolute-path-resolver/a.js | 0 .../absolute-path-resolver/main.js | 0 .../_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../main.js | 0 .../assignment-to-exports/_config.js | 0 .../assignment-to-exports/_expected/amd.js | 0 .../assignment-to-exports/_expected/cjs.js | 0 .../assignment-to-exports/_expected/es.js | 0 .../assignment-to-exports/_expected/iife.js | 0 .../assignment-to-exports/_expected/umd.js | 0 .../assignment-to-exports/main.js | 0 .../async-function-unused/_config.js | 0 .../async-function-unused/_expected/amd.js | 0 .../async-function-unused/_expected/cjs.js | 0 .../async-function-unused/_expected/es.js | 0 .../async-function-unused/_expected/iife.js | 0 .../async-function-unused/_expected/umd.js | 0 .../async-function-unused/main.js | 0 .../async-function-unused/utils.js | 0 .../banner-and-footer-plugin/_config.js | 0 .../banner-and-footer-plugin/_expected/amd.js | 0 .../banner-and-footer-plugin/_expected/cjs.js | 0 .../banner-and-footer-plugin/_expected/es.js | 0 .../_expected/iife.js | 0 .../banner-and-footer-plugin/_expected/umd.js | 0 .../banner-and-footer-plugin/main.js | 0 .../banner-and-footer/_config.js | 0 .../banner-and-footer/_expected/amd.js | 0 .../banner-and-footer/_expected/cjs.js | 0 .../banner-and-footer/_expected/es.js | 0 .../banner-and-footer/_expected/iife.js | 0 .../banner-and-footer/_expected/umd.js | 0 .../{ => samples}/banner-and-footer/main.js | 0 .../{ => samples}/block-comments/_config.js | 0 .../block-comments/_expected/amd.js | 0 .../block-comments/_expected/cjs.js | 0 .../block-comments/_expected/es.js | 0 .../block-comments/_expected/iife.js | 0 .../block-comments/_expected/umd.js | 0 test/form/{ => samples}/block-comments/foo.js | 0 .../form/{ => samples}/block-comments/main.js | 0 .../body-less-for-loops/_config.js | 0 .../body-less-for-loops/_expected/amd.js | 0 .../body-less-for-loops/_expected/cjs.js | 0 .../body-less-for-loops/_expected/es.js | 0 .../body-less-for-loops/_expected/iife.js | 0 .../body-less-for-loops/_expected/umd.js | 0 .../{ => samples}/body-less-for-loops/main.js | 0 .../class-constructor-side-effect/_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../class-constructor-side-effect/main.js | 0 .../comment-before-import/_config.js | 0 .../comment-before-import/_expected/amd.js | 0 .../comment-before-import/_expected/cjs.js | 0 .../comment-before-import/_expected/es.js | 0 .../comment-before-import/_expected/iife.js | 0 .../comment-before-import/_expected/umd.js | 0 .../comment-before-import/bar.js | 0 .../comment-before-import/foo.js | 0 .../comment-before-import/main.js | 0 .../computed-properties/_config.js | 0 .../computed-properties/_expected/amd.js | 0 .../computed-properties/_expected/cjs.js | 0 .../computed-properties/_expected/es.js | 0 .../computed-properties/_expected/iife.js | 0 .../computed-properties/_expected/umd.js | 0 .../{ => samples}/computed-properties/main.js | 0 .../_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../main.js | 0 .../conflicting-imports/_config.js | 0 .../conflicting-imports/_expected/amd.js | 0 .../conflicting-imports/_expected/cjs.js | 0 .../conflicting-imports/_expected/es.js | 0 .../conflicting-imports/_expected/iife.js | 0 .../conflicting-imports/_expected/umd.js | 0 .../{ => samples}/conflicting-imports/main.js | 0 .../conflicting-imports/other.js | 0 .../{ => samples}/custom-context/_config.js | 0 .../custom-context/_expected/amd.js | 0 .../custom-context/_expected/cjs.js | 0 .../custom-context/_expected/es.js | 0 .../custom-context/_expected/iife.js | 0 .../custom-context/_expected/umd.js | 0 .../form/{ => samples}/custom-context/main.js | 0 .../custom-module-context-function/_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../custom-module-context-function/foo.js | 0 .../custom-module-context-function/main.js | 0 .../custom-module-context/_config.js | 0 .../custom-module-context/_expected/amd.js | 0 .../custom-module-context/_expected/cjs.js | 0 .../custom-module-context/_expected/es.js | 0 .../custom-module-context/_expected/iife.js | 0 .../custom-module-context/_expected/umd.js | 0 .../custom-module-context/foo.js | 0 .../custom-module-context/main.js | 0 .../dedupes-external-imports/_config.js | 0 .../dedupes-external-imports/_expected/amd.js | 0 .../dedupes-external-imports/_expected/cjs.js | 0 .../dedupes-external-imports/_expected/es.js | 0 .../_expected/iife.js | 0 .../dedupes-external-imports/_expected/umd.js | 0 .../dedupes-external-imports/bar.js | 0 .../dedupes-external-imports/baz.js | 0 .../dedupes-external-imports/foo.js | 0 .../dedupes-external-imports/main.js | 0 .../define-replacement/_config.js | 0 .../define-replacement/_expected/amd.js | 0 .../define-replacement/_expected/cjs.js | 0 .../define-replacement/_expected/es.js | 0 .../define-replacement/_expected/iife.js | 0 .../define-replacement/_expected/umd.js | 0 .../{ => samples}/define-replacement/a.js | 0 .../{ => samples}/define-replacement/main.js | 0 .../duplicated-var-declarations/_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../duplicated-var-declarations/main.js | 0 .../_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../main.js | 0 .../effect-in-for-of-loop/_config.js | 0 .../effect-in-for-of-loop/_expected/amd.js | 0 .../effect-in-for-of-loop/_expected/cjs.js | 0 .../effect-in-for-of-loop/_expected/es.js | 0 .../effect-in-for-of-loop/_expected/iife.js | 0 .../effect-in-for-of-loop/_expected/umd.js | 0 .../effect-in-for-of-loop/main.js | 0 .../empty-block-statement/_config.js | 0 .../empty-block-statement/_expected/amd.js | 0 .../empty-block-statement/_expected/cjs.js | 0 .../empty-block-statement/_expected/es.js | 0 .../empty-block-statement/_expected/iife.js | 0 .../empty-block-statement/_expected/umd.js | 0 .../empty-block-statement/main.js | 0 .../empty-do-while-statement/_config.js | 0 .../empty-do-while-statement/_expected/amd.js | 0 .../empty-do-while-statement/_expected/cjs.js | 0 .../empty-do-while-statement/_expected/es.js | 0 .../_expected/iife.js | 0 .../empty-do-while-statement/_expected/umd.js | 0 .../empty-do-while-statement/main.js | 0 .../empty-for-in-statement/_config.js | 0 .../empty-for-in-statement/_expected/amd.js | 0 .../empty-for-in-statement/_expected/cjs.js | 0 .../empty-for-in-statement/_expected/es.js | 0 .../empty-for-in-statement/_expected/iife.js | 0 .../empty-for-in-statement/_expected/umd.js | 0 .../empty-for-in-statement/main.js | 0 .../empty-for-of-statement/_config.js | 0 .../empty-for-of-statement/_expected/amd.js | 0 .../empty-for-of-statement/_expected/cjs.js | 0 .../empty-for-of-statement/_expected/es.js | 0 .../empty-for-of-statement/_expected/iife.js | 0 .../empty-for-of-statement/_expected/umd.js | 0 .../empty-for-of-statement/main.js | 0 .../empty-for-statement/_config.js | 0 .../empty-for-statement/_expected/amd.js | 0 .../empty-for-statement/_expected/cjs.js | 0 .../empty-for-statement/_expected/es.js | 0 .../empty-for-statement/_expected/iife.js | 0 .../empty-for-statement/_expected/umd.js | 0 .../{ => samples}/empty-for-statement/main.js | 0 .../empty-if-statement/_config.js | 0 .../empty-if-statement/_expected/amd.js | 0 .../empty-if-statement/_expected/cjs.js | 0 .../empty-if-statement/_expected/es.js | 0 .../empty-if-statement/_expected/iife.js | 0 .../empty-if-statement/_expected/umd.js | 0 .../{ => samples}/empty-if-statement/main.js | 0 .../empty-statement-consequent/_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../empty-statement-consequent/main.js | 0 .../{ => samples}/empty-statement/_config.js | 0 .../empty-statement/_expected/amd.js | 0 .../empty-statement/_expected/cjs.js | 0 .../empty-statement/_expected/es.js | 0 .../empty-statement/_expected/iife.js | 0 .../empty-statement/_expected/umd.js | 0 .../{ => samples}/empty-statement/main.js | 0 .../empty-switch-statement/_config.js | 0 .../empty-switch-statement/_expected/amd.js | 0 .../empty-switch-statement/_expected/cjs.js | 0 .../empty-switch-statement/_expected/es.js | 0 .../empty-switch-statement/_expected/iife.js | 0 .../empty-switch-statement/_expected/umd.js | 0 .../empty-switch-statement/main.js | 0 .../empty-try-catch-statement/_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../empty-try-catch-statement/_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../empty-try-catch-statement/main.js | 0 .../empty-while-statement/_config.js | 0 .../empty-while-statement/_expected/amd.js | 0 .../empty-while-statement/_expected/cjs.js | 0 .../empty-while-statement/_expected/es.js | 0 .../empty-while-statement/_expected/iife.js | 0 .../empty-while-statement/_expected/umd.js | 0 .../empty-while-statement/main.js | 0 .../_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../erroneous-nested-member-expression/foo.js | 0 .../main.js | 0 .../_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../exclude-unnecessary-modifications/foo.js | 0 .../exclude-unnecessary-modifications/main.js | 0 .../exponentiation-operator/_config.js | 0 .../exponentiation-operator/_expected/amd.js | 0 .../exponentiation-operator/_expected/cjs.js | 0 .../exponentiation-operator/_expected/es.js | 0 .../exponentiation-operator/_expected/iife.js | 0 .../exponentiation-operator/_expected/umd.js | 0 .../exponentiation-operator/main.js | 0 .../export-all-from-internal/_config.js | 0 .../export-all-from-internal/_expected/amd.js | 0 .../export-all-from-internal/_expected/cjs.js | 0 .../export-all-from-internal/_expected/es.js | 0 .../_expected/iife.js | 0 .../export-all-from-internal/_expected/umd.js | 0 .../export-all-from-internal/internal.js | 0 .../export-all-from-internal/main.js | 0 .../export-all-multiple/_config.js | 0 .../export-all-multiple/_expected/amd.js | 0 .../export-all-multiple/_expected/cjs.js | 0 .../export-all-multiple/_expected/es.js | 0 .../export-all-multiple/_expected/iife.js | 0 .../export-all-multiple/_expected/umd.js | 0 .../{ => samples}/export-all-multiple/main.js | 0 .../{ => samples}/export-default-2/_config.js | 0 .../export-default-2/_expected/amd.js | 0 .../export-default-2/_expected/cjs.js | 0 .../export-default-2/_expected/es.js | 0 .../export-default-2/_expected/iife.js | 0 .../export-default-2/_expected/umd.js | 0 .../{ => samples}/export-default-2/bar.js | 0 .../{ => samples}/export-default-2/main.js | 0 .../{ => samples}/export-default-3/_config.js | 0 .../export-default-3/_expected/amd.js | 0 .../export-default-3/_expected/cjs.js | 0 .../export-default-3/_expected/es.js | 0 .../export-default-3/_expected/iife.js | 0 .../export-default-3/_expected/umd.js | 0 .../{ => samples}/export-default-3/bar.js | 0 .../{ => samples}/export-default-3/main.js | 0 .../export-default-import/_config.js | 0 .../export-default-import/_expected/amd.js | 0 .../export-default-import/_expected/cjs.js | 0 .../export-default-import/_expected/es.js | 0 .../export-default-import/_expected/iife.js | 0 .../export-default-import/_expected/umd.js | 0 .../export-default-import/main.js | 0 .../{ => samples}/export-default/_config.js | 0 .../export-default/_expected/amd.js | 0 .../export-default/_expected/cjs.js | 0 .../export-default/_expected/es.js | 0 .../export-default/_expected/iife.js | 0 .../export-default/_expected/umd.js | 0 .../form/{ => samples}/export-default/main.js | 0 .../export-multiple-vars/_config.js | 0 .../export-multiple-vars/_expected/amd.js | 0 .../export-multiple-vars/_expected/cjs.js | 0 .../export-multiple-vars/_expected/es.js | 0 .../export-multiple-vars/_expected/iife.js | 0 .../export-multiple-vars/_expected/umd.js | 0 .../{ => samples}/export-multiple-vars/bar.js | 0 .../{ => samples}/export-multiple-vars/baz.js | 0 .../{ => samples}/export-multiple-vars/foo.js | 0 .../export-multiple-vars/main.js | 0 .../exports-at-end-if-possible/_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../exports-at-end-if-possible/main.js | 0 .../{ => samples}/extend-exports/_config.js | 0 .../extend-exports/_expected/amd.js | 0 .../extend-exports/_expected/cjs.js | 0 .../extend-exports/_expected/es.js | 0 .../extend-exports/_expected/iife.js | 0 .../extend-exports/_expected/umd.js | 0 .../form/{ => samples}/extend-exports/main.js | 0 .../extend-namespaced-exports/_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../extend-namespaced-exports/_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../extend-namespaced-exports/main.js | 0 .../_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../external-empty-import-no-global-b/main.js | 0 .../_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../external-empty-import-no-global/main.js | 0 .../external-import-alias-shadow/_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../external-import-alias-shadow/main.js | 0 .../external-import-alias-shadow/parse.js | 0 .../_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../main.js | 0 .../external-imports-custom-names/_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../external-imports-custom-names/main.js | 0 .../{ => samples}/external-imports/_config.js | 0 .../external-imports/_expected/amd.js | 0 .../external-imports/_expected/cjs.js | 0 .../external-imports/_expected/es.js | 0 .../external-imports/_expected/iife.js | 0 .../external-imports/_expected/umd.js | 0 .../{ => samples}/external-imports/main.js | 0 .../for-loop-body-var-declaration/_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../for-loop-body-var-declaration/main.js | 0 .../for-loop-with-empty-head/_config.js | 0 .../for-loop-with-empty-head/_expected/amd.js | 0 .../for-loop-with-empty-head/_expected/cjs.js | 0 .../for-loop-with-empty-head/_expected/es.js | 0 .../_expected/iife.js | 0 .../for-loop-with-empty-head/_expected/umd.js | 0 .../for-loop-with-empty-head/main.js | 0 .../_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../main.js | 0 .../other.js | 0 .../_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../browser.js | 0 .../main.js | 0 .../_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../indirection.js | 0 .../main.js | 0 .../unused.js | 0 .../{ => samples}/indent-false/_config.js | 0 .../indent-false/_expected/amd.js | 0 .../indent-false/_expected/cjs.js | 0 .../indent-false/_expected/es.js | 0 .../indent-false/_expected/iife.js | 0 .../indent-false/_expected/umd.js | 0 test/form/{ => samples}/indent-false/main.js | 0 .../{ => samples}/indent-spaces/_config.js | 0 .../indent-spaces/_expected/amd.js | 0 .../indent-spaces/_expected/cjs.js | 0 .../indent-spaces/_expected/es.js | 0 .../indent-spaces/_expected/iife.js | 0 .../indent-spaces/_expected/umd.js | 0 test/form/{ => samples}/indent-spaces/main.js | 0 .../indent-true-spaces/_config.js | 0 .../indent-true-spaces/_expected/amd.js | 0 .../indent-true-spaces/_expected/cjs.js | 0 .../indent-true-spaces/_expected/es.js | 0 .../indent-true-spaces/_expected/iife.js | 0 .../indent-true-spaces/_expected/umd.js | 0 .../{ => samples}/indent-true-spaces/main.js | 0 .../form/{ => samples}/indent-true/_config.js | 0 .../indent-true/_expected/amd.js | 0 .../indent-true/_expected/cjs.js | 0 .../{ => samples}/indent-true/_expected/es.js | 0 .../indent-true/_expected/iife.js | 0 .../indent-true/_expected/umd.js | 0 test/form/{ => samples}/indent-true/main.js | 0 .../internal-conflict-resolution/_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../internal-conflict-resolution/bar.js | 0 .../internal-conflict-resolution/foo.js | 0 .../internal-conflict-resolution/main.js | 0 .../{ => samples}/interop-false/_config.js | 0 .../interop-false/_expected/amd.js | 0 .../interop-false/_expected/cjs.js | 0 .../interop-false/_expected/es.js | 0 .../interop-false/_expected/iife.js | 0 .../interop-false/_expected/umd.js | 0 test/form/{ => samples}/interop-false/main.js | 0 .../{ => samples}/intro-and-outro/_config.js | 0 .../intro-and-outro/_expected/amd.js | 0 .../intro-and-outro/_expected/cjs.js | 0 .../intro-and-outro/_expected/es.js | 0 .../intro-and-outro/_expected/iife.js | 0 .../intro-and-outro/_expected/umd.js | 0 .../{ => samples}/intro-and-outro/main.js | 0 .../{ => samples}/legacy-getter/_config.js | 0 .../legacy-getter/_expected/amd.js | 0 .../legacy-getter/_expected/cjs.js | 0 .../legacy-getter/_expected/es.js | 0 .../legacy-getter/_expected/iife.js | 0 .../legacy-getter/_expected/umd.js | 0 .../legacy-getter/browserStuff.js | 0 test/form/{ => samples}/legacy-getter/main.js | 0 .../legacy-reified-namespace/_config.js | 0 .../legacy-reified-namespace/_expected/amd.js | 0 .../legacy-reified-namespace/_expected/cjs.js | 0 .../legacy-reified-namespace/_expected/es.js | 0 .../_expected/iife.js | 0 .../legacy-reified-namespace/_expected/umd.js | 0 .../legacy-reified-namespace/main.js | 0 .../legacy-reified-namespace/namespace.js | 0 test/form/{ => samples}/legacy/_config.js | 0 .../{ => samples}/legacy/_expected/amd.js | 0 .../{ => samples}/legacy/_expected/cjs.js | 0 .../form/{ => samples}/legacy/_expected/es.js | 0 .../{ => samples}/legacy/_expected/iife.js | 0 .../{ => samples}/legacy/_expected/umd.js | 0 test/form/{ => samples}/legacy/main.js | 0 test/form/{ => samples}/legacy/namespace.js | 0 .../module-name-scoped-package/_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../module-name-scoped-package/main.js | 0 .../{ => samples}/module-name-wat/_config.js | 0 .../module-name-wat/_expected/amd.js | 0 .../module-name-wat/_expected/cjs.js | 0 .../module-name-wat/_expected/es.js | 0 .../module-name-wat/_expected/iife.js | 0 .../module-name-wat/_expected/umd.js | 0 .../{ => samples}/module-name-wat/main.js | 0 .../module-name-with-dashes/_config.js | 0 .../module-name-with-dashes/_expected/amd.js | 0 .../module-name-with-dashes/_expected/cjs.js | 0 .../module-name-with-dashes/_expected/es.js | 0 .../module-name-with-dashes/_expected/iife.js | 0 .../module-name-with-dashes/_expected/umd.js | 0 .../module-name-with-dashes/main.js | 0 .../{ => samples}/multiple-exports/_config.js | 0 .../multiple-exports/_expected/amd.js | 0 .../multiple-exports/_expected/cjs.js | 0 .../multiple-exports/_expected/es.js | 0 .../multiple-exports/_expected/iife.js | 0 .../multiple-exports/_expected/umd.js | 0 .../{ => samples}/multiple-exports/main.js | 0 .../namespace-optimization-b/_config.js | 0 .../namespace-optimization-b/_expected/amd.js | 0 .../namespace-optimization-b/_expected/cjs.js | 0 .../namespace-optimization-b/_expected/es.js | 0 .../_expected/iife.js | 0 .../namespace-optimization-b/_expected/umd.js | 0 .../namespace-optimization-b/foo.js | 0 .../namespace-optimization-b/main.js | 0 .../_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../bar.js | 0 .../foo.js | 0 .../main.js | 0 .../quux.js | 0 .../namespace-optimization/_config.js | 0 .../namespace-optimization/_expected/amd.js | 0 .../namespace-optimization/_expected/cjs.js | 0 .../namespace-optimization/_expected/es.js | 0 .../namespace-optimization/_expected/iife.js | 0 .../namespace-optimization/_expected/umd.js | 0 .../namespace-optimization/bar.js | 0 .../namespace-optimization/foo.js | 0 .../namespace-optimization/main.js | 0 .../namespace-optimization/quux.js | 0 .../namespaced-default-exports/_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../namespaced-default-exports/main.js | 0 .../namespaced-named-exports/_config.js | 0 .../namespaced-named-exports/_expected/amd.js | 0 .../namespaced-named-exports/_expected/cjs.js | 0 .../namespaced-named-exports/_expected/es.js | 0 .../_expected/iife.js | 0 .../namespaced-named-exports/_expected/umd.js | 0 .../namespaced-named-exports/main.js | 0 .../no-imports-or-exports/_config.js | 0 .../no-imports-or-exports/_expected/amd.js | 0 .../no-imports-or-exports/_expected/cjs.js | 0 .../no-imports-or-exports/_expected/es.js | 0 .../no-imports-or-exports/_expected/iife.js | 0 .../no-imports-or-exports/_expected/umd.js | 0 .../no-imports-or-exports/main.js | 0 .../no-treeshake-conflict/_config.js | 0 .../no-treeshake-conflict/_expected/amd.js | 0 .../no-treeshake-conflict/_expected/cjs.js | 0 .../no-treeshake-conflict/_expected/es.js | 0 .../no-treeshake-conflict/_expected/es6.js | 0 .../no-treeshake-conflict/_expected/iife.js | 0 .../no-treeshake-conflict/_expected/umd.js | 0 .../no-treeshake-conflict/main.js | 0 .../no-treeshake-conflict/other.js | 0 .../{ => samples}/no-treeshake/_config.js | 0 .../no-treeshake/_expected/amd.js | 0 .../no-treeshake/_expected/cjs.js | 0 .../no-treeshake/_expected/es.js | 0 .../no-treeshake/_expected/iife.js | 0 .../no-treeshake/_expected/umd.js | 0 test/form/{ => samples}/no-treeshake/foo.js | 0 test/form/{ => samples}/no-treeshake/main.js | 0 test/form/{ => samples}/no-treeshake/quux.js | 0 .../non-empty-block-statement/_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../non-empty-block-statement/_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../non-empty-block-statement/main.js | 0 .../_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../main.js | 0 .../{ => samples}/paths-function/_config.js | 0 .../paths-function/_expected/amd.js | 0 .../paths-function/_expected/cjs.js | 0 .../paths-function/_expected/es.js | 0 .../paths-function/_expected/iife.js | 0 .../paths-function/_expected/umd.js | 0 .../form/{ => samples}/paths-function/main.js | 0 .../{ => samples}/paths-relative/_config.js | 0 .../paths-relative/_expected/amd.js | 0 .../paths-relative/_expected/cjs.js | 0 .../paths-relative/_expected/es.js | 0 .../paths-relative/_expected/iife.js | 0 .../paths-relative/_expected/umd.js | 0 .../form/{ => samples}/paths-relative/main.js | 0 test/form/{ => samples}/paths/_config.js | 0 .../form/{ => samples}/paths/_expected/amd.js | 0 .../form/{ => samples}/paths/_expected/cjs.js | 0 test/form/{ => samples}/paths/_expected/es.js | 0 .../{ => samples}/paths/_expected/iife.js | 0 .../form/{ => samples}/paths/_expected/umd.js | 0 test/form/{ => samples}/paths/main.js | 0 .../{ => samples}/prefer-const/_config.js | 0 .../prefer-const/_expected/amd.js | 0 .../prefer-const/_expected/cjs.js | 0 .../prefer-const/_expected/es.js | 0 .../prefer-const/_expected/iife.js | 0 .../prefer-const/_expected/umd.js | 0 test/form/{ => samples}/prefer-const/main.js | 0 .../{ => samples}/prefer-const/namespace.js | 0 .../preserve-debugger/_config.js | 0 .../preserve-debugger/_expected/amd.js | 0 .../preserve-debugger/_expected/cjs.js | 0 .../preserve-debugger/_expected/es.js | 0 .../preserve-debugger/_expected/iife.js | 0 .../preserve-debugger/_expected/umd.js | 0 .../{ => samples}/preserve-debugger/main.js | 0 .../_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../preserves-comments-after-imports/main.js | 0 .../number.js | 0 .../prune-pure-unused-import-array/_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../prune-pure-unused-import-array/main.js | 0 .../_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../prune-pure-unused-import-function/main.js | 0 .../prune-pure-unused-import/_config.js | 0 .../prune-pure-unused-import/_expected/amd.js | 0 .../prune-pure-unused-import/_expected/cjs.js | 0 .../prune-pure-unused-import/_expected/es.js | 0 .../_expected/iife.js | 0 .../prune-pure-unused-import/_expected/umd.js | 0 .../prune-pure-unused-import/main.js | 0 .../reexports-from-external/_config.js | 0 .../reexports-from-external/_expected/amd.js | 0 .../reexports-from-external/_expected/cjs.js | 0 .../reexports-from-external/_expected/es.js | 0 .../reexports-from-external/_expected/iife.js | 0 .../reexports-from-external/_expected/umd.js | 0 .../reexports-from-external/main.js | 0 .../relative-external-with-global/_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../relative-external-with-global/main.js | 0 .../_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../foo.js | 0 .../main.js | 0 .../_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../main.js | 0 .../self-calling-function/_config.js | 0 .../self-calling-function/_expected/amd.js | 0 .../self-calling-function/_expected/cjs.js | 0 .../self-calling-function/_expected/es.js | 0 .../self-calling-function/_expected/iife.js | 0 .../self-calling-function/_expected/umd.js | 0 .../self-calling-function/main.js | 0 .../self-contained-bundle/_config.js | 0 .../self-contained-bundle/_expected/amd.js | 0 .../self-contained-bundle/_expected/cjs.js | 0 .../self-contained-bundle/_expected/es.js | 0 .../self-contained-bundle/_expected/iife.js | 0 .../self-contained-bundle/_expected/umd.js | 0 .../self-contained-bundle/foo.js | 0 .../self-contained-bundle/main.js | 0 .../shorthand-properties/_config.js | 0 .../shorthand-properties/_expected/amd.js | 0 .../shorthand-properties/_expected/cjs.js | 0 .../shorthand-properties/_expected/es.js | 0 .../shorthand-properties/_expected/iife.js | 0 .../shorthand-properties/_expected/umd.js | 0 .../{ => samples}/shorthand-properties/bar.js | 0 .../{ => samples}/shorthand-properties/baz.js | 0 .../{ => samples}/shorthand-properties/foo.js | 0 .../shorthand-properties/main.js | 0 .../{ => samples}/side-effect-b/_config.js | 0 .../side-effect-b/_expected/amd.js | 0 .../side-effect-b/_expected/cjs.js | 0 .../side-effect-b/_expected/es.js | 0 .../side-effect-b/_expected/iife.js | 0 .../side-effect-b/_expected/umd.js | 0 test/form/{ => samples}/side-effect-b/main.js | 0 .../{ => samples}/side-effect-c/_config.js | 0 .../side-effect-c/_expected/amd.js | 0 .../side-effect-c/_expected/cjs.js | 0 .../side-effect-c/_expected/es.js | 0 .../side-effect-c/_expected/iife.js | 0 .../side-effect-c/_expected/umd.js | 0 test/form/{ => samples}/side-effect-c/main.js | 0 .../{ => samples}/side-effect-d/_config.js | 0 .../side-effect-d/_expected/amd.js | 0 .../side-effect-d/_expected/cjs.js | 0 .../side-effect-d/_expected/es.js | 0 .../side-effect-d/_expected/iife.js | 0 .../side-effect-d/_expected/umd.js | 0 test/form/{ => samples}/side-effect-d/main.js | 0 .../{ => samples}/side-effect-e/_config.js | 0 .../side-effect-e/_expected/amd.js | 0 .../side-effect-e/_expected/cjs.js | 0 .../side-effect-e/_expected/es.js | 0 .../side-effect-e/_expected/iife.js | 0 .../side-effect-e/_expected/umd.js | 0 test/form/{ => samples}/side-effect-e/main.js | 0 .../side-effect-es5-classes/_config.js | 0 .../side-effect-es5-classes/_expected/amd.js | 0 .../side-effect-es5-classes/_expected/cjs.js | 0 .../side-effect-es5-classes/_expected/es.js | 0 .../side-effect-es5-classes/_expected/iife.js | 0 .../side-effect-es5-classes/_expected/umd.js | 0 .../side-effect-es5-classes/arrow.js | 0 .../side-effect-es5-classes/bar.js | 0 .../side-effect-es5-classes/baz.js | 0 .../side-effect-es5-classes/corge.js | 0 .../side-effect-es5-classes/foo.js | 0 .../side-effect-es5-classes/main.js | 0 .../side-effect-es5-classes/qux.js | 0 .../{ => samples}/side-effect-f/_config.js | 0 .../side-effect-f/_expected/amd.js | 0 .../side-effect-f/_expected/cjs.js | 0 .../side-effect-f/_expected/es.js | 0 .../side-effect-f/_expected/iife.js | 0 .../side-effect-f/_expected/umd.js | 0 test/form/{ => samples}/side-effect-f/main.js | 0 .../{ => samples}/side-effect-g/_config.js | 0 .../side-effect-g/_expected/amd.js | 0 .../side-effect-g/_expected/cjs.js | 0 .../side-effect-g/_expected/es.js | 0 .../side-effect-g/_expected/iife.js | 0 .../side-effect-g/_expected/umd.js | 0 test/form/{ => samples}/side-effect-g/main.js | 0 .../{ => samples}/side-effect-h/_config.js | 0 .../side-effect-h/_expected/amd.js | 0 .../side-effect-h/_expected/cjs.js | 0 .../side-effect-h/_expected/es.js | 0 .../side-effect-h/_expected/iife.js | 0 .../side-effect-h/_expected/umd.js | 0 test/form/{ => samples}/side-effect-h/main.js | 0 .../{ => samples}/side-effect-i/_config.js | 0 .../side-effect-i/_expected/amd.js | 0 .../side-effect-i/_expected/cjs.js | 0 .../side-effect-i/_expected/es.js | 0 .../side-effect-i/_expected/iife.js | 0 .../side-effect-i/_expected/umd.js | 0 test/form/{ => samples}/side-effect-i/main.js | 0 .../{ => samples}/side-effect-j/_config.js | 0 .../side-effect-j/_expected/amd.js | 0 .../side-effect-j/_expected/cjs.js | 0 .../side-effect-j/_expected/es.js | 0 .../side-effect-j/_expected/iife.js | 0 .../side-effect-j/_expected/umd.js | 0 test/form/{ => samples}/side-effect-j/foo.js | 0 test/form/{ => samples}/side-effect-j/main.js | 0 .../{ => samples}/side-effect-k/_config.js | 0 .../side-effect-k/_expected/amd.js | 0 .../side-effect-k/_expected/cjs.js | 0 .../side-effect-k/_expected/es.js | 0 .../side-effect-k/_expected/iife.js | 0 .../side-effect-k/_expected/umd.js | 0 test/form/{ => samples}/side-effect-k/foo.js | 0 test/form/{ => samples}/side-effect-k/main.js | 0 .../{ => samples}/side-effect-l/_config.js | 0 .../side-effect-l/_expected/amd.js | 0 .../side-effect-l/_expected/cjs.js | 0 .../side-effect-l/_expected/es.js | 0 .../side-effect-l/_expected/iife.js | 0 .../side-effect-l/_expected/umd.js | 0 test/form/{ => samples}/side-effect-l/foo.js | 0 test/form/{ => samples}/side-effect-l/main.js | 0 .../{ => samples}/side-effect-m/_config.js | 0 .../side-effect-m/_expected/amd.js | 0 .../side-effect-m/_expected/cjs.js | 0 .../side-effect-m/_expected/es.js | 0 .../side-effect-m/_expected/iife.js | 0 .../side-effect-m/_expected/umd.js | 0 test/form/{ => samples}/side-effect-m/even.js | 0 test/form/{ => samples}/side-effect-m/main.js | 0 test/form/{ => samples}/side-effect-m/odd.js | 0 .../{ => samples}/side-effect-n/_config.js | 0 .../side-effect-n/_expected/amd.js | 0 .../side-effect-n/_expected/cjs.js | 0 .../side-effect-n/_expected/es.js | 0 .../side-effect-n/_expected/iife.js | 0 .../side-effect-n/_expected/umd.js | 0 test/form/{ => samples}/side-effect-n/main.js | 0 .../{ => samples}/side-effect-o/_config.js | 0 .../side-effect-o/_expected/amd.js | 0 .../side-effect-o/_expected/cjs.js | 0 .../side-effect-o/_expected/es.js | 0 .../side-effect-o/_expected/iife.js | 0 .../side-effect-o/_expected/umd.js | 0 test/form/{ => samples}/side-effect-o/main.js | 0 .../{ => samples}/side-effect-p/_config.js | 0 .../side-effect-p/_expected/amd.js | 0 .../side-effect-p/_expected/cjs.js | 0 .../side-effect-p/_expected/es.js | 0 .../side-effect-p/_expected/iife.js | 0 .../side-effect-p/_expected/umd.js | 0 test/form/{ => samples}/side-effect-p/bool.js | 0 test/form/{ => samples}/side-effect-p/main.js | 0 .../{ => samples}/side-effect-q/_config.js | 0 .../side-effect-q/_expected/amd.js | 0 .../side-effect-q/_expected/cjs.js | 0 .../side-effect-q/_expected/es.js | 0 .../side-effect-q/_expected/iife.js | 0 .../side-effect-q/_expected/umd.js | 0 test/form/{ => samples}/side-effect-q/main.js | 0 .../{ => samples}/side-effect-r/_config.js | 0 .../side-effect-r/_expected/amd.js | 0 .../side-effect-r/_expected/cjs.js | 0 .../side-effect-r/_expected/es.js | 0 .../side-effect-r/_expected/iife.js | 0 .../side-effect-r/_expected/umd.js | 0 test/form/{ => samples}/side-effect-r/main.js | 0 .../{ => samples}/side-effect-s/_config.js | 0 .../side-effect-s/_expected/amd.js | 0 .../side-effect-s/_expected/cjs.js | 0 .../side-effect-s/_expected/es.js | 0 .../side-effect-s/_expected/iife.js | 0 .../side-effect-s/_expected/umd.js | 0 test/form/{ => samples}/side-effect-s/main.js | 0 .../{ => samples}/side-effect-t/_config.js | 0 .../side-effect-t/_expected/amd.js | 0 .../side-effect-t/_expected/cjs.js | 0 .../side-effect-t/_expected/es.js | 0 .../side-effect-t/_expected/iife.js | 0 .../side-effect-t/_expected/umd.js | 0 test/form/{ => samples}/side-effect-t/main.js | 0 .../form/{ => samples}/side-effect/_config.js | 0 .../side-effect/_expected/amd.js | 0 .../side-effect/_expected/cjs.js | 0 .../{ => samples}/side-effect/_expected/es.js | 0 .../side-effect/_expected/iife.js | 0 .../side-effect/_expected/umd.js | 0 test/form/{ => samples}/side-effect/foo.js | 0 test/form/{ => samples}/side-effect/main.js | 0 .../_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../side-effects-in-template-literals/main.js | 0 .../skips-dead-branches-b/_config.js | 0 .../skips-dead-branches-b/_expected/amd.js | 0 .../skips-dead-branches-b/_expected/cjs.js | 0 .../skips-dead-branches-b/_expected/es.js | 0 .../skips-dead-branches-b/_expected/iife.js | 0 .../skips-dead-branches-b/_expected/umd.js | 0 .../skips-dead-branches-b/main.js | 0 .../skips-dead-branches-c/_config.js | 0 .../skips-dead-branches-c/_expected/amd.js | 0 .../skips-dead-branches-c/_expected/cjs.js | 0 .../skips-dead-branches-c/_expected/es.js | 0 .../skips-dead-branches-c/_expected/iife.js | 0 .../skips-dead-branches-c/_expected/umd.js | 0 .../skips-dead-branches-c/main.js | 0 .../skips-dead-branches-d/_config.js | 0 .../skips-dead-branches-d/_expected/amd.js | 0 .../skips-dead-branches-d/_expected/cjs.js | 0 .../skips-dead-branches-d/_expected/es.js | 0 .../skips-dead-branches-d/_expected/iife.js | 0 .../skips-dead-branches-d/_expected/umd.js | 0 .../skips-dead-branches-d/main.js | 0 .../skips-dead-branches-e/_config.js | 0 .../skips-dead-branches-e/_expected/amd.js | 0 .../skips-dead-branches-e/_expected/cjs.js | 0 .../skips-dead-branches-e/_expected/es.js | 0 .../skips-dead-branches-e/_expected/iife.js | 0 .../skips-dead-branches-e/_expected/umd.js | 0 .../skips-dead-branches-e/main.js | 0 .../skips-dead-branches-f/_config.js | 0 .../skips-dead-branches-f/_expected/amd.js | 0 .../skips-dead-branches-f/_expected/cjs.js | 0 .../skips-dead-branches-f/_expected/es.js | 0 .../skips-dead-branches-f/_expected/iife.js | 0 .../skips-dead-branches-f/_expected/umd.js | 0 .../skips-dead-branches-f/main.js | 0 .../skips-dead-branches-g/_config.js | 0 .../skips-dead-branches-g/_expected/amd.js | 0 .../skips-dead-branches-g/_expected/cjs.js | 0 .../skips-dead-branches-g/_expected/es.js | 0 .../skips-dead-branches-g/_expected/iife.js | 0 .../skips-dead-branches-g/_expected/umd.js | 0 .../skips-dead-branches-g/main.js | 0 .../skips-dead-branches-h/_config.js | 0 .../skips-dead-branches-h/_expected/amd.js | 0 .../skips-dead-branches-h/_expected/cjs.js | 0 .../skips-dead-branches-h/_expected/es.js | 0 .../skips-dead-branches-h/_expected/iife.js | 0 .../skips-dead-branches-h/_expected/umd.js | 0 .../skips-dead-branches-h/main.js | 0 .../skips-dead-branches-i/_config.js | 0 .../skips-dead-branches-i/_expected/amd.js | 0 .../skips-dead-branches-i/_expected/cjs.js | 0 .../skips-dead-branches-i/_expected/es.js | 0 .../skips-dead-branches-i/_expected/iife.js | 0 .../skips-dead-branches-i/_expected/umd.js | 0 .../skips-dead-branches-i/main.js | 0 .../skips-dead-branches-j/_config.js | 0 .../skips-dead-branches-j/_expected/amd.js | 0 .../skips-dead-branches-j/_expected/cjs.js | 0 .../skips-dead-branches-j/_expected/es.js | 0 .../skips-dead-branches-j/_expected/iife.js | 0 .../skips-dead-branches-j/_expected/umd.js | 0 .../skips-dead-branches-j/main.js | 0 .../skips-dead-branches/_config.js | 0 .../skips-dead-branches/_expected/amd.js | 0 .../skips-dead-branches/_expected/cjs.js | 0 .../skips-dead-branches/_expected/es.js | 0 .../skips-dead-branches/_expected/iife.js | 0 .../skips-dead-branches/_expected/umd.js | 0 .../{ => samples}/skips-dead-branches/main.js | 0 .../sourcemaps-external/_config.js | 0 .../sourcemaps-external/_expected/amd.js | 0 .../sourcemaps-external/_expected/amd.js.map | 0 .../sourcemaps-external/_expected/cjs.js | 0 .../sourcemaps-external/_expected/cjs.js.map | 0 .../sourcemaps-external/_expected/es.js | 0 .../sourcemaps-external/_expected/es.js.map | 0 .../sourcemaps-external/_expected/iife.js | 0 .../sourcemaps-external/_expected/iife.js.map | 0 .../sourcemaps-external/_expected/umd.js | 0 .../sourcemaps-external/_expected/umd.js.map | 0 .../{ => samples}/sourcemaps-external/bar.js | 0 .../{ => samples}/sourcemaps-external/foo.js | 0 .../{ => samples}/sourcemaps-external/main.js | 0 .../sourcemaps-inline/_config.js | 0 .../sourcemaps-inline/_expected/amd.js | 0 .../sourcemaps-inline/_expected/cjs.js | 0 .../sourcemaps-inline/_expected/es.js | 0 .../sourcemaps-inline/_expected/iife.js | 0 .../sourcemaps-inline/_expected/umd.js | 0 .../{ => samples}/sourcemaps-inline/bar.js | 0 .../{ => samples}/sourcemaps-inline/foo.js | 0 .../{ => samples}/sourcemaps-inline/main.js | 0 .../_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../main.js | 0 .../string-indentation-b/_config.js | 0 .../string-indentation-b/_expected/amd.js | 0 .../string-indentation-b/_expected/cjs.js | 0 .../string-indentation-b/_expected/es.js | 0 .../string-indentation-b/_expected/iife.js | 0 .../string-indentation-b/_expected/umd.js | 0 .../string-indentation-b/main.js | 0 .../string-indentation/_config.js | 0 .../string-indentation/_expected/amd.js | 0 .../string-indentation/_expected/cjs.js | 0 .../string-indentation/_expected/es.js | 0 .../string-indentation/_expected/iife.js | 0 .../string-indentation/_expected/umd.js | 0 .../{ => samples}/string-indentation/main.js | 0 .../{ => samples}/switch-scopes/_config.js | 0 .../switch-scopes/_expected/amd.js | 0 .../switch-scopes/_expected/cjs.js | 0 .../switch-scopes/_expected/es.js | 0 .../switch-scopes/_expected/iife.js | 0 .../switch-scopes/_expected/umd.js | 0 test/form/{ => samples}/switch-scopes/main.js | 0 .../this-is-undefined/_config.js | 0 .../this-is-undefined/_expected/amd.js | 0 .../this-is-undefined/_expected/cjs.js | 0 .../this-is-undefined/_expected/es.js | 0 .../this-is-undefined/_expected/iife.js | 0 .../this-is-undefined/_expected/umd.js | 0 .../{ => samples}/this-is-undefined/main.js | 0 .../_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../transform-bundle-plugin-options/main.js | 0 .../transform-bundle-plugin/_config.js | 0 .../transform-bundle-plugin/_expected/amd.js | 0 .../transform-bundle-plugin/_expected/cjs.js | 0 .../transform-bundle-plugin/_expected/es.js | 0 .../transform-bundle-plugin/_expected/iife.js | 0 .../transform-bundle-plugin/_expected/umd.js | 0 .../transform-bundle-plugin/main.js | 0 .../umd-noconflict-extend/_config.js | 0 .../umd-noconflict-extend/_expected/amd.js | 0 .../umd-noconflict-extend/_expected/cjs.js | 0 .../umd-noconflict-extend/_expected/es.js | 0 .../umd-noconflict-extend/_expected/iife.js | 0 .../umd-noconflict-extend/_expected/umd.js | 0 .../umd-noconflict-extend/main.js | 0 .../umd-noconflict-namespaced/_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../umd-noconflict-namespaced/_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../umd-noconflict-namespaced/main.js | 0 .../{ => samples}/umd-noconflict/_config.js | 0 .../umd-noconflict/_expected/amd.js | 0 .../umd-noconflict/_expected/cjs.js | 0 .../umd-noconflict/_expected/es.js | 0 .../umd-noconflict/_expected/iife.js | 0 .../umd-noconflict/_expected/umd.js | 0 .../form/{ => samples}/umd-noconflict/main.js | 0 .../_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../foo.js | 0 .../main.js | 0 .../unmodified-default-exports/_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../unmodified-default-exports/foo.js | 0 .../unmodified-default-exports/main.js | 0 .../unused-called-import/_config.js | 0 .../unused-called-import/_expected/amd.js | 0 .../unused-called-import/_expected/cjs.js | 0 .../unused-called-import/_expected/es.js | 0 .../unused-called-import/_expected/iife.js | 0 .../unused-called-import/_expected/umd.js | 0 .../unused-called-import/dead.js | 0 .../{ => samples}/unused-called-import/foo.js | 0 .../unused-called-import/main.js | 0 .../_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../unused-called-with-side-effects/main.js | 0 .../unused-default-exports/_config.js | 0 .../unused-default-exports/_expected/amd.js | 0 .../unused-default-exports/_expected/cjs.js | 0 .../unused-default-exports/_expected/es.js | 0 .../unused-default-exports/_expected/iife.js | 0 .../unused-default-exports/_expected/umd.js | 0 .../unused-default-exports/foo.js | 0 .../unused-default-exports/main.js | 0 .../{ => samples}/unused-import/_config.js | 0 .../unused-import/_expected/amd.js | 0 .../unused-import/_expected/cjs.js | 0 .../unused-import/_expected/es.js | 0 .../unused-import/_expected/iife.js | 0 .../unused-import/_expected/umd.js | 0 test/form/{ => samples}/unused-import/main.js | 0 .../_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../main.js | 0 .../stuff.js | 0 test/form/{ => samples}/unused-var/_config.js | 0 .../{ => samples}/unused-var/_expected/amd.js | 0 .../{ => samples}/unused-var/_expected/cjs.js | 0 .../{ => samples}/unused-var/_expected/es.js | 0 .../unused-var/_expected/iife.js | 0 .../{ => samples}/unused-var/_expected/umd.js | 0 test/form/{ => samples}/unused-var/foo.js | 0 test/form/{ => samples}/unused-var/main.js | 0 .../_config.js | 0 .../_expected/amd.js | 0 .../_expected/cjs.js | 0 .../_expected/es.js | 0 .../_expected/iife.js | 0 .../_expected/umd.js | 0 .../foo.js | 0 .../main.js | 0 test/function/index.js | 148 ++ .../adds-semicolons-if-necessary-b/_config.js | 0 .../adds-semicolons-if-necessary-b/foo.js | 0 .../adds-semicolons-if-necessary-b/main.js | 0 .../adds-semicolons-if-necessary-c/_config.js | 0 .../adds-semicolons-if-necessary-c/foo.js | 0 .../adds-semicolons-if-necessary-c/main.js | 0 .../adds-semicolons-if-necessary/_config.js | 0 .../adds-semicolons-if-necessary/foo.js | 0 .../adds-semicolons-if-necessary/main.js | 0 .../aliased-not-exported-twice/_config.js | 0 .../aliased-not-exported-twice/foo.js | 0 .../aliased-not-exported-twice/main.js | 0 .../{ => samples}/allow-reserved/_config.js | 0 .../{ => samples}/allow-reserved/main.js | 0 .../_config.js | 0 .../foo.js | 0 .../main.js | 0 .../_config.js | 0 .../allows-unknown-binary-operators/main.js | 0 .../already-deshadowed-import/_config.js | 0 .../already-deshadowed-import/alice.js | 0 .../already-deshadowed-import/bob.js | 0 .../already-deshadowed-import/main.js | 0 .../assign-namespace-to-var/_config.js | 0 .../assign-namespace-to-var/b.js | 0 .../assign-namespace-to-var/main.js | 0 .../assignment-patterns/_config.js | 0 .../{ => samples}/assignment-patterns/main.js | 0 .../assignment-patterns/other.js | 0 .../assignment-to-exports-b/_config.js | 0 .../assignment-to-exports-b/main.js | 0 .../assignment-to-exports/_config.js | 0 .../assignment-to-exports/main.js | 0 .../_config.js | 0 .../count.js | 0 .../assignment-to-re-exports-conflict/main.js | 0 .../assignment-to-re-exports/_config.js | 0 .../assignment-to-re-exports/count.js | 0 .../assignment-to-re-exports/main.js | 0 .../{ => samples}/bindings/_config.js | 0 test/function/{ => samples}/bindings/foo.js | 0 test/function/{ => samples}/bindings/main.js | 0 .../_config.js | 0 .../main.js | 0 .../bundle-transformer-async/_config.js | 0 .../bundle-transformer-async/main.js | 0 .../call-external-function/_config.js | 0 .../call-external-function/foo.js | 0 .../call-external-function/main.js | 0 .../_config.js | 0 .../call-non-function-default-exports/foo.js | 0 .../call-non-function-default-exports/main.js | 0 .../cannot-call-external-namespace/_config.js | 0 .../cannot-call-external-namespace/main.js | 0 .../cannot-call-internal-namespace/_config.js | 0 .../cannot-call-internal-namespace/foo.js | 0 .../cannot-call-internal-namespace/main.js | 0 .../cannot-import-self-empty/_config.js | 0 .../cannot-import-self-empty/main.js | 0 .../cannot-import-self/_config.js | 0 .../{ => samples}/cannot-import-self/main.js | 0 .../check-resolve-for-entry/_config.js | 0 .../class-methods-not-renamed/_config.js | 0 .../class-methods-not-renamed/foo.js | 0 .../class-methods-not-renamed/main.js | 0 .../conditional-definition/_config.js | 0 .../conditional-definition/env.js | 0 .../conditional-definition/main.js | 0 .../configure-external-module-b/_config.js | 0 .../configure-external-module-b/main.js | 0 .../configure-external-module/_config.js | 0 .../configure-external-module/main.js | 0 .../_config.js | 0 .../main.js | 0 .../confused-default-identifier/_config.js | 0 .../confused-default-identifier/foo.js | 0 .../confused-default-identifier/main.js | 0 .../consistent-renaming-b/_config.js | 0 .../consistent-renaming-b/altdir/two.js | 0 .../consistent-renaming-b/main.js | 0 .../consistent-renaming-b/subdir/one.js | 0 .../consistent-renaming-b/subdir/two.js | 0 .../consistent-renaming-c/-internal.js | 0 .../consistent-renaming-c/_config.js | 0 .../consistent-renaming-c/main.js | 0 .../consistent-renaming-c/one.js | 0 .../consistent-renaming-c/one/three.js | 0 .../consistent-renaming-c/one/two.js | 0 .../consistent-renaming-c/two.js | 0 .../consistent-renaming-d/Baz.js | 0 .../consistent-renaming-d/_config.js | 0 .../consistent-renaming-d/bar.js | 0 .../consistent-renaming-d/foo.js | 0 .../consistent-renaming-d/foo/baz.js | 0 .../consistent-renaming-d/main.js | 0 .../consistent-renaming-e/_config.js | 0 .../{ => samples}/consistent-renaming-e/a.js | 0 .../{ => samples}/consistent-renaming-e/b.js | 0 .../consistent-renaming-e/main.js | 0 .../consistent-renaming-e/utils.js | 0 .../consistent-renaming-f/_config.js | 0 .../consistent-renaming-f/bar.js | 0 .../consistent-renaming-f/main.js | 0 .../consistent-renaming/_config.js | 0 .../{ => samples}/consistent-renaming/main.js | 0 .../{ => samples}/consistent-renaming/one.js | 0 .../consistent-renaming/three.js | 0 .../{ => samples}/consistent-renaming/two.js | 0 .../custom-external-resolver-async/_config.js | 0 .../js_modules/external.js | 0 .../custom-external-resolver-async/main.js | 0 .../custom-external-resolver-sync/_config.js | 0 .../js_modules/external.js | 0 .../custom-external-resolver-sync/main.js | 0 .../{ => samples}/custom-loaders/_config.js | 0 .../{ => samples}/custom-loaders/bar.js | 0 .../{ => samples}/custom-loaders/baz.js | 0 .../{ => samples}/custom-loaders/foo.js | 0 .../{ => samples}/custom-loaders/main.js | 0 .../custom-path-resolver-async/_config.js | 0 .../custom-path-resolver-async/bar.js | 0 .../custom-path-resolver-async/main.js | 0 .../custom-path-resolver-on-entry/_config.js | 0 .../custom-path-resolver-on-entry/bar.js | 0 .../custom-path-resolver-on-entry/foo.js | 0 .../custom-path-resolver-plural-b/_config.js | 0 .../custom-path-resolver-plural/_config.js | 0 .../globals-math.js | 0 .../custom-path-resolver-plural/main.js | 0 .../custom-path-resolver-sync/_config.js | 0 .../custom-path-resolver-sync/bar.js | 0 .../custom-path-resolver-sync/main.js | 0 .../{ => samples}/cycles-defaults/_config.js | 0 .../{ => samples}/cycles-defaults/a.js | 0 .../{ => samples}/cycles-defaults/b.js | 0 .../{ => samples}/cycles-defaults/main.js | 0 .../{ => samples}/cycles-immediate/_config.js | 0 .../{ => samples}/cycles-immediate/evens.js | 0 .../{ => samples}/cycles-immediate/main.js | 0 .../{ => samples}/cycles-immediate/odds.js | 0 .../cycles-pathological-2/_config.js | 0 .../{ => samples}/cycles-pathological-2/b.js | 0 .../{ => samples}/cycles-pathological-2/c.js | 0 .../{ => samples}/cycles-pathological-2/d.js | 0 .../cycles-pathological-2/main.js | 0 .../{ => samples}/cycles-pathological/A.js | 0 .../{ => samples}/cycles-pathological/B.js | 0 .../{ => samples}/cycles-pathological/C.js | 0 .../{ => samples}/cycles-pathological/D.js | 0 .../cycles-pathological/_config.js | 0 .../{ => samples}/cycles-pathological/main.js | 0 .../cycles-stack-overflow/_config.js | 0 .../{ => samples}/cycles-stack-overflow/b.js | 0 .../{ => samples}/cycles-stack-overflow/c.js | 0 .../{ => samples}/cycles-stack-overflow/d.js | 0 .../cycles-stack-overflow/main.js | 0 .../deconflicts-classes/_config.js | 0 .../{ => samples}/deconflicts-classes/a.js | 0 .../{ => samples}/deconflicts-classes/b.js | 0 .../{ => samples}/deconflicts-classes/main.js | 0 .../deconflicts-exports/_config.js | 0 .../{ => samples}/deconflicts-exports/main.js | 0 .../deconflicts-external-imports/_config.js | 0 .../deconflicts-external-imports/a.js | 0 .../deconflicts-external-imports/b.js | 0 .../deconflicts-external-imports/main.js | 0 .../_config.js | 0 .../foo.js | 0 .../main.js | 0 .../deconflicts-globals/_config.js | 0 .../{ => samples}/deconflicts-globals/bar.js | 0 .../{ => samples}/deconflicts-globals/foo.js | 0 .../{ => samples}/deconflicts-globals/main.js | 0 .../deconstructed-exported-vars/_config.js | 0 .../deconstructed-exported-vars/main.js | 0 .../default-export-as-is-bound/_config.js | 0 .../default-export-as-is-bound/foo.js | 0 .../default-export-as-is-bound/main.js | 0 .../default-export-is-not-bound-b/_config.js | 0 .../default-export-is-not-bound-b/foo.js | 0 .../default-export-is-not-bound-b/main.js | 0 .../default-export-is-not-bound/_config.js | 0 .../default-export-is-not-bound/foo.js | 0 .../default-export-is-not-bound/main.js | 0 .../default-exports-in-parens/_config.js | 0 .../default-exports-in-parens/foo.js | 0 .../default-exports-in-parens/main.js | 0 .../_config.js | 0 .../default-function-export-conflict/foo.js | 0 .../default-function-export-conflict/main.js | 0 .../default-not-reexported/_config.js | 0 .../default-not-reexported/bar.js | 0 .../default-not-reexported/foo.js | 0 .../default-not-reexported/main.js | 0 test/function/{ => samples}/delete/_config.js | 0 test/function/{ => samples}/delete/main.js | 0 .../deshadow-top-level-declaration/_config.js | 0 .../deshadow-top-level-declaration/a.js | 0 .../deshadow-top-level-declaration/b.js | 0 .../deshadow-top-level-declaration/foo.js | 0 .../deshadow-top-level-declaration/main.js | 0 .../deshadow-top-level-declaration/x.js | 0 .../_config.js | 0 .../deshadowed-destructured-parameter/main.js | 0 .../deshadowed-destructured-parameter/x.js | 0 .../deshadowed-shorthand-property/_config.js | 0 .../deshadowed-shorthand-property/foo.js | 0 .../deshadowed-shorthand-property/main.js | 0 .../_config.js | 0 .../deshadows-function-expression-id/foo.js | 0 .../deshadows-function-expression-id/main.js | 0 .../disappearing-exported-value/_config.js | 0 .../disappearing-exported-value/answer.js | 0 .../disappearing-exported-value/main.js | 0 .../_config.js | 0 .../does-not-hang-on-missing-module/main.js | 0 .../does-not-mangle-entry-point/_config.js | 0 .../double-default-export/_config.js | 0 .../double-default-export/foo.js | 0 .../double-default-export/main.js | 0 .../double-named-export/_config.js | 0 .../{ => samples}/double-named-export/foo.js | 0 .../{ => samples}/double-named-export/main.js | 0 .../double-named-reexport/_config.js | 0 .../double-named-reexport/bar.js | 0 .../double-named-reexport/foo.js | 0 .../double-named-reexport/main.js | 0 .../duplicate-import-fails/_config.js | 0 .../duplicate-import-fails/foo.js | 0 .../duplicate-import-fails/main.js | 0 .../_config.js | 0 .../duplicate-import-specifier-fails/foo.js | 0 .../duplicate-import-specifier-fails/main.js | 0 .../dynamic-namespace-lookup/_config.js | 0 .../dynamic-namespace-lookup/foo.js | 0 .../dynamic-namespace-lookup/main.js | 0 .../_config.js | 0 .../empty-imports-have-side-effects/foo.js | 0 .../empty-imports-have-side-effects/main.js | 0 .../es5-class-called-without-new/_config.js | 0 .../es5-class-called-without-new/foo.js | 0 .../es5-class-called-without-new/main.js | 0 .../export-all-from-external/_config.js | 0 .../export-all-from-external/main.js | 0 .../export-all-from-external/path-plus.js | 0 .../export-all-multiple/_config.js | 0 .../{ => samples}/export-all-multiple/bar.js | 0 .../{ => samples}/export-all-multiple/foo.js | 0 .../{ => samples}/export-all-multiple/main.js | 0 .../{ => samples}/export-all/_config.js | 0 .../function/{ => samples}/export-all/main.js | 0 .../{ => samples}/export-all/wat-impl.js | 0 test/function/{ => samples}/export-all/wat.js | 0 .../_config.js | 0 .../foo.js | 0 .../main.js | 0 .../{ => samples}/export-as/_config.js | 0 test/function/{ => samples}/export-as/foo.js | 0 test/function/{ => samples}/export-as/main.js | 0 .../export-deconflicted-names/_config.js | 0 .../export-deconflicted-names/bar.js | 0 .../export-deconflicted-names/baz.js | 0 .../export-deconflicted-names/foo.js | 0 .../export-deconflicted-names/main.js | 0 .../_config.js | 0 .../answer.js | 0 .../export-default-anonymous-function/main.js | 0 .../export-default-as-b/_config.js | 0 .../{ => samples}/export-default-as-b/bar.js | 0 .../{ => samples}/export-default-as-b/baz.js | 0 .../{ => samples}/export-default-as-b/main.js | 0 .../export-default-as-c/_config.js | 0 .../{ => samples}/export-default-as-c/baz.js | 0 .../{ => samples}/export-default-as-c/main.js | 0 .../export-default-as-c/namespace.js | 0 .../export-default-as/_config.js | 0 .../{ => samples}/export-default-as/foo.js | 0 .../{ => samples}/export-default-as/main.js | 0 .../export-default-expression/_config.js | 0 .../export-default-expression/main.js | 0 .../export-default-from-external/_config.js | 0 .../export-default-from-external/main.js | 0 .../export-default-named-function/_config.js | 0 .../export-default-named-function/main.js | 0 .../export-default-no-space/_config.js | 0 .../export-default-no-space/main.js | 0 .../export-destruction/_config.js | 0 .../{ => samples}/export-destruction/main.js | 0 .../export-from-default-renamed/_config.js | 0 .../export-from-default-renamed/a.js | 0 .../export-from-default-renamed/b.js | 0 .../export-from-default-renamed/foo.js | 0 .../export-from-default-renamed/main.js | 0 .../export-from-default/_config.js | 0 .../export-from-default/first.js | 0 .../{ => samples}/export-from-default/main.js | 0 .../export-from-default/second.js | 0 .../export-from-external/_config.js | 0 .../export-from-external/main.js | 0 .../export-from-internal-module/_config.js | 0 .../export-from-internal-module/foo.js | 0 .../export-from-internal-module/main.js | 0 .../_config.js | 0 .../a.js | 0 .../b.js | 0 .../main.js | 0 .../_config.js | 0 .../export-from-no-local-binding-var/foo.js | 0 .../export-from-no-local-binding-var/main.js | 0 .../export-from-no-local-binding/_config.js | 0 .../export-from-no-local-binding/first.js | 0 .../export-from-no-local-binding/main.js | 0 .../export-from-no-local-binding/second.js | 0 .../export-from-renamed/_config.js | 0 .../{ => samples}/export-from-renamed/foo.js | 0 .../{ => samples}/export-from-renamed/main.js | 0 .../_config.js | 0 .../export-from-with-definition-conflict/a.js | 0 .../main.js | 0 .../_config.js | 0 .../export-from-with-import-conflict/a.js | 0 .../export-from-with-import-conflict/b.js | 0 .../export-from-with-import-conflict/main.js | 0 .../{ => samples}/export-global/_config.js | 0 .../{ => samples}/export-global/main.js | 0 .../export-not-at-top-level-fails/_config.js | 0 .../export-not-at-top-level-fails/main.js | 0 .../export-two-ways-default-b/_config.js | 0 .../export-two-ways-default-b/bar.js | 0 .../export-two-ways-default-b/foo.js | 0 .../export-two-ways-default-b/main.js | 0 .../export-two-ways-default-b/x.js | 0 .../export-two-ways-default/_config.js | 0 .../export-two-ways-default/bar.js | 0 .../export-two-ways-default/foo.js | 0 .../export-two-ways-default/main.js | 0 .../export-two-ways-default/x.js | 0 .../export-two-ways-function/_config.js | 0 .../export-two-ways-function/main.js | 0 .../{ => samples}/export-two-ways/_config.js | 0 .../{ => samples}/export-two-ways/foo.js | 0 .../{ => samples}/export-two-ways/main.js | 0 .../export-type-mismatch-b/_config.js | 0 .../export-type-mismatch-b/main.js | 0 .../export-type-mismatch-c/_config.js | 0 .../export-type-mismatch-c/main.js | 0 .../export-type-mismatch/_config.js | 0 .../export-type-mismatch/main.js | 0 .../_config.js | 0 .../exports-flag-allowed-in-options/foo.js | 0 .../exports-flag-allowed-in-options/main.js | 0 .../exports-named-values/_config.js | 0 .../exports-named-values/main.js | 0 .../{ => samples}/external-alias/_config.js | 0 .../external-alias/first/main.js | 0 .../external-alias/first/module.js | 0 .../external-function-always-true/_config.js | 0 .../external-function-always-true/main.js | 0 .../external-function/_config.js | 0 .../{ => samples}/external-function/main.js | 0 .../external-ids-not-resolved/_config.js | 0 .../external-ids-not-resolved/main.js | 0 .../external-normalization/_config.js | 0 .../external-normalization/main.js | 0 .../function-side-effects/_config.js | 0 .../function-side-effects/main.js | 0 .../function-side-effects/mutate.js | 0 .../function-side-effects/object.js | 0 .../functions-renamed-correctly/_config.js | 0 .../functions-renamed-correctly/after.js | 0 .../functions-renamed-correctly/before.js | 0 .../functions-renamed-correctly/factorial.js | 0 .../functions-renamed-correctly/main.js | 0 .../_config.js | 0 .../main.js | 0 .../module.js | 0 .../handle-calling-uncallable/_config.js | 0 .../handle-calling-uncallable/foo.js | 0 .../handle-calling-uncallable/main.js | 0 .../handles-stringified-sourcemaps/_config.js | 0 .../handles-stringified-sourcemaps/main.js | 0 .../has-modules-array/_config.js | 0 .../{ => samples}/has-modules-array/foo.js | 0 .../{ => samples}/has-modules-array/main.js | 0 .../{ => samples}/has-resolved-ids/_config.js | 0 .../{ => samples}/has-resolved-ids/foo.js | 0 .../{ => samples}/has-resolved-ids/main.js | 0 .../hidden-directories/.foo/bar.js | 0 .../hidden-directories/_config.js | 0 .../{ => samples}/hidden-directories/main.js | 0 .../_config.js | 0 .../identifiers-in-template-literals/a.js | 0 .../identifiers-in-template-literals/b.js | 0 .../identifiers-in-template-literals/main.js | 0 .../if-statement-with-assignment/_config.js | 0 .../if-statement-with-assignment/main.js | 0 .../_config.js | 0 .../if-statement-with-false-condition/main.js | 0 .../if-statement-with-update/_config.js | 0 .../if-statement-with-update/main.js | 0 .../{ => samples}/iife-comments/_config.js | 0 .../{ => samples}/iife-comments/main.js | 0 .../iife-strong-dependencies/A.js | 0 .../iife-strong-dependencies/B.js | 0 .../iife-strong-dependencies/C.js | 0 .../iife-strong-dependencies/D.js | 0 .../iife-strong-dependencies/_config.js | 0 .../iife-strong-dependencies/main.js | 0 .../{ => samples}/import-as/_config.js | 0 test/function/{ => samples}/import-as/foo.js | 0 test/function/{ => samples}/import-as/main.js | 0 .../{ => samples}/import-binding/_config.js | 0 .../{ => samples}/import-binding/foo.js | 0 .../{ => samples}/import-binding/main.js | 0 .../{ => samples}/import-chain-as/_config.js | 0 .../{ => samples}/import-chain-as/first.js | 0 .../{ => samples}/import-chain-as/main.js | 0 .../{ => samples}/import-chain-as/second.js | 0 .../{ => samples}/import-chain/_config.js | 0 .../{ => samples}/import-chain/first.js | 0 .../{ => samples}/import-chain/main.js | 0 .../{ => samples}/import-chain/second.js | 0 .../_config.js | 0 .../import-default-and-named-function/foo.js | 0 .../import-default-and-named-function/main.js | 0 .../import-default-as-named/_config.js | 0 .../import-default-as-named/foo.js | 0 .../import-default-as-named/main.js | 0 .../import-default-as-other/_config.js | 0 .../import-default-as-other/foo.js | 0 .../import-default-as-other/main.js | 0 .../import-default-class/_config.js | 0 .../import-default-class/main.js | 0 .../import-default-class/point.js | 0 .../import-default-expression/_config.js | 0 .../import-default-expression/foo.js | 0 .../import-default-expression/main.js | 0 .../import-default-from-external/_config.js | 0 .../import-default-from-external/main.js | 0 .../import-default-function/_config.js | 0 .../import-default-function/foo.js | 0 .../import-default-function/main.js | 0 .../_config.js | 0 .../import-dependency-in-other-module/bar.js | 0 .../import-dependency-in-other-module/foo.js | 0 .../import-dependency-in-other-module/main.js | 0 .../_config.js | 0 .../import-dependency-in-same-module/foo.js | 0 .../import-dependency-in-same-module/main.js | 0 .../import-empty-from-external/_config.js | 0 .../import-empty-from-external/foo.js | 0 .../import-empty-from-external/main.js | 0 .../import-named-class/_config.js | 0 .../{ => samples}/import-named-class/foo.js | 0 .../{ => samples}/import-named-class/main.js | 0 .../import-named-from-external/_config.js | 0 .../import-named-from-external/main.js | 0 .../import-named-function-as-other/_config.js | 0 .../import-named-function-as-other/foo.js | 0 .../import-named-function-as-other/main.js | 0 .../import-named-function/_config.js | 0 .../import-named-function/foo.js | 0 .../import-named-function/main.js | 0 .../_config.js | 0 .../import-nameless-class-expression/foo.js | 0 .../import-nameless-class-expression/main.js | 0 .../_config.js | 0 .../main.js | 0 .../_config.js | 0 .../main.js | 0 .../_config.js | 0 .../foo.js | 0 .../main.js | 0 .../_config.js | 0 .../foo.js | 0 .../main.js | 0 .../import-not-at-top-level-fails/_config.js | 0 .../import-not-at-top-level-fails/main.js | 0 .../import-of-unexported-fails/_config.js | 0 .../import-of-unexported-fails/empty.js | 0 .../import-of-unexported-fails/main.js | 0 .../import-var-declaration/_config.js | 0 .../import-var-declaration/foo.js | 0 .../import-var-declaration/main.js | 0 .../imports-are-deconflicted-b/_config.js | 0 .../imports-are-deconflicted-b/bar.js | 0 .../imports-are-deconflicted-b/foo.js | 0 .../imports-are-deconflicted-b/main.js | 0 .../imports-are-deconflicted-c/_config.js | 0 .../imports-are-deconflicted-c/bar.js | 0 .../imports-are-deconflicted-c/foo.js | 0 .../imports-are-deconflicted-c/main.js | 0 .../imports-are-deconflicted/_config.js | 0 .../imports-are-deconflicted/bar.js | 0 .../imports-are-deconflicted/foo.js | 0 .../imports-are-deconflicted/main.js | 0 .../_config.js | 0 .../main.js | 0 .../module.js | 0 .../includes-reassignments/_config.js | 0 .../includes-reassignments/foo.js | 0 .../includes-reassignments/main.js | 0 .../includes-superclass/_config.js | 0 .../{ => samples}/includes-superclass/base.js | 0 .../{ => samples}/includes-superclass/main.js | 0 .../includes-superclass/thing.js | 0 .../legal-import-modification/_config.js | 0 .../legal-import-modification/foo.js | 0 .../legal-import-modification/main.js | 0 .../legal-suggested-names/_config.js | 0 .../legal-suggested-names/bar.js | 0 .../legal-suggested-names/foo.js | 0 .../legal-suggested-names/helpers.js | 0 .../legal-suggested-names/main.js | 0 .../load-returns-string-or-null/_config.js | 0 .../load-returns-string-or-null/main.js | 0 .../mark-namespace-members/_config.js | 0 .../mark-namespace-members/bar.js | 0 .../mark-namespace-members/foo.js | 0 .../mark-namespace-members/main.js | 0 .../_config.js | 0 .../main.js | 0 .../method-call-mutates-this/_config.js | 0 .../method-call-mutates-this/foo.js | 0 .../method-call-mutates-this/main.js | 0 .../method-call-side-effects/_config.js | 0 .../method-call-side-effects/main.js | 0 .../method-call-side-effects/object.js | 0 .../method-call-side-effects/thing.js | 0 .../modify-assumed-global/_config.js | 0 .../modify-assumed-global/main.js | 0 .../modify-assumed-global/math.js | 0 .../module-sort-order/_config.js | 0 .../{ => samples}/module-sort-order/a.js | 0 .../{ => samples}/module-sort-order/b.js | 0 .../{ => samples}/module-sort-order/c.js | 0 .../{ => samples}/module-sort-order/main.js | 0 .../{ => samples}/module-sort-order/z.js | 0 .../{ => samples}/module-tree/_config.js | 0 .../function/{ => samples}/module-tree/bar.js | 0 .../function/{ => samples}/module-tree/foo.js | 0 .../{ => samples}/module-tree/main.js | 0 .../{ => samples}/module-tree/nested/baz.js | 0 .../{ => samples}/module-tree/nested/qux.js | 0 .../_config.js | 0 .../named-external-method-in-prototype/bar.js | 0 .../named-external-method-in-prototype/foo.js | 0 .../main.js | 0 .../namespace-missing-export/_config.js | 0 .../namespace-missing-export/empty.js | 0 .../namespace-missing-export/main.js | 0 .../_config.js | 0 .../namespace-reassign-import-fails/foo.js | 0 .../namespace-reassign-import-fails/main.js | 0 .../namespace-update-import-fails/_config.js | 0 .../namespace-update-import-fails/foo.js | 0 .../namespace-update-import-fails/main.js | 0 .../namespaces-are-frozen/_config.js | 0 .../namespaces-are-frozen/main.js | 0 .../namespaces-are-frozen/mod.js | 0 .../namespacing-collisions-2/Material.js | 0 .../namespacing-collisions-2/MaterialAgain.js | 0 .../namespacing-collisions-2/Something.js | 0 .../SomethingAgain.js | 0 .../namespacing-collisions-2/_config.js | 0 .../namespacing-collisions-2/main.js | 0 .../namespacing-collisions/Material.js | 0 .../namespacing-collisions/Something.js | 0 .../namespacing-collisions/_config.js | 0 .../namespacing-collisions/main.js | 0 .../namespacing-in-sub-functions/_config.js | 0 .../namespacing-in-sub-functions/main.js | 0 .../problematicFunc.js | 0 .../newline-after-comment/_config.js | 0 .../newline-after-comment/main.js | 0 .../{ => samples}/no-imports/_config.js | 0 .../function/{ => samples}/no-imports/main.js | 0 .../no-relative-external/_config.js | 0 .../no-relative-external/main.js | 0 .../non-extension-dot/_config.js | 0 .../non-extension-dot/foo.bar.js | 0 .../{ => samples}/non-extension-dot/main.js | 0 .../non-js-extensions/_config.js | 0 .../{ => samples}/non-js-extensions/info.json | 0 .../{ => samples}/non-js-extensions/main.js | 0 .../object-destructuring-renaming/_config.js | 0 .../object-destructuring-renaming/main.js | 0 .../object-destructuring-renaming/module.js | 0 .../object-dynamic-properties/_config.js | 0 .../object-dynamic-properties/main.js | 0 .../object-dynamic-properties/tags.js | 0 .../object-properties/_config.js | 0 .../{ => samples}/object-properties/main.js | 0 .../{ => samples}/object-properties/object.js | 0 .../object-prototype-properties/_config.js | 0 .../object-prototype-properties/foo.js | 0 .../object-prototype-properties/main.js | 0 .../parenthesised-default-export/_config.js | 0 .../parenthesised-default-export/main.js | 0 .../pass-namespace-to-function/_config.js | 0 .../pass-namespace-to-function/bar.js | 0 .../pass-namespace-to-function/foo.js | 0 .../pass-namespace-to-function/main.js | 0 .../paths-are-case-sensitive/Foo.js | 0 .../paths-are-case-sensitive/_config.js | 0 .../paths-are-case-sensitive/main.js | 0 .../plugin-error-loc-instead-pos/_config.js | 0 .../plugin-error-loc-instead-pos/main.js | 0 .../_config.js | 0 .../main.js | 0 .../_config.js | 0 .../plugin-error-only-first-transform/main.js | 0 .../{ => samples}/plugin-error/_config.js | 0 .../{ => samples}/plugin-error/main.js | 0 .../plugin-warn-loc-instead-pos/_config.js | 0 .../plugin-warn-loc-instead-pos/main.js | 0 .../{ => samples}/plugin-warn/_config.js | 0 .../{ => samples}/plugin-warn/main.js | 0 .../plugins-can-manipulate-options/_config.js | 0 .../plugins-can-manipulate-options/answer.js | 0 .../preserves-catch-argument/_config.js | 0 .../preserves-catch-argument/main.js | 0 .../_config.js | 0 .../foo.js | 0 .../main.js | 0 .../_config.js | 0 .../main.js | 0 .../_config.js | 0 .../main.js | 0 .../property-keys-not-renamed/_config.js | 0 .../property-keys-not-renamed/main.js | 0 .../property-keys-not-renamed/one.js | 0 .../property-keys-not-renamed/three.js | 0 .../property-keys-not-renamed/two.js | 0 .../re-export-default-import/_config.js | 0 .../re-export-default-import/first.js | 0 .../re-export-default-import/main.js | 0 .../re-export-default-import/second.js | 0 .../re-export-namespace-import/_config.js | 0 .../re-export-namespace-import/first.js | 0 .../re-export-namespace-import/main.js | 0 .../re-export-namespace-import/second.js | 0 .../reassign-import-fails/_config.js | 0 .../reassign-import-fails/foo.js | 0 .../reassign-import-fails/main.js | 0 .../_config.js | 0 .../foo.js | 0 .../main.js | 0 .../reassign-parameter/_config.js | 0 .../{ => samples}/reassign-parameter/main.js | 0 .../reexport-missing-error/_config.js | 0 .../reexport-missing-error/empty.js | 0 .../reexport-missing-error/main.js | 0 .../reexports-from-external/_config.js | 0 .../reexports-from-external/main.js | 0 .../_config.js | 0 .../first/foo.js | 0 .../first/module.js | 0 .../first/second/module.js | 0 .../main.js | 0 .../_config.js | 0 .../first/foo.js | 0 .../first/module.js | 0 .../foo.js | 0 .../main.js | 0 .../_config.js | 0 .../first/main.js | 0 .../first/module.js | 0 .../first/second/module.js | 0 .../relative-external-include-once-up/foo.js | 0 .../relative-external-include-once/_config.js | 0 .../first/module.js | 0 .../first/second/module.js | 0 .../relative-external-include-once/foo.js | 0 .../relative-external-include-once/main.js | 0 .../removes-empty-exported-vars/_config.js | 0 .../removes-empty-exported-vars/main.js | 0 .../_config.js | 0 .../foo.js | 0 .../main.js | 0 .../rename-default-export/_config.js | 0 .../rename-default-export/bar.js | 0 .../rename-default-export/baz.js | 0 .../rename-default-export/foo.js | 0 .../rename-default-export/main.js | 0 .../renamed-arguments/_config.js | 0 .../{ => samples}/renamed-arguments/bar.js | 0 .../{ => samples}/renamed-arguments/foo.js | 0 .../{ => samples}/renamed-arguments/main.js | 0 .../resolves-namespace-default/_config.js | 0 .../resolves-namespace-default/main.js | 0 .../resolves-namespace-default/mod.js | 0 .../retains-sort-order-b/_config.js | 0 .../{ => samples}/retains-sort-order-b/bar.js | 0 .../{ => samples}/retains-sort-order-b/foo.js | 0 .../retains-sort-order-b/main.js | 0 .../retains-sort-order/_config.js | 0 .../{ => samples}/retains-sort-order/baz.js | 0 .../retains-sort-order/foobar.js | 0 .../{ => samples}/retains-sort-order/main.js | 0 .../rewrite-member-expressions/_config.js | 0 .../getLengthOfOtherQueue.js | 0 .../rewrite-member-expressions/main.js | 0 .../rewrite-member-expressions/mainQueue.js | 0 .../shadowed-external-export/_config.js | 0 .../shadowed-external-export/main.js | 0 .../shadowed-namespace-b/_config.js | 0 .../{ => samples}/shadowed-namespace-b/bar.js | 0 .../shadowed-namespace-b/main.js | 0 .../shadowed-namespace/_config.js | 0 .../{ => samples}/shadowed-namespace/bar.js | 0 .../{ => samples}/shadowed-namespace/main.js | 0 .../shadowed-variables/_config.js | 0 .../{ => samples}/shadowed-variables/foo.js | 0 .../{ => samples}/shadowed-variables/main.js | 0 .../sourcemapping-url-comment/_config.js | 0 .../sourcemapping-url-comment/main.js | 0 .../sourcemapping-url-multiline/_config.js | 0 .../sourcemapping-url-multiline/main.js | 0 .../{ => samples}/statement-order/_config.js | 0 .../{ => samples}/statement-order/answer.js | 0 .../{ => samples}/statement-order/main.js | 0 .../function/{ => samples}/symlink/_config.js | 0 test/function/{ => samples}/symlink/foo.js | 0 test/function/{ => samples}/symlink/main.js | 0 .../{ => samples}/symlink/symlinked/bar.js | 0 .../{ => samples}/symlink/symlinked/baz.js | 0 .../this-not-namespace/_config.js | 0 .../{ => samples}/this-not-namespace/main.js | 0 .../throws-not-found-module/_config.js | 0 .../throws-not-found-module/main.js | 0 .../top-level-arrow-function/_config.js | 0 .../top-level-arrow-function/main.js | 0 .../{ => samples}/top-level-block/_config.js | 0 .../{ => samples}/top-level-block/main.js | 0 .../_config.js | 0 .../top-level-side-effect-on-imported/lib.js | 0 .../top-level-side-effect-on-imported/main.js | 0 .../top-level-side-effect-on-imported/obj.js | 0 .../_config.js | 0 .../asap.js | 0 .../config.js | 0 .../defer.js | 0 .../main.js | 0 .../rsvp.js | 0 .../tracks-alias-mutations-b/_config.js | 0 .../tracks-alias-mutations-b/main.js | 0 .../tracks-alias-mutations/_config.js | 0 .../tracks-alias-mutations/bar.js | 0 .../tracks-alias-mutations/foo.js | 0 .../tracks-alias-mutations/main.js | 0 .../transformer-async/_config.js | 0 .../{ => samples}/transformer-async/main.js | 0 .../transformer-multiple/_config.js | 0 .../{ => samples}/transformer-multiple/foo.js | 0 .../transformer-multiple/main.js | 0 .../transformer-single/_config.js | 0 .../{ => samples}/transformer-single/foo.js | 0 .../{ => samples}/transformer-single/main.js | 0 .../_config.js | 0 .../foo.js | 0 .../main.js | 0 .../try-catch-scoping/_config.js | 0 .../{ => samples}/try-catch-scoping/foo.js | 0 .../{ => samples}/try-catch-scoping/main.js | 0 .../{ => samples}/unused-import/_config.js | 0 .../{ => samples}/unused-import/main.js | 0 .../{ => samples}/unused-var-a/_config.js | 0 .../{ => samples}/unused-var-a/foo.js | 0 .../{ => samples}/unused-var-a/main.js | 0 .../{ => samples}/unused-var-b/_config.js | 0 .../{ => samples}/unused-var-b/foo.js | 0 .../{ => samples}/unused-var-b/main.js | 0 .../{ => samples}/unused-var-c/_config.js | 0 .../{ => samples}/unused-var-c/foo.js | 0 .../{ => samples}/unused-var-c/main.js | 0 .../{ => samples}/unused-var-d/_config.js | 0 .../{ => samples}/unused-var-d/foo.js | 0 .../{ => samples}/unused-var-d/main.js | 0 .../_config.js | 0 .../update-expression-of-import-fails/foo.js | 0 .../update-expression-of-import-fails/main.js | 0 .../uses-supplied-ast/_config.js | 0 .../vars-in-for-loop-head/_config.js | 0 .../vars-in-for-loop-head/main.js | 0 .../vars-not-removed-in-if-block/_config.js | 0 .../vars-not-removed-in-if-block/main.js | 0 .../{ => samples}/vars-not-removed/_config.js | 0 .../{ => samples}/vars-not-removed/bar.js | 0 .../{ => samples}/vars-not-removed/foo.js | 0 .../{ => samples}/vars-not-removed/main.js | 0 .../vars-with-init-in-dead-branch/_config.js | 0 .../vars-with-init-in-dead-branch/main.js | 0 .../_config.js | 0 .../main.js | 0 .../warn-on-empty-bundle/_config.js | 0 .../warn-on-empty-bundle/main.js | 0 .../{ => samples}/warn-on-eval/_config.js | 0 .../{ => samples}/warn-on-eval/main.js | 0 .../warn-on-namespace-conflict/_config.js | 0 .../warn-on-namespace-conflict/bar.js | 0 .../warn-on-namespace-conflict/deep.js | 0 .../warn-on-namespace-conflict/foo.js | 0 .../warn-on-namespace-conflict/main.js | 0 .../warn-on-top-level-this/_config.js | 0 .../warn-on-top-level-this/main.js | 0 .../warn-on-unused-missing-imports/_config.js | 0 .../warn-on-unused-missing-imports/foo.js | 0 .../warn-on-unused-missing-imports/main.js | 0 .../{ => samples}/watch-option/_config.js | 0 .../{ => samples}/watch-option/main.js | 0 test/hooks/index.js | 103 ++ test/incremental/index.js | 237 ++++ test/leak/index.js | 54 +- test/leak/main.js | 1 + test/leak/test.js | 53 - test/misc/index.js | 240 ++++ test/{utils => sourcemaps}/getLocation.js | 0 test/sourcemaps/index.js | 77 + .../{ => samples}/basic-support/_config.js | 2 +- .../{ => samples}/basic-support/bar.js | 0 .../{ => samples}/basic-support/foo.js | 0 .../{ => samples}/basic-support/main.js | 0 .../excludes-plugin-helpers/_config.js | 0 .../excludes-plugin-helpers/helper.js | 0 .../excludes-plugin-helpers/main.js | 0 .../{ => samples}/loaders/_config.js | 2 +- test/sourcemaps/{ => samples}/loaders/bar.js | 0 test/sourcemaps/{ => samples}/loaders/foo.js | 0 test/sourcemaps/{ => samples}/loaders/main.js | 0 .../names-transformed/_config.js | 2 +- .../{ => samples}/names-transformed/a.js | 0 .../{ => samples}/names-transformed/b.js | 0 .../{ => samples}/names-transformed/main.js | 0 .../sourcemaps/{ => samples}/names/_config.js | 2 +- test/sourcemaps/{ => samples}/names/bar.js | 0 test/sourcemaps/{ => samples}/names/foo.js | 0 test/sourcemaps/{ => samples}/names/main.js | 0 .../reified-namespace/_config.js | 2 +- .../{ => samples}/reified-namespace/foo.js | 0 .../{ => samples}/reified-namespace/main.js | 0 .../{ => samples}/relative-paths/_config.js | 0 .../{ => samples}/relative-paths/main.js | 0 .../single-length-segments/_config.js | 2 +- .../single-length-segments/main.js | 0 .../single-length-segments/output.js | 0 .../single-length-segments/output.js.map | 0 .../{ => samples}/sourcemap-file/_config.js | 0 .../{ => samples}/sourcemap-file/main.js | 0 .../transform-bundle-babili/_config.js | 2 +- .../transform-bundle-babili/babili-results.js | 0 .../transform-bundle-babili/main.js | 0 .../{ => samples}/transform-bundle/_config.js | 2 +- .../{ => samples}/transform-bundle/main.js | 0 .../transform-without-sourcemap/_config.js | 0 .../transform-without-sourcemap/main.js | 0 .../{ => samples}/transforms/_config.js | 2 +- .../{ => samples}/transforms/foo.js | 0 .../{ => samples}/transforms/main.js | 0 .../untransformed-modules/_config.js | 0 .../untransformed-modules/foo.js | 0 .../untransformed-modules/main.js | 0 test/test.js | 1240 +---------------- test/utils.js | 90 ++ test/utils/promiseSequence.js | 28 - test/watch/index.js | 345 +++++ 2084 files changed, 1559 insertions(+), 1344 deletions(-) create mode 100644 test/cli/index.js delete mode 100644 test/cli/node-config-auto-prefix/node_modules/rollup-config-foo/lib/config.js delete mode 100644 test/cli/node-config-auto-prefix/node_modules/rollup-config-foo/package.json delete mode 100644 test/cli/node-config/node_modules/foo/lib/config.js delete mode 100644 test/cli/node-config/node_modules/foo/package.json rename test/cli/{ => samples}/banner-intro-outro-footer/_config.js (100%) rename test/cli/{ => samples}/banner-intro-outro-footer/_expected.js (100%) rename test/cli/{ => samples}/banner-intro-outro-footer/main.js (100%) rename test/cli/{ => samples}/config-cwd-case-insensitive/_config.js (100%) rename test/cli/{ => samples}/config-cwd-case-insensitive/main.js (100%) rename test/cli/{ => samples}/config-cwd-case-insensitive/rollup.config.js (100%) rename test/cli/{ => samples}/config-env/_config.js (100%) rename test/cli/{ => samples}/config-env/main.js (100%) rename test/cli/{ => samples}/config-env/rollup.config.js (100%) rename test/cli/{ => samples}/config-es6/_config.js (100%) rename test/cli/{ => samples}/config-es6/main.js (100%) rename test/cli/{ => samples}/config-es6/rollup.config.js (100%) rename test/cli/{ => samples}/config-external-function/_config.js (100%) rename test/cli/{ => samples}/config-external-function/_expected.js (100%) rename test/cli/{ => samples}/config-external-function/main.js (100%) rename test/cli/{ => samples}/config-external-function/rollup.config.js (100%) rename test/cli/{ => samples}/config-external/_config.js (100%) rename test/cli/{ => samples}/config-external/_expected.js (100%) rename test/cli/{ => samples}/config-external/main.js (100%) rename test/cli/{ => samples}/config-external/rollup.config.js (100%) rename test/cli/{ => samples}/config-json/_config.js (100%) rename test/cli/{ => samples}/config-json/main.js (100%) rename test/cli/{ => samples}/config-json/package.json (100%) rename test/cli/{ => samples}/config-json/rollup.config.js (100%) rename test/cli/{ => samples}/config-missing-export/_config.js (100%) rename test/cli/{ => samples}/config-missing-export/rollup.config.js (100%) rename test/cli/{ => samples}/config-override/_config.js (100%) rename test/cli/{ => samples}/config-override/main.js (100%) rename test/cli/{ => samples}/config-override/rollup.config.js (100%) rename test/cli/{ => samples}/config-plugin-entry/_config.js (100%) rename test/cli/{ => samples}/config-plugin-entry/_expected.js (100%) rename test/cli/{ => samples}/config-plugin-entry/main.js (100%) rename test/cli/{ => samples}/config-plugin-entry/rollup.config.js (100%) rename test/cli/{ => samples}/config-true/_config.js (100%) rename test/cli/{ => samples}/config-true/main.js (100%) rename test/cli/{ => samples}/config-true/rollup.config.js (100%) rename test/cli/{ => samples}/config/_config.js (100%) rename test/cli/{ => samples}/config/_expected.js (100%) rename test/cli/{ => samples}/config/main.js (100%) rename test/cli/{ => samples}/config/rollup.config.js (100%) rename test/cli/{ => samples}/external-modules-auto-global/_config.js (100%) rename test/cli/{ => samples}/external-modules-auto-global/main.js (100%) rename test/cli/{ => samples}/external-modules/_config.js (100%) rename test/cli/{ => samples}/external-modules/main.js (100%) rename test/cli/{ => samples}/indent-none/_config.js (100%) rename test/cli/{ => samples}/indent-none/_expected.js (100%) rename test/cli/{ => samples}/indent-none/main.js (100%) rename test/cli/{ => samples}/module-name/_config.js (100%) rename test/cli/{ => samples}/module-name/_expected.js (100%) rename test/cli/{ => samples}/module-name/main.js (100%) rename test/cli/{ => samples}/multiple-configs/_config.js (100%) rename test/cli/{ => samples}/multiple-configs/_expected/bundle1.js (100%) rename test/cli/{ => samples}/multiple-configs/main.js (100%) rename test/cli/{ => samples}/multiple-configs/rollup.config.js (100%) rename test/cli/{ => samples}/multiple-targets-shared-config/_config.js (100%) rename test/cli/{ => samples}/multiple-targets-shared-config/_expected/cjs.js (100%) rename test/cli/{ => samples}/multiple-targets-shared-config/_expected/cjs.js.map (100%) rename test/cli/{ => samples}/multiple-targets-shared-config/_expected/es.js (100%) rename test/cli/{ => samples}/multiple-targets-shared-config/_expected/es.js.map (100%) rename test/cli/{ => samples}/multiple-targets-shared-config/main.js (100%) rename test/cli/{ => samples}/multiple-targets-shared-config/rollup.config.js (100%) rename test/cli/{ => samples}/multiple-targets/_config.js (100%) rename test/cli/{ => samples}/multiple-targets/_expected/cjs.js (100%) rename test/cli/{ => samples}/multiple-targets/_expected/es.js (100%) rename test/cli/{ => samples}/multiple-targets/main.js (100%) rename test/cli/{ => samples}/multiple-targets/rollup.config.js (100%) rename test/cli/{ => samples}/no-conflict/_config.js (100%) rename test/cli/{ => samples}/no-conflict/_expected.js (100%) rename test/cli/{ => samples}/no-conflict/main.js (100%) rename test/cli/{ => samples}/no-conflict/rollup.config.js (100%) rename test/cli/{ => samples}/no-strict/_config.js (100%) rename test/cli/{ => samples}/no-strict/_expected.js (100%) rename test/cli/{ => samples}/no-strict/main.js (100%) rename test/cli/{ => samples}/no-treeshake/_config.js (100%) rename test/cli/{ => samples}/no-treeshake/_expected.js (100%) rename test/cli/{ => samples}/no-treeshake/main.js (100%) rename test/cli/{ => samples}/node-config-auto-prefix/_config.js (100%) rename test/cli/{ => samples}/node-config-auto-prefix/_expected.js (100%) rename test/cli/{ => samples}/node-config-auto-prefix/main.js (100%) rename test/cli/{ => samples}/node-config/_config.js (100%) rename test/cli/{ => samples}/node-config/_expected.js (100%) rename test/cli/{ => samples}/node-config/main.js (100%) rename test/cli/{ => samples}/silent/_config.js (100%) rename test/cli/{ => samples}/silent/_expected.js (100%) rename test/cli/{ => samples}/silent/foo.js (100%) rename test/cli/{ => samples}/silent/main.js (100%) rename test/cli/{ => samples}/sourcemap-newline/_config.js (100%) rename test/cli/{ => samples}/sourcemap-newline/main.js (100%) create mode 100644 test/form/index.js rename test/form/{ => samples}/absolute-path-resolver/_config.js (100%) rename test/form/{ => samples}/absolute-path-resolver/_expected/amd.js (100%) rename test/form/{ => samples}/absolute-path-resolver/_expected/cjs.js (100%) rename test/form/{ => samples}/absolute-path-resolver/_expected/es.js (100%) rename test/form/{ => samples}/absolute-path-resolver/_expected/iife.js (100%) rename test/form/{ => samples}/absolute-path-resolver/_expected/umd.js (100%) rename test/form/{ => samples}/absolute-path-resolver/a.js (100%) rename test/form/{ => samples}/absolute-path-resolver/main.js (100%) rename test/form/{ => samples}/assignment-to-exports-class-declaration/_config.js (100%) rename test/form/{ => samples}/assignment-to-exports-class-declaration/_expected/amd.js (100%) rename test/form/{ => samples}/assignment-to-exports-class-declaration/_expected/cjs.js (100%) rename test/form/{ => samples}/assignment-to-exports-class-declaration/_expected/es.js (100%) rename test/form/{ => samples}/assignment-to-exports-class-declaration/_expected/iife.js (100%) rename test/form/{ => samples}/assignment-to-exports-class-declaration/_expected/umd.js (100%) rename test/form/{ => samples}/assignment-to-exports-class-declaration/main.js (100%) rename test/form/{ => samples}/assignment-to-exports/_config.js (100%) rename test/form/{ => samples}/assignment-to-exports/_expected/amd.js (100%) rename test/form/{ => samples}/assignment-to-exports/_expected/cjs.js (100%) rename test/form/{ => samples}/assignment-to-exports/_expected/es.js (100%) rename test/form/{ => samples}/assignment-to-exports/_expected/iife.js (100%) rename test/form/{ => samples}/assignment-to-exports/_expected/umd.js (100%) rename test/form/{ => samples}/assignment-to-exports/main.js (100%) rename test/form/{ => samples}/async-function-unused/_config.js (100%) rename test/form/{ => samples}/async-function-unused/_expected/amd.js (100%) rename test/form/{ => samples}/async-function-unused/_expected/cjs.js (100%) rename test/form/{ => samples}/async-function-unused/_expected/es.js (100%) rename test/form/{ => samples}/async-function-unused/_expected/iife.js (100%) rename test/form/{ => samples}/async-function-unused/_expected/umd.js (100%) rename test/form/{ => samples}/async-function-unused/main.js (100%) rename test/form/{ => samples}/async-function-unused/utils.js (100%) rename test/form/{ => samples}/banner-and-footer-plugin/_config.js (100%) rename test/form/{ => samples}/banner-and-footer-plugin/_expected/amd.js (100%) rename test/form/{ => samples}/banner-and-footer-plugin/_expected/cjs.js (100%) rename test/form/{ => samples}/banner-and-footer-plugin/_expected/es.js (100%) rename test/form/{ => samples}/banner-and-footer-plugin/_expected/iife.js (100%) rename test/form/{ => samples}/banner-and-footer-plugin/_expected/umd.js (100%) rename test/form/{ => samples}/banner-and-footer-plugin/main.js (100%) rename test/form/{ => samples}/banner-and-footer/_config.js (100%) rename test/form/{ => samples}/banner-and-footer/_expected/amd.js (100%) rename test/form/{ => samples}/banner-and-footer/_expected/cjs.js (100%) rename test/form/{ => samples}/banner-and-footer/_expected/es.js (100%) rename test/form/{ => samples}/banner-and-footer/_expected/iife.js (100%) rename test/form/{ => samples}/banner-and-footer/_expected/umd.js (100%) rename test/form/{ => samples}/banner-and-footer/main.js (100%) rename test/form/{ => samples}/block-comments/_config.js (100%) rename test/form/{ => samples}/block-comments/_expected/amd.js (100%) rename test/form/{ => samples}/block-comments/_expected/cjs.js (100%) rename test/form/{ => samples}/block-comments/_expected/es.js (100%) rename test/form/{ => samples}/block-comments/_expected/iife.js (100%) rename test/form/{ => samples}/block-comments/_expected/umd.js (100%) rename test/form/{ => samples}/block-comments/foo.js (100%) rename test/form/{ => samples}/block-comments/main.js (100%) rename test/form/{ => samples}/body-less-for-loops/_config.js (100%) rename test/form/{ => samples}/body-less-for-loops/_expected/amd.js (100%) rename test/form/{ => samples}/body-less-for-loops/_expected/cjs.js (100%) rename test/form/{ => samples}/body-less-for-loops/_expected/es.js (100%) rename test/form/{ => samples}/body-less-for-loops/_expected/iife.js (100%) rename test/form/{ => samples}/body-less-for-loops/_expected/umd.js (100%) rename test/form/{ => samples}/body-less-for-loops/main.js (100%) rename test/form/{ => samples}/class-constructor-side-effect/_config.js (100%) rename test/form/{ => samples}/class-constructor-side-effect/_expected/amd.js (100%) rename test/form/{ => samples}/class-constructor-side-effect/_expected/cjs.js (100%) rename test/form/{ => samples}/class-constructor-side-effect/_expected/es.js (100%) rename test/form/{ => samples}/class-constructor-side-effect/_expected/iife.js (100%) rename test/form/{ => samples}/class-constructor-side-effect/_expected/umd.js (100%) rename test/form/{ => samples}/class-constructor-side-effect/main.js (100%) rename test/form/{ => samples}/comment-before-import/_config.js (100%) rename test/form/{ => samples}/comment-before-import/_expected/amd.js (100%) rename test/form/{ => samples}/comment-before-import/_expected/cjs.js (100%) rename test/form/{ => samples}/comment-before-import/_expected/es.js (100%) rename test/form/{ => samples}/comment-before-import/_expected/iife.js (100%) rename test/form/{ => samples}/comment-before-import/_expected/umd.js (100%) rename test/form/{ => samples}/comment-before-import/bar.js (100%) rename test/form/{ => samples}/comment-before-import/foo.js (100%) rename test/form/{ => samples}/comment-before-import/main.js (100%) rename test/form/{ => samples}/computed-properties/_config.js (100%) rename test/form/{ => samples}/computed-properties/_expected/amd.js (100%) rename test/form/{ => samples}/computed-properties/_expected/cjs.js (100%) rename test/form/{ => samples}/computed-properties/_expected/es.js (100%) rename test/form/{ => samples}/computed-properties/_expected/iife.js (100%) rename test/form/{ => samples}/computed-properties/_expected/umd.js (100%) rename test/form/{ => samples}/computed-properties/main.js (100%) rename test/form/{ => samples}/conditional-put-parens-around-sequence/_config.js (100%) rename test/form/{ => samples}/conditional-put-parens-around-sequence/_expected/amd.js (100%) rename test/form/{ => samples}/conditional-put-parens-around-sequence/_expected/cjs.js (100%) rename test/form/{ => samples}/conditional-put-parens-around-sequence/_expected/es.js (100%) rename test/form/{ => samples}/conditional-put-parens-around-sequence/_expected/iife.js (100%) rename test/form/{ => samples}/conditional-put-parens-around-sequence/_expected/umd.js (100%) rename test/form/{ => samples}/conditional-put-parens-around-sequence/main.js (100%) rename test/form/{ => samples}/conflicting-imports/_config.js (100%) rename test/form/{ => samples}/conflicting-imports/_expected/amd.js (100%) rename test/form/{ => samples}/conflicting-imports/_expected/cjs.js (100%) rename test/form/{ => samples}/conflicting-imports/_expected/es.js (100%) rename test/form/{ => samples}/conflicting-imports/_expected/iife.js (100%) rename test/form/{ => samples}/conflicting-imports/_expected/umd.js (100%) rename test/form/{ => samples}/conflicting-imports/main.js (100%) rename test/form/{ => samples}/conflicting-imports/other.js (100%) rename test/form/{ => samples}/custom-context/_config.js (100%) rename test/form/{ => samples}/custom-context/_expected/amd.js (100%) rename test/form/{ => samples}/custom-context/_expected/cjs.js (100%) rename test/form/{ => samples}/custom-context/_expected/es.js (100%) rename test/form/{ => samples}/custom-context/_expected/iife.js (100%) rename test/form/{ => samples}/custom-context/_expected/umd.js (100%) rename test/form/{ => samples}/custom-context/main.js (100%) rename test/form/{ => samples}/custom-module-context-function/_config.js (100%) rename test/form/{ => samples}/custom-module-context-function/_expected/amd.js (100%) rename test/form/{ => samples}/custom-module-context-function/_expected/cjs.js (100%) rename test/form/{ => samples}/custom-module-context-function/_expected/es.js (100%) rename test/form/{ => samples}/custom-module-context-function/_expected/iife.js (100%) rename test/form/{ => samples}/custom-module-context-function/_expected/umd.js (100%) rename test/form/{ => samples}/custom-module-context-function/foo.js (100%) rename test/form/{ => samples}/custom-module-context-function/main.js (100%) rename test/form/{ => samples}/custom-module-context/_config.js (100%) rename test/form/{ => samples}/custom-module-context/_expected/amd.js (100%) rename test/form/{ => samples}/custom-module-context/_expected/cjs.js (100%) rename test/form/{ => samples}/custom-module-context/_expected/es.js (100%) rename test/form/{ => samples}/custom-module-context/_expected/iife.js (100%) rename test/form/{ => samples}/custom-module-context/_expected/umd.js (100%) rename test/form/{ => samples}/custom-module-context/foo.js (100%) rename test/form/{ => samples}/custom-module-context/main.js (100%) rename test/form/{ => samples}/dedupes-external-imports/_config.js (100%) rename test/form/{ => samples}/dedupes-external-imports/_expected/amd.js (100%) rename test/form/{ => samples}/dedupes-external-imports/_expected/cjs.js (100%) rename test/form/{ => samples}/dedupes-external-imports/_expected/es.js (100%) rename test/form/{ => samples}/dedupes-external-imports/_expected/iife.js (100%) rename test/form/{ => samples}/dedupes-external-imports/_expected/umd.js (100%) rename test/form/{ => samples}/dedupes-external-imports/bar.js (100%) rename test/form/{ => samples}/dedupes-external-imports/baz.js (100%) rename test/form/{ => samples}/dedupes-external-imports/foo.js (100%) rename test/form/{ => samples}/dedupes-external-imports/main.js (100%) rename test/form/{ => samples}/define-replacement/_config.js (100%) rename test/form/{ => samples}/define-replacement/_expected/amd.js (100%) rename test/form/{ => samples}/define-replacement/_expected/cjs.js (100%) rename test/form/{ => samples}/define-replacement/_expected/es.js (100%) rename test/form/{ => samples}/define-replacement/_expected/iife.js (100%) rename test/form/{ => samples}/define-replacement/_expected/umd.js (100%) rename test/form/{ => samples}/define-replacement/a.js (100%) rename test/form/{ => samples}/define-replacement/main.js (100%) rename test/form/{ => samples}/duplicated-var-declarations/_config.js (100%) rename test/form/{ => samples}/duplicated-var-declarations/_expected/amd.js (100%) rename test/form/{ => samples}/duplicated-var-declarations/_expected/cjs.js (100%) rename test/form/{ => samples}/duplicated-var-declarations/_expected/es.js (100%) rename test/form/{ => samples}/duplicated-var-declarations/_expected/iife.js (100%) rename test/form/{ => samples}/duplicated-var-declarations/_expected/umd.js (100%) rename test/form/{ => samples}/duplicated-var-declarations/main.js (100%) rename test/form/{ => samples}/effect-in-for-of-loop-in-functions/_config.js (100%) rename test/form/{ => samples}/effect-in-for-of-loop-in-functions/_expected/amd.js (100%) rename test/form/{ => samples}/effect-in-for-of-loop-in-functions/_expected/cjs.js (100%) rename test/form/{ => samples}/effect-in-for-of-loop-in-functions/_expected/es.js (100%) rename test/form/{ => samples}/effect-in-for-of-loop-in-functions/_expected/iife.js (100%) rename test/form/{ => samples}/effect-in-for-of-loop-in-functions/_expected/umd.js (100%) rename test/form/{ => samples}/effect-in-for-of-loop-in-functions/main.js (100%) rename test/form/{ => samples}/effect-in-for-of-loop/_config.js (100%) rename test/form/{ => samples}/effect-in-for-of-loop/_expected/amd.js (100%) rename test/form/{ => samples}/effect-in-for-of-loop/_expected/cjs.js (100%) rename test/form/{ => samples}/effect-in-for-of-loop/_expected/es.js (100%) rename test/form/{ => samples}/effect-in-for-of-loop/_expected/iife.js (100%) rename test/form/{ => samples}/effect-in-for-of-loop/_expected/umd.js (100%) rename test/form/{ => samples}/effect-in-for-of-loop/main.js (100%) rename test/form/{ => samples}/empty-block-statement/_config.js (100%) rename test/form/{ => samples}/empty-block-statement/_expected/amd.js (100%) rename test/form/{ => samples}/empty-block-statement/_expected/cjs.js (100%) rename test/form/{ => samples}/empty-block-statement/_expected/es.js (100%) rename test/form/{ => samples}/empty-block-statement/_expected/iife.js (100%) rename test/form/{ => samples}/empty-block-statement/_expected/umd.js (100%) rename test/form/{ => samples}/empty-block-statement/main.js (100%) rename test/form/{ => samples}/empty-do-while-statement/_config.js (100%) rename test/form/{ => samples}/empty-do-while-statement/_expected/amd.js (100%) rename test/form/{ => samples}/empty-do-while-statement/_expected/cjs.js (100%) rename test/form/{ => samples}/empty-do-while-statement/_expected/es.js (100%) rename test/form/{ => samples}/empty-do-while-statement/_expected/iife.js (100%) rename test/form/{ => samples}/empty-do-while-statement/_expected/umd.js (100%) rename test/form/{ => samples}/empty-do-while-statement/main.js (100%) rename test/form/{ => samples}/empty-for-in-statement/_config.js (100%) rename test/form/{ => samples}/empty-for-in-statement/_expected/amd.js (100%) rename test/form/{ => samples}/empty-for-in-statement/_expected/cjs.js (100%) rename test/form/{ => samples}/empty-for-in-statement/_expected/es.js (100%) rename test/form/{ => samples}/empty-for-in-statement/_expected/iife.js (100%) rename test/form/{ => samples}/empty-for-in-statement/_expected/umd.js (100%) rename test/form/{ => samples}/empty-for-in-statement/main.js (100%) rename test/form/{ => samples}/empty-for-of-statement/_config.js (100%) rename test/form/{ => samples}/empty-for-of-statement/_expected/amd.js (100%) rename test/form/{ => samples}/empty-for-of-statement/_expected/cjs.js (100%) rename test/form/{ => samples}/empty-for-of-statement/_expected/es.js (100%) rename test/form/{ => samples}/empty-for-of-statement/_expected/iife.js (100%) rename test/form/{ => samples}/empty-for-of-statement/_expected/umd.js (100%) rename test/form/{ => samples}/empty-for-of-statement/main.js (100%) rename test/form/{ => samples}/empty-for-statement/_config.js (100%) rename test/form/{ => samples}/empty-for-statement/_expected/amd.js (100%) rename test/form/{ => samples}/empty-for-statement/_expected/cjs.js (100%) rename test/form/{ => samples}/empty-for-statement/_expected/es.js (100%) rename test/form/{ => samples}/empty-for-statement/_expected/iife.js (100%) rename test/form/{ => samples}/empty-for-statement/_expected/umd.js (100%) rename test/form/{ => samples}/empty-for-statement/main.js (100%) rename test/form/{ => samples}/empty-if-statement/_config.js (100%) rename test/form/{ => samples}/empty-if-statement/_expected/amd.js (100%) rename test/form/{ => samples}/empty-if-statement/_expected/cjs.js (100%) rename test/form/{ => samples}/empty-if-statement/_expected/es.js (100%) rename test/form/{ => samples}/empty-if-statement/_expected/iife.js (100%) rename test/form/{ => samples}/empty-if-statement/_expected/umd.js (100%) rename test/form/{ => samples}/empty-if-statement/main.js (100%) rename test/form/{ => samples}/empty-statement-consequent/_config.js (100%) rename test/form/{ => samples}/empty-statement-consequent/_expected/amd.js (100%) rename test/form/{ => samples}/empty-statement-consequent/_expected/cjs.js (100%) rename test/form/{ => samples}/empty-statement-consequent/_expected/es.js (100%) rename test/form/{ => samples}/empty-statement-consequent/_expected/iife.js (100%) rename test/form/{ => samples}/empty-statement-consequent/_expected/umd.js (100%) rename test/form/{ => samples}/empty-statement-consequent/main.js (100%) rename test/form/{ => samples}/empty-statement/_config.js (100%) rename test/form/{ => samples}/empty-statement/_expected/amd.js (100%) rename test/form/{ => samples}/empty-statement/_expected/cjs.js (100%) rename test/form/{ => samples}/empty-statement/_expected/es.js (100%) rename test/form/{ => samples}/empty-statement/_expected/iife.js (100%) rename test/form/{ => samples}/empty-statement/_expected/umd.js (100%) rename test/form/{ => samples}/empty-statement/main.js (100%) rename test/form/{ => samples}/empty-switch-statement/_config.js (100%) rename test/form/{ => samples}/empty-switch-statement/_expected/amd.js (100%) rename test/form/{ => samples}/empty-switch-statement/_expected/cjs.js (100%) rename test/form/{ => samples}/empty-switch-statement/_expected/es.js (100%) rename test/form/{ => samples}/empty-switch-statement/_expected/iife.js (100%) rename test/form/{ => samples}/empty-switch-statement/_expected/umd.js (100%) rename test/form/{ => samples}/empty-switch-statement/main.js (100%) rename test/form/{ => samples}/empty-try-catch-statement/_config.js (100%) rename test/form/{ => samples}/empty-try-catch-statement/_expected/amd.js (100%) rename test/form/{ => samples}/empty-try-catch-statement/_expected/cjs.js (100%) rename test/form/{ => samples}/empty-try-catch-statement/_expected/es.js (100%) rename test/form/{ => samples}/empty-try-catch-statement/_expected/iife.js (100%) rename test/form/{ => samples}/empty-try-catch-statement/_expected/umd.js (100%) rename test/form/{ => samples}/empty-try-catch-statement/main.js (100%) rename test/form/{ => samples}/empty-while-statement/_config.js (100%) rename test/form/{ => samples}/empty-while-statement/_expected/amd.js (100%) rename test/form/{ => samples}/empty-while-statement/_expected/cjs.js (100%) rename test/form/{ => samples}/empty-while-statement/_expected/es.js (100%) rename test/form/{ => samples}/empty-while-statement/_expected/iife.js (100%) rename test/form/{ => samples}/empty-while-statement/_expected/umd.js (100%) rename test/form/{ => samples}/empty-while-statement/main.js (100%) rename test/form/{ => samples}/erroneous-nested-member-expression/_config.js (100%) rename test/form/{ => samples}/erroneous-nested-member-expression/_expected/amd.js (100%) rename test/form/{ => samples}/erroneous-nested-member-expression/_expected/cjs.js (100%) rename test/form/{ => samples}/erroneous-nested-member-expression/_expected/es.js (100%) rename test/form/{ => samples}/erroneous-nested-member-expression/_expected/iife.js (100%) rename test/form/{ => samples}/erroneous-nested-member-expression/_expected/umd.js (100%) rename test/form/{ => samples}/erroneous-nested-member-expression/foo.js (100%) rename test/form/{ => samples}/erroneous-nested-member-expression/main.js (100%) rename test/form/{ => samples}/exclude-unnecessary-modifications/_config.js (100%) rename test/form/{ => samples}/exclude-unnecessary-modifications/_expected/amd.js (100%) rename test/form/{ => samples}/exclude-unnecessary-modifications/_expected/cjs.js (100%) rename test/form/{ => samples}/exclude-unnecessary-modifications/_expected/es.js (100%) rename test/form/{ => samples}/exclude-unnecessary-modifications/_expected/iife.js (100%) rename test/form/{ => samples}/exclude-unnecessary-modifications/_expected/umd.js (100%) rename test/form/{ => samples}/exclude-unnecessary-modifications/foo.js (100%) rename test/form/{ => samples}/exclude-unnecessary-modifications/main.js (100%) rename test/form/{ => samples}/exponentiation-operator/_config.js (100%) rename test/form/{ => samples}/exponentiation-operator/_expected/amd.js (100%) rename test/form/{ => samples}/exponentiation-operator/_expected/cjs.js (100%) rename test/form/{ => samples}/exponentiation-operator/_expected/es.js (100%) rename test/form/{ => samples}/exponentiation-operator/_expected/iife.js (100%) rename test/form/{ => samples}/exponentiation-operator/_expected/umd.js (100%) rename test/form/{ => samples}/exponentiation-operator/main.js (100%) rename test/form/{ => samples}/export-all-from-internal/_config.js (100%) rename test/form/{ => samples}/export-all-from-internal/_expected/amd.js (100%) rename test/form/{ => samples}/export-all-from-internal/_expected/cjs.js (100%) rename test/form/{ => samples}/export-all-from-internal/_expected/es.js (100%) rename test/form/{ => samples}/export-all-from-internal/_expected/iife.js (100%) rename test/form/{ => samples}/export-all-from-internal/_expected/umd.js (100%) rename test/form/{ => samples}/export-all-from-internal/internal.js (100%) rename test/form/{ => samples}/export-all-from-internal/main.js (100%) rename test/form/{ => samples}/export-all-multiple/_config.js (100%) rename test/form/{ => samples}/export-all-multiple/_expected/amd.js (100%) rename test/form/{ => samples}/export-all-multiple/_expected/cjs.js (100%) rename test/form/{ => samples}/export-all-multiple/_expected/es.js (100%) rename test/form/{ => samples}/export-all-multiple/_expected/iife.js (100%) rename test/form/{ => samples}/export-all-multiple/_expected/umd.js (100%) rename test/form/{ => samples}/export-all-multiple/main.js (100%) rename test/form/{ => samples}/export-default-2/_config.js (100%) rename test/form/{ => samples}/export-default-2/_expected/amd.js (100%) rename test/form/{ => samples}/export-default-2/_expected/cjs.js (100%) rename test/form/{ => samples}/export-default-2/_expected/es.js (100%) rename test/form/{ => samples}/export-default-2/_expected/iife.js (100%) rename test/form/{ => samples}/export-default-2/_expected/umd.js (100%) rename test/form/{ => samples}/export-default-2/bar.js (100%) rename test/form/{ => samples}/export-default-2/main.js (100%) rename test/form/{ => samples}/export-default-3/_config.js (100%) rename test/form/{ => samples}/export-default-3/_expected/amd.js (100%) rename test/form/{ => samples}/export-default-3/_expected/cjs.js (100%) rename test/form/{ => samples}/export-default-3/_expected/es.js (100%) rename test/form/{ => samples}/export-default-3/_expected/iife.js (100%) rename test/form/{ => samples}/export-default-3/_expected/umd.js (100%) rename test/form/{ => samples}/export-default-3/bar.js (100%) rename test/form/{ => samples}/export-default-3/main.js (100%) rename test/form/{ => samples}/export-default-import/_config.js (100%) rename test/form/{ => samples}/export-default-import/_expected/amd.js (100%) rename test/form/{ => samples}/export-default-import/_expected/cjs.js (100%) rename test/form/{ => samples}/export-default-import/_expected/es.js (100%) rename test/form/{ => samples}/export-default-import/_expected/iife.js (100%) rename test/form/{ => samples}/export-default-import/_expected/umd.js (100%) rename test/form/{ => samples}/export-default-import/main.js (100%) rename test/form/{ => samples}/export-default/_config.js (100%) rename test/form/{ => samples}/export-default/_expected/amd.js (100%) rename test/form/{ => samples}/export-default/_expected/cjs.js (100%) rename test/form/{ => samples}/export-default/_expected/es.js (100%) rename test/form/{ => samples}/export-default/_expected/iife.js (100%) rename test/form/{ => samples}/export-default/_expected/umd.js (100%) rename test/form/{ => samples}/export-default/main.js (100%) rename test/form/{ => samples}/export-multiple-vars/_config.js (100%) rename test/form/{ => samples}/export-multiple-vars/_expected/amd.js (100%) rename test/form/{ => samples}/export-multiple-vars/_expected/cjs.js (100%) rename test/form/{ => samples}/export-multiple-vars/_expected/es.js (100%) rename test/form/{ => samples}/export-multiple-vars/_expected/iife.js (100%) rename test/form/{ => samples}/export-multiple-vars/_expected/umd.js (100%) rename test/form/{ => samples}/export-multiple-vars/bar.js (100%) rename test/form/{ => samples}/export-multiple-vars/baz.js (100%) rename test/form/{ => samples}/export-multiple-vars/foo.js (100%) rename test/form/{ => samples}/export-multiple-vars/main.js (100%) rename test/form/{ => samples}/exports-at-end-if-possible/_config.js (100%) rename test/form/{ => samples}/exports-at-end-if-possible/_expected/amd.js (100%) rename test/form/{ => samples}/exports-at-end-if-possible/_expected/cjs.js (100%) rename test/form/{ => samples}/exports-at-end-if-possible/_expected/es.js (100%) rename test/form/{ => samples}/exports-at-end-if-possible/_expected/iife.js (100%) rename test/form/{ => samples}/exports-at-end-if-possible/_expected/umd.js (100%) rename test/form/{ => samples}/exports-at-end-if-possible/main.js (100%) rename test/form/{ => samples}/extend-exports/_config.js (100%) rename test/form/{ => samples}/extend-exports/_expected/amd.js (100%) rename test/form/{ => samples}/extend-exports/_expected/cjs.js (100%) rename test/form/{ => samples}/extend-exports/_expected/es.js (100%) rename test/form/{ => samples}/extend-exports/_expected/iife.js (100%) rename test/form/{ => samples}/extend-exports/_expected/umd.js (100%) rename test/form/{ => samples}/extend-exports/main.js (100%) rename test/form/{ => samples}/extend-namespaced-exports/_config.js (100%) rename test/form/{ => samples}/extend-namespaced-exports/_expected/amd.js (100%) rename test/form/{ => samples}/extend-namespaced-exports/_expected/cjs.js (100%) rename test/form/{ => samples}/extend-namespaced-exports/_expected/es.js (100%) rename test/form/{ => samples}/extend-namespaced-exports/_expected/iife.js (100%) rename test/form/{ => samples}/extend-namespaced-exports/_expected/umd.js (100%) rename test/form/{ => samples}/extend-namespaced-exports/main.js (100%) rename test/form/{ => samples}/external-empty-import-no-global-b/_config.js (100%) rename test/form/{ => samples}/external-empty-import-no-global-b/_expected/amd.js (100%) rename test/form/{ => samples}/external-empty-import-no-global-b/_expected/cjs.js (100%) rename test/form/{ => samples}/external-empty-import-no-global-b/_expected/es.js (100%) rename test/form/{ => samples}/external-empty-import-no-global-b/_expected/iife.js (100%) rename test/form/{ => samples}/external-empty-import-no-global-b/_expected/umd.js (100%) rename test/form/{ => samples}/external-empty-import-no-global-b/main.js (100%) rename test/form/{ => samples}/external-empty-import-no-global/_config.js (100%) rename test/form/{ => samples}/external-empty-import-no-global/_expected/amd.js (100%) rename test/form/{ => samples}/external-empty-import-no-global/_expected/cjs.js (100%) rename test/form/{ => samples}/external-empty-import-no-global/_expected/es.js (100%) rename test/form/{ => samples}/external-empty-import-no-global/_expected/iife.js (100%) rename test/form/{ => samples}/external-empty-import-no-global/_expected/umd.js (100%) rename test/form/{ => samples}/external-empty-import-no-global/main.js (100%) rename test/form/{ => samples}/external-import-alias-shadow/_config.js (100%) rename test/form/{ => samples}/external-import-alias-shadow/_expected/amd.js (100%) rename test/form/{ => samples}/external-import-alias-shadow/_expected/cjs.js (100%) rename test/form/{ => samples}/external-import-alias-shadow/_expected/es.js (100%) rename test/form/{ => samples}/external-import-alias-shadow/_expected/iife.js (100%) rename test/form/{ => samples}/external-import-alias-shadow/_expected/umd.js (100%) rename test/form/{ => samples}/external-import-alias-shadow/main.js (100%) rename test/form/{ => samples}/external-import-alias-shadow/parse.js (100%) rename test/form/{ => samples}/external-imports-custom-names-function/_config.js (100%) rename test/form/{ => samples}/external-imports-custom-names-function/_expected/amd.js (100%) rename test/form/{ => samples}/external-imports-custom-names-function/_expected/cjs.js (100%) rename test/form/{ => samples}/external-imports-custom-names-function/_expected/es.js (100%) rename test/form/{ => samples}/external-imports-custom-names-function/_expected/iife.js (100%) rename test/form/{ => samples}/external-imports-custom-names-function/_expected/umd.js (100%) rename test/form/{ => samples}/external-imports-custom-names-function/main.js (100%) rename test/form/{ => samples}/external-imports-custom-names/_config.js (100%) rename test/form/{ => samples}/external-imports-custom-names/_expected/amd.js (100%) rename test/form/{ => samples}/external-imports-custom-names/_expected/cjs.js (100%) rename test/form/{ => samples}/external-imports-custom-names/_expected/es.js (100%) rename test/form/{ => samples}/external-imports-custom-names/_expected/iife.js (100%) rename test/form/{ => samples}/external-imports-custom-names/_expected/umd.js (100%) rename test/form/{ => samples}/external-imports-custom-names/main.js (100%) rename test/form/{ => samples}/external-imports/_config.js (100%) rename test/form/{ => samples}/external-imports/_expected/amd.js (100%) rename test/form/{ => samples}/external-imports/_expected/cjs.js (100%) rename test/form/{ => samples}/external-imports/_expected/es.js (100%) rename test/form/{ => samples}/external-imports/_expected/iife.js (100%) rename test/form/{ => samples}/external-imports/_expected/umd.js (100%) rename test/form/{ => samples}/external-imports/main.js (100%) rename test/form/{ => samples}/for-loop-body-var-declaration/_config.js (100%) rename test/form/{ => samples}/for-loop-body-var-declaration/_expected/amd.js (100%) rename test/form/{ => samples}/for-loop-body-var-declaration/_expected/cjs.js (100%) rename test/form/{ => samples}/for-loop-body-var-declaration/_expected/es.js (100%) rename test/form/{ => samples}/for-loop-body-var-declaration/_expected/iife.js (100%) rename test/form/{ => samples}/for-loop-body-var-declaration/_expected/umd.js (100%) rename test/form/{ => samples}/for-loop-body-var-declaration/main.js (100%) rename test/form/{ => samples}/for-loop-with-empty-head/_config.js (100%) rename test/form/{ => samples}/for-loop-with-empty-head/_expected/amd.js (100%) rename test/form/{ => samples}/for-loop-with-empty-head/_expected/cjs.js (100%) rename test/form/{ => samples}/for-loop-with-empty-head/_expected/es.js (100%) rename test/form/{ => samples}/for-loop-with-empty-head/_expected/iife.js (100%) rename test/form/{ => samples}/for-loop-with-empty-head/_expected/umd.js (100%) rename test/form/{ => samples}/for-loop-with-empty-head/main.js (100%) rename test/form/{ => samples}/import-external-namespace-and-default/_config.js (100%) rename test/form/{ => samples}/import-external-namespace-and-default/_expected/amd.js (100%) rename test/form/{ => samples}/import-external-namespace-and-default/_expected/cjs.js (100%) rename test/form/{ => samples}/import-external-namespace-and-default/_expected/es.js (100%) rename test/form/{ => samples}/import-external-namespace-and-default/_expected/iife.js (100%) rename test/form/{ => samples}/import-external-namespace-and-default/_expected/umd.js (100%) rename test/form/{ => samples}/import-external-namespace-and-default/main.js (100%) rename test/form/{ => samples}/import-external-namespace-and-default/other.js (100%) rename test/form/{ => samples}/import-named-exported-global-with-alias/_config.js (100%) rename test/form/{ => samples}/import-named-exported-global-with-alias/_expected/amd.js (100%) rename test/form/{ => samples}/import-named-exported-global-with-alias/_expected/cjs.js (100%) rename test/form/{ => samples}/import-named-exported-global-with-alias/_expected/es.js (100%) rename test/form/{ => samples}/import-named-exported-global-with-alias/_expected/iife.js (100%) rename test/form/{ => samples}/import-named-exported-global-with-alias/_expected/umd.js (100%) rename test/form/{ => samples}/import-named-exported-global-with-alias/browser.js (100%) rename test/form/{ => samples}/import-named-exported-global-with-alias/main.js (100%) rename test/form/{ => samples}/includes-all-namespace-declarations/_config.js (100%) rename test/form/{ => samples}/includes-all-namespace-declarations/_expected/amd.js (100%) rename test/form/{ => samples}/includes-all-namespace-declarations/_expected/cjs.js (100%) rename test/form/{ => samples}/includes-all-namespace-declarations/_expected/es.js (100%) rename test/form/{ => samples}/includes-all-namespace-declarations/_expected/iife.js (100%) rename test/form/{ => samples}/includes-all-namespace-declarations/_expected/umd.js (100%) rename test/form/{ => samples}/includes-all-namespace-declarations/indirection.js (100%) rename test/form/{ => samples}/includes-all-namespace-declarations/main.js (100%) rename test/form/{ => samples}/includes-all-namespace-declarations/unused.js (100%) rename test/form/{ => samples}/indent-false/_config.js (100%) rename test/form/{ => samples}/indent-false/_expected/amd.js (100%) rename test/form/{ => samples}/indent-false/_expected/cjs.js (100%) rename test/form/{ => samples}/indent-false/_expected/es.js (100%) rename test/form/{ => samples}/indent-false/_expected/iife.js (100%) rename test/form/{ => samples}/indent-false/_expected/umd.js (100%) rename test/form/{ => samples}/indent-false/main.js (100%) rename test/form/{ => samples}/indent-spaces/_config.js (100%) rename test/form/{ => samples}/indent-spaces/_expected/amd.js (100%) rename test/form/{ => samples}/indent-spaces/_expected/cjs.js (100%) rename test/form/{ => samples}/indent-spaces/_expected/es.js (100%) rename test/form/{ => samples}/indent-spaces/_expected/iife.js (100%) rename test/form/{ => samples}/indent-spaces/_expected/umd.js (100%) rename test/form/{ => samples}/indent-spaces/main.js (100%) rename test/form/{ => samples}/indent-true-spaces/_config.js (100%) rename test/form/{ => samples}/indent-true-spaces/_expected/amd.js (100%) rename test/form/{ => samples}/indent-true-spaces/_expected/cjs.js (100%) rename test/form/{ => samples}/indent-true-spaces/_expected/es.js (100%) rename test/form/{ => samples}/indent-true-spaces/_expected/iife.js (100%) rename test/form/{ => samples}/indent-true-spaces/_expected/umd.js (100%) rename test/form/{ => samples}/indent-true-spaces/main.js (100%) rename test/form/{ => samples}/indent-true/_config.js (100%) rename test/form/{ => samples}/indent-true/_expected/amd.js (100%) rename test/form/{ => samples}/indent-true/_expected/cjs.js (100%) rename test/form/{ => samples}/indent-true/_expected/es.js (100%) rename test/form/{ => samples}/indent-true/_expected/iife.js (100%) rename test/form/{ => samples}/indent-true/_expected/umd.js (100%) rename test/form/{ => samples}/indent-true/main.js (100%) rename test/form/{ => samples}/internal-conflict-resolution/_config.js (100%) rename test/form/{ => samples}/internal-conflict-resolution/_expected/amd.js (100%) rename test/form/{ => samples}/internal-conflict-resolution/_expected/cjs.js (100%) rename test/form/{ => samples}/internal-conflict-resolution/_expected/es.js (100%) rename test/form/{ => samples}/internal-conflict-resolution/_expected/iife.js (100%) rename test/form/{ => samples}/internal-conflict-resolution/_expected/umd.js (100%) rename test/form/{ => samples}/internal-conflict-resolution/bar.js (100%) rename test/form/{ => samples}/internal-conflict-resolution/foo.js (100%) rename test/form/{ => samples}/internal-conflict-resolution/main.js (100%) rename test/form/{ => samples}/interop-false/_config.js (100%) rename test/form/{ => samples}/interop-false/_expected/amd.js (100%) rename test/form/{ => samples}/interop-false/_expected/cjs.js (100%) rename test/form/{ => samples}/interop-false/_expected/es.js (100%) rename test/form/{ => samples}/interop-false/_expected/iife.js (100%) rename test/form/{ => samples}/interop-false/_expected/umd.js (100%) rename test/form/{ => samples}/interop-false/main.js (100%) rename test/form/{ => samples}/intro-and-outro/_config.js (100%) rename test/form/{ => samples}/intro-and-outro/_expected/amd.js (100%) rename test/form/{ => samples}/intro-and-outro/_expected/cjs.js (100%) rename test/form/{ => samples}/intro-and-outro/_expected/es.js (100%) rename test/form/{ => samples}/intro-and-outro/_expected/iife.js (100%) rename test/form/{ => samples}/intro-and-outro/_expected/umd.js (100%) rename test/form/{ => samples}/intro-and-outro/main.js (100%) rename test/form/{ => samples}/legacy-getter/_config.js (100%) rename test/form/{ => samples}/legacy-getter/_expected/amd.js (100%) rename test/form/{ => samples}/legacy-getter/_expected/cjs.js (100%) rename test/form/{ => samples}/legacy-getter/_expected/es.js (100%) rename test/form/{ => samples}/legacy-getter/_expected/iife.js (100%) rename test/form/{ => samples}/legacy-getter/_expected/umd.js (100%) rename test/form/{ => samples}/legacy-getter/browserStuff.js (100%) rename test/form/{ => samples}/legacy-getter/main.js (100%) rename test/form/{ => samples}/legacy-reified-namespace/_config.js (100%) rename test/form/{ => samples}/legacy-reified-namespace/_expected/amd.js (100%) rename test/form/{ => samples}/legacy-reified-namespace/_expected/cjs.js (100%) rename test/form/{ => samples}/legacy-reified-namespace/_expected/es.js (100%) rename test/form/{ => samples}/legacy-reified-namespace/_expected/iife.js (100%) rename test/form/{ => samples}/legacy-reified-namespace/_expected/umd.js (100%) rename test/form/{ => samples}/legacy-reified-namespace/main.js (100%) rename test/form/{ => samples}/legacy-reified-namespace/namespace.js (100%) rename test/form/{ => samples}/legacy/_config.js (100%) rename test/form/{ => samples}/legacy/_expected/amd.js (100%) rename test/form/{ => samples}/legacy/_expected/cjs.js (100%) rename test/form/{ => samples}/legacy/_expected/es.js (100%) rename test/form/{ => samples}/legacy/_expected/iife.js (100%) rename test/form/{ => samples}/legacy/_expected/umd.js (100%) rename test/form/{ => samples}/legacy/main.js (100%) rename test/form/{ => samples}/legacy/namespace.js (100%) rename test/form/{ => samples}/module-name-scoped-package/_config.js (100%) rename test/form/{ => samples}/module-name-scoped-package/_expected/amd.js (100%) rename test/form/{ => samples}/module-name-scoped-package/_expected/cjs.js (100%) rename test/form/{ => samples}/module-name-scoped-package/_expected/es.js (100%) rename test/form/{ => samples}/module-name-scoped-package/_expected/iife.js (100%) rename test/form/{ => samples}/module-name-scoped-package/_expected/umd.js (100%) rename test/form/{ => samples}/module-name-scoped-package/main.js (100%) rename test/form/{ => samples}/module-name-wat/_config.js (100%) rename test/form/{ => samples}/module-name-wat/_expected/amd.js (100%) rename test/form/{ => samples}/module-name-wat/_expected/cjs.js (100%) rename test/form/{ => samples}/module-name-wat/_expected/es.js (100%) rename test/form/{ => samples}/module-name-wat/_expected/iife.js (100%) rename test/form/{ => samples}/module-name-wat/_expected/umd.js (100%) rename test/form/{ => samples}/module-name-wat/main.js (100%) rename test/form/{ => samples}/module-name-with-dashes/_config.js (100%) rename test/form/{ => samples}/module-name-with-dashes/_expected/amd.js (100%) rename test/form/{ => samples}/module-name-with-dashes/_expected/cjs.js (100%) rename test/form/{ => samples}/module-name-with-dashes/_expected/es.js (100%) rename test/form/{ => samples}/module-name-with-dashes/_expected/iife.js (100%) rename test/form/{ => samples}/module-name-with-dashes/_expected/umd.js (100%) rename test/form/{ => samples}/module-name-with-dashes/main.js (100%) rename test/form/{ => samples}/multiple-exports/_config.js (100%) rename test/form/{ => samples}/multiple-exports/_expected/amd.js (100%) rename test/form/{ => samples}/multiple-exports/_expected/cjs.js (100%) rename test/form/{ => samples}/multiple-exports/_expected/es.js (100%) rename test/form/{ => samples}/multiple-exports/_expected/iife.js (100%) rename test/form/{ => samples}/multiple-exports/_expected/umd.js (100%) rename test/form/{ => samples}/multiple-exports/main.js (100%) rename test/form/{ => samples}/namespace-optimization-b/_config.js (100%) rename test/form/{ => samples}/namespace-optimization-b/_expected/amd.js (100%) rename test/form/{ => samples}/namespace-optimization-b/_expected/cjs.js (100%) rename test/form/{ => samples}/namespace-optimization-b/_expected/es.js (100%) rename test/form/{ => samples}/namespace-optimization-b/_expected/iife.js (100%) rename test/form/{ => samples}/namespace-optimization-b/_expected/umd.js (100%) rename test/form/{ => samples}/namespace-optimization-b/foo.js (100%) rename test/form/{ => samples}/namespace-optimization-b/main.js (100%) rename test/form/{ => samples}/namespace-optimization-computed-string/_config.js (100%) rename test/form/{ => samples}/namespace-optimization-computed-string/_expected/amd.js (100%) rename test/form/{ => samples}/namespace-optimization-computed-string/_expected/cjs.js (100%) rename test/form/{ => samples}/namespace-optimization-computed-string/_expected/es.js (100%) rename test/form/{ => samples}/namespace-optimization-computed-string/_expected/iife.js (100%) rename test/form/{ => samples}/namespace-optimization-computed-string/_expected/umd.js (100%) rename test/form/{ => samples}/namespace-optimization-computed-string/bar.js (100%) rename test/form/{ => samples}/namespace-optimization-computed-string/foo.js (100%) rename test/form/{ => samples}/namespace-optimization-computed-string/main.js (100%) rename test/form/{ => samples}/namespace-optimization-computed-string/quux.js (100%) rename test/form/{ => samples}/namespace-optimization/_config.js (100%) rename test/form/{ => samples}/namespace-optimization/_expected/amd.js (100%) rename test/form/{ => samples}/namespace-optimization/_expected/cjs.js (100%) rename test/form/{ => samples}/namespace-optimization/_expected/es.js (100%) rename test/form/{ => samples}/namespace-optimization/_expected/iife.js (100%) rename test/form/{ => samples}/namespace-optimization/_expected/umd.js (100%) rename test/form/{ => samples}/namespace-optimization/bar.js (100%) rename test/form/{ => samples}/namespace-optimization/foo.js (100%) rename test/form/{ => samples}/namespace-optimization/main.js (100%) rename test/form/{ => samples}/namespace-optimization/quux.js (100%) rename test/form/{ => samples}/namespaced-default-exports/_config.js (100%) rename test/form/{ => samples}/namespaced-default-exports/_expected/amd.js (100%) rename test/form/{ => samples}/namespaced-default-exports/_expected/cjs.js (100%) rename test/form/{ => samples}/namespaced-default-exports/_expected/es.js (100%) rename test/form/{ => samples}/namespaced-default-exports/_expected/iife.js (100%) rename test/form/{ => samples}/namespaced-default-exports/_expected/umd.js (100%) rename test/form/{ => samples}/namespaced-default-exports/main.js (100%) rename test/form/{ => samples}/namespaced-named-exports/_config.js (100%) rename test/form/{ => samples}/namespaced-named-exports/_expected/amd.js (100%) rename test/form/{ => samples}/namespaced-named-exports/_expected/cjs.js (100%) rename test/form/{ => samples}/namespaced-named-exports/_expected/es.js (100%) rename test/form/{ => samples}/namespaced-named-exports/_expected/iife.js (100%) rename test/form/{ => samples}/namespaced-named-exports/_expected/umd.js (100%) rename test/form/{ => samples}/namespaced-named-exports/main.js (100%) rename test/form/{ => samples}/no-imports-or-exports/_config.js (100%) rename test/form/{ => samples}/no-imports-or-exports/_expected/amd.js (100%) rename test/form/{ => samples}/no-imports-or-exports/_expected/cjs.js (100%) rename test/form/{ => samples}/no-imports-or-exports/_expected/es.js (100%) rename test/form/{ => samples}/no-imports-or-exports/_expected/iife.js (100%) rename test/form/{ => samples}/no-imports-or-exports/_expected/umd.js (100%) rename test/form/{ => samples}/no-imports-or-exports/main.js (100%) rename test/form/{ => samples}/no-treeshake-conflict/_config.js (100%) rename test/form/{ => samples}/no-treeshake-conflict/_expected/amd.js (100%) rename test/form/{ => samples}/no-treeshake-conflict/_expected/cjs.js (100%) rename test/form/{ => samples}/no-treeshake-conflict/_expected/es.js (100%) rename test/form/{ => samples}/no-treeshake-conflict/_expected/es6.js (100%) rename test/form/{ => samples}/no-treeshake-conflict/_expected/iife.js (100%) rename test/form/{ => samples}/no-treeshake-conflict/_expected/umd.js (100%) rename test/form/{ => samples}/no-treeshake-conflict/main.js (100%) rename test/form/{ => samples}/no-treeshake-conflict/other.js (100%) rename test/form/{ => samples}/no-treeshake/_config.js (100%) rename test/form/{ => samples}/no-treeshake/_expected/amd.js (100%) rename test/form/{ => samples}/no-treeshake/_expected/cjs.js (100%) rename test/form/{ => samples}/no-treeshake/_expected/es.js (100%) rename test/form/{ => samples}/no-treeshake/_expected/iife.js (100%) rename test/form/{ => samples}/no-treeshake/_expected/umd.js (100%) rename test/form/{ => samples}/no-treeshake/foo.js (100%) rename test/form/{ => samples}/no-treeshake/main.js (100%) rename test/form/{ => samples}/no-treeshake/quux.js (100%) rename test/form/{ => samples}/non-empty-block-statement/_config.js (100%) rename test/form/{ => samples}/non-empty-block-statement/_expected/amd.js (100%) rename test/form/{ => samples}/non-empty-block-statement/_expected/cjs.js (100%) rename test/form/{ => samples}/non-empty-block-statement/_expected/es.js (100%) rename test/form/{ => samples}/non-empty-block-statement/_expected/iife.js (100%) rename test/form/{ => samples}/non-empty-block-statement/_expected/umd.js (100%) rename test/form/{ => samples}/non-empty-block-statement/main.js (100%) rename test/form/{ => samples}/object-destructuring-default-values/_config.js (100%) rename test/form/{ => samples}/object-destructuring-default-values/_expected/amd.js (100%) rename test/form/{ => samples}/object-destructuring-default-values/_expected/cjs.js (100%) rename test/form/{ => samples}/object-destructuring-default-values/_expected/es.js (100%) rename test/form/{ => samples}/object-destructuring-default-values/_expected/iife.js (100%) rename test/form/{ => samples}/object-destructuring-default-values/_expected/umd.js (100%) rename test/form/{ => samples}/object-destructuring-default-values/main.js (100%) rename test/form/{ => samples}/paths-function/_config.js (100%) rename test/form/{ => samples}/paths-function/_expected/amd.js (100%) rename test/form/{ => samples}/paths-function/_expected/cjs.js (100%) rename test/form/{ => samples}/paths-function/_expected/es.js (100%) rename test/form/{ => samples}/paths-function/_expected/iife.js (100%) rename test/form/{ => samples}/paths-function/_expected/umd.js (100%) rename test/form/{ => samples}/paths-function/main.js (100%) rename test/form/{ => samples}/paths-relative/_config.js (100%) rename test/form/{ => samples}/paths-relative/_expected/amd.js (100%) rename test/form/{ => samples}/paths-relative/_expected/cjs.js (100%) rename test/form/{ => samples}/paths-relative/_expected/es.js (100%) rename test/form/{ => samples}/paths-relative/_expected/iife.js (100%) rename test/form/{ => samples}/paths-relative/_expected/umd.js (100%) rename test/form/{ => samples}/paths-relative/main.js (100%) rename test/form/{ => samples}/paths/_config.js (100%) rename test/form/{ => samples}/paths/_expected/amd.js (100%) rename test/form/{ => samples}/paths/_expected/cjs.js (100%) rename test/form/{ => samples}/paths/_expected/es.js (100%) rename test/form/{ => samples}/paths/_expected/iife.js (100%) rename test/form/{ => samples}/paths/_expected/umd.js (100%) rename test/form/{ => samples}/paths/main.js (100%) rename test/form/{ => samples}/prefer-const/_config.js (100%) rename test/form/{ => samples}/prefer-const/_expected/amd.js (100%) rename test/form/{ => samples}/prefer-const/_expected/cjs.js (100%) rename test/form/{ => samples}/prefer-const/_expected/es.js (100%) rename test/form/{ => samples}/prefer-const/_expected/iife.js (100%) rename test/form/{ => samples}/prefer-const/_expected/umd.js (100%) rename test/form/{ => samples}/prefer-const/main.js (100%) rename test/form/{ => samples}/prefer-const/namespace.js (100%) rename test/form/{ => samples}/preserve-debugger/_config.js (100%) rename test/form/{ => samples}/preserve-debugger/_expected/amd.js (100%) rename test/form/{ => samples}/preserve-debugger/_expected/cjs.js (100%) rename test/form/{ => samples}/preserve-debugger/_expected/es.js (100%) rename test/form/{ => samples}/preserve-debugger/_expected/iife.js (100%) rename test/form/{ => samples}/preserve-debugger/_expected/umd.js (100%) rename test/form/{ => samples}/preserve-debugger/main.js (100%) rename test/form/{ => samples}/preserves-comments-after-imports/_config.js (100%) rename test/form/{ => samples}/preserves-comments-after-imports/_expected/amd.js (100%) rename test/form/{ => samples}/preserves-comments-after-imports/_expected/cjs.js (100%) rename test/form/{ => samples}/preserves-comments-after-imports/_expected/es.js (100%) rename test/form/{ => samples}/preserves-comments-after-imports/_expected/iife.js (100%) rename test/form/{ => samples}/preserves-comments-after-imports/_expected/umd.js (100%) rename test/form/{ => samples}/preserves-comments-after-imports/main.js (100%) rename test/form/{ => samples}/preserves-comments-after-imports/number.js (100%) rename test/form/{ => samples}/prune-pure-unused-import-array/_config.js (100%) rename test/form/{ => samples}/prune-pure-unused-import-array/_expected/amd.js (100%) rename test/form/{ => samples}/prune-pure-unused-import-array/_expected/cjs.js (100%) rename test/form/{ => samples}/prune-pure-unused-import-array/_expected/es.js (100%) rename test/form/{ => samples}/prune-pure-unused-import-array/_expected/iife.js (100%) rename test/form/{ => samples}/prune-pure-unused-import-array/_expected/umd.js (100%) rename test/form/{ => samples}/prune-pure-unused-import-array/main.js (100%) rename test/form/{ => samples}/prune-pure-unused-import-function/_config.js (100%) rename test/form/{ => samples}/prune-pure-unused-import-function/_expected/amd.js (100%) rename test/form/{ => samples}/prune-pure-unused-import-function/_expected/cjs.js (100%) rename test/form/{ => samples}/prune-pure-unused-import-function/_expected/es.js (100%) rename test/form/{ => samples}/prune-pure-unused-import-function/_expected/iife.js (100%) rename test/form/{ => samples}/prune-pure-unused-import-function/_expected/umd.js (100%) rename test/form/{ => samples}/prune-pure-unused-import-function/main.js (100%) rename test/form/{ => samples}/prune-pure-unused-import/_config.js (100%) rename test/form/{ => samples}/prune-pure-unused-import/_expected/amd.js (100%) rename test/form/{ => samples}/prune-pure-unused-import/_expected/cjs.js (100%) rename test/form/{ => samples}/prune-pure-unused-import/_expected/es.js (100%) rename test/form/{ => samples}/prune-pure-unused-import/_expected/iife.js (100%) rename test/form/{ => samples}/prune-pure-unused-import/_expected/umd.js (100%) rename test/form/{ => samples}/prune-pure-unused-import/main.js (100%) rename test/form/{ => samples}/reexports-from-external/_config.js (100%) rename test/form/{ => samples}/reexports-from-external/_expected/amd.js (100%) rename test/form/{ => samples}/reexports-from-external/_expected/cjs.js (100%) rename test/form/{ => samples}/reexports-from-external/_expected/es.js (100%) rename test/form/{ => samples}/reexports-from-external/_expected/iife.js (100%) rename test/form/{ => samples}/reexports-from-external/_expected/umd.js (100%) rename test/form/{ => samples}/reexports-from-external/main.js (100%) rename test/form/{ => samples}/relative-external-with-global/_config.js (100%) rename test/form/{ => samples}/relative-external-with-global/_expected/amd.js (100%) rename test/form/{ => samples}/relative-external-with-global/_expected/cjs.js (100%) rename test/form/{ => samples}/relative-external-with-global/_expected/es.js (100%) rename test/form/{ => samples}/relative-external-with-global/_expected/iife.js (100%) rename test/form/{ => samples}/relative-external-with-global/_expected/umd.js (100%) rename test/form/{ => samples}/relative-external-with-global/main.js (100%) rename test/form/{ => samples}/removes-existing-sourcemap-comments/_config.js (100%) rename test/form/{ => samples}/removes-existing-sourcemap-comments/_expected/amd.js (100%) rename test/form/{ => samples}/removes-existing-sourcemap-comments/_expected/cjs.js (100%) rename test/form/{ => samples}/removes-existing-sourcemap-comments/_expected/es.js (100%) rename test/form/{ => samples}/removes-existing-sourcemap-comments/_expected/iife.js (100%) rename test/form/{ => samples}/removes-existing-sourcemap-comments/_expected/umd.js (100%) rename test/form/{ => samples}/removes-existing-sourcemap-comments/foo.js (100%) rename test/form/{ => samples}/removes-existing-sourcemap-comments/main.js (100%) rename test/form/{ => samples}/self-calling-function-with-effects/_config.js (100%) rename test/form/{ => samples}/self-calling-function-with-effects/_expected/amd.js (100%) rename test/form/{ => samples}/self-calling-function-with-effects/_expected/cjs.js (100%) rename test/form/{ => samples}/self-calling-function-with-effects/_expected/es.js (100%) rename test/form/{ => samples}/self-calling-function-with-effects/_expected/iife.js (100%) rename test/form/{ => samples}/self-calling-function-with-effects/_expected/umd.js (100%) rename test/form/{ => samples}/self-calling-function-with-effects/main.js (100%) rename test/form/{ => samples}/self-calling-function/_config.js (100%) rename test/form/{ => samples}/self-calling-function/_expected/amd.js (100%) rename test/form/{ => samples}/self-calling-function/_expected/cjs.js (100%) rename test/form/{ => samples}/self-calling-function/_expected/es.js (100%) rename test/form/{ => samples}/self-calling-function/_expected/iife.js (100%) rename test/form/{ => samples}/self-calling-function/_expected/umd.js (100%) rename test/form/{ => samples}/self-calling-function/main.js (100%) rename test/form/{ => samples}/self-contained-bundle/_config.js (100%) rename test/form/{ => samples}/self-contained-bundle/_expected/amd.js (100%) rename test/form/{ => samples}/self-contained-bundle/_expected/cjs.js (100%) rename test/form/{ => samples}/self-contained-bundle/_expected/es.js (100%) rename test/form/{ => samples}/self-contained-bundle/_expected/iife.js (100%) rename test/form/{ => samples}/self-contained-bundle/_expected/umd.js (100%) rename test/form/{ => samples}/self-contained-bundle/foo.js (100%) rename test/form/{ => samples}/self-contained-bundle/main.js (100%) rename test/form/{ => samples}/shorthand-properties/_config.js (100%) rename test/form/{ => samples}/shorthand-properties/_expected/amd.js (100%) rename test/form/{ => samples}/shorthand-properties/_expected/cjs.js (100%) rename test/form/{ => samples}/shorthand-properties/_expected/es.js (100%) rename test/form/{ => samples}/shorthand-properties/_expected/iife.js (100%) rename test/form/{ => samples}/shorthand-properties/_expected/umd.js (100%) rename test/form/{ => samples}/shorthand-properties/bar.js (100%) rename test/form/{ => samples}/shorthand-properties/baz.js (100%) rename test/form/{ => samples}/shorthand-properties/foo.js (100%) rename test/form/{ => samples}/shorthand-properties/main.js (100%) rename test/form/{ => samples}/side-effect-b/_config.js (100%) rename test/form/{ => samples}/side-effect-b/_expected/amd.js (100%) rename test/form/{ => samples}/side-effect-b/_expected/cjs.js (100%) rename test/form/{ => samples}/side-effect-b/_expected/es.js (100%) rename test/form/{ => samples}/side-effect-b/_expected/iife.js (100%) rename test/form/{ => samples}/side-effect-b/_expected/umd.js (100%) rename test/form/{ => samples}/side-effect-b/main.js (100%) rename test/form/{ => samples}/side-effect-c/_config.js (100%) rename test/form/{ => samples}/side-effect-c/_expected/amd.js (100%) rename test/form/{ => samples}/side-effect-c/_expected/cjs.js (100%) rename test/form/{ => samples}/side-effect-c/_expected/es.js (100%) rename test/form/{ => samples}/side-effect-c/_expected/iife.js (100%) rename test/form/{ => samples}/side-effect-c/_expected/umd.js (100%) rename test/form/{ => samples}/side-effect-c/main.js (100%) rename test/form/{ => samples}/side-effect-d/_config.js (100%) rename test/form/{ => samples}/side-effect-d/_expected/amd.js (100%) rename test/form/{ => samples}/side-effect-d/_expected/cjs.js (100%) rename test/form/{ => samples}/side-effect-d/_expected/es.js (100%) rename test/form/{ => samples}/side-effect-d/_expected/iife.js (100%) rename test/form/{ => samples}/side-effect-d/_expected/umd.js (100%) rename test/form/{ => samples}/side-effect-d/main.js (100%) rename test/form/{ => samples}/side-effect-e/_config.js (100%) rename test/form/{ => samples}/side-effect-e/_expected/amd.js (100%) rename test/form/{ => samples}/side-effect-e/_expected/cjs.js (100%) rename test/form/{ => samples}/side-effect-e/_expected/es.js (100%) rename test/form/{ => samples}/side-effect-e/_expected/iife.js (100%) rename test/form/{ => samples}/side-effect-e/_expected/umd.js (100%) rename test/form/{ => samples}/side-effect-e/main.js (100%) rename test/form/{ => samples}/side-effect-es5-classes/_config.js (100%) rename test/form/{ => samples}/side-effect-es5-classes/_expected/amd.js (100%) rename test/form/{ => samples}/side-effect-es5-classes/_expected/cjs.js (100%) rename test/form/{ => samples}/side-effect-es5-classes/_expected/es.js (100%) rename test/form/{ => samples}/side-effect-es5-classes/_expected/iife.js (100%) rename test/form/{ => samples}/side-effect-es5-classes/_expected/umd.js (100%) rename test/form/{ => samples}/side-effect-es5-classes/arrow.js (100%) rename test/form/{ => samples}/side-effect-es5-classes/bar.js (100%) rename test/form/{ => samples}/side-effect-es5-classes/baz.js (100%) rename test/form/{ => samples}/side-effect-es5-classes/corge.js (100%) rename test/form/{ => samples}/side-effect-es5-classes/foo.js (100%) rename test/form/{ => samples}/side-effect-es5-classes/main.js (100%) rename test/form/{ => samples}/side-effect-es5-classes/qux.js (100%) rename test/form/{ => samples}/side-effect-f/_config.js (100%) rename test/form/{ => samples}/side-effect-f/_expected/amd.js (100%) rename test/form/{ => samples}/side-effect-f/_expected/cjs.js (100%) rename test/form/{ => samples}/side-effect-f/_expected/es.js (100%) rename test/form/{ => samples}/side-effect-f/_expected/iife.js (100%) rename test/form/{ => samples}/side-effect-f/_expected/umd.js (100%) rename test/form/{ => samples}/side-effect-f/main.js (100%) rename test/form/{ => samples}/side-effect-g/_config.js (100%) rename test/form/{ => samples}/side-effect-g/_expected/amd.js (100%) rename test/form/{ => samples}/side-effect-g/_expected/cjs.js (100%) rename test/form/{ => samples}/side-effect-g/_expected/es.js (100%) rename test/form/{ => samples}/side-effect-g/_expected/iife.js (100%) rename test/form/{ => samples}/side-effect-g/_expected/umd.js (100%) rename test/form/{ => samples}/side-effect-g/main.js (100%) rename test/form/{ => samples}/side-effect-h/_config.js (100%) rename test/form/{ => samples}/side-effect-h/_expected/amd.js (100%) rename test/form/{ => samples}/side-effect-h/_expected/cjs.js (100%) rename test/form/{ => samples}/side-effect-h/_expected/es.js (100%) rename test/form/{ => samples}/side-effect-h/_expected/iife.js (100%) rename test/form/{ => samples}/side-effect-h/_expected/umd.js (100%) rename test/form/{ => samples}/side-effect-h/main.js (100%) rename test/form/{ => samples}/side-effect-i/_config.js (100%) rename test/form/{ => samples}/side-effect-i/_expected/amd.js (100%) rename test/form/{ => samples}/side-effect-i/_expected/cjs.js (100%) rename test/form/{ => samples}/side-effect-i/_expected/es.js (100%) rename test/form/{ => samples}/side-effect-i/_expected/iife.js (100%) rename test/form/{ => samples}/side-effect-i/_expected/umd.js (100%) rename test/form/{ => samples}/side-effect-i/main.js (100%) rename test/form/{ => samples}/side-effect-j/_config.js (100%) rename test/form/{ => samples}/side-effect-j/_expected/amd.js (100%) rename test/form/{ => samples}/side-effect-j/_expected/cjs.js (100%) rename test/form/{ => samples}/side-effect-j/_expected/es.js (100%) rename test/form/{ => samples}/side-effect-j/_expected/iife.js (100%) rename test/form/{ => samples}/side-effect-j/_expected/umd.js (100%) rename test/form/{ => samples}/side-effect-j/foo.js (100%) rename test/form/{ => samples}/side-effect-j/main.js (100%) rename test/form/{ => samples}/side-effect-k/_config.js (100%) rename test/form/{ => samples}/side-effect-k/_expected/amd.js (100%) rename test/form/{ => samples}/side-effect-k/_expected/cjs.js (100%) rename test/form/{ => samples}/side-effect-k/_expected/es.js (100%) rename test/form/{ => samples}/side-effect-k/_expected/iife.js (100%) rename test/form/{ => samples}/side-effect-k/_expected/umd.js (100%) rename test/form/{ => samples}/side-effect-k/foo.js (100%) rename test/form/{ => samples}/side-effect-k/main.js (100%) rename test/form/{ => samples}/side-effect-l/_config.js (100%) rename test/form/{ => samples}/side-effect-l/_expected/amd.js (100%) rename test/form/{ => samples}/side-effect-l/_expected/cjs.js (100%) rename test/form/{ => samples}/side-effect-l/_expected/es.js (100%) rename test/form/{ => samples}/side-effect-l/_expected/iife.js (100%) rename test/form/{ => samples}/side-effect-l/_expected/umd.js (100%) rename test/form/{ => samples}/side-effect-l/foo.js (100%) rename test/form/{ => samples}/side-effect-l/main.js (100%) rename test/form/{ => samples}/side-effect-m/_config.js (100%) rename test/form/{ => samples}/side-effect-m/_expected/amd.js (100%) rename test/form/{ => samples}/side-effect-m/_expected/cjs.js (100%) rename test/form/{ => samples}/side-effect-m/_expected/es.js (100%) rename test/form/{ => samples}/side-effect-m/_expected/iife.js (100%) rename test/form/{ => samples}/side-effect-m/_expected/umd.js (100%) rename test/form/{ => samples}/side-effect-m/even.js (100%) rename test/form/{ => samples}/side-effect-m/main.js (100%) rename test/form/{ => samples}/side-effect-m/odd.js (100%) rename test/form/{ => samples}/side-effect-n/_config.js (100%) rename test/form/{ => samples}/side-effect-n/_expected/amd.js (100%) rename test/form/{ => samples}/side-effect-n/_expected/cjs.js (100%) rename test/form/{ => samples}/side-effect-n/_expected/es.js (100%) rename test/form/{ => samples}/side-effect-n/_expected/iife.js (100%) rename test/form/{ => samples}/side-effect-n/_expected/umd.js (100%) rename test/form/{ => samples}/side-effect-n/main.js (100%) rename test/form/{ => samples}/side-effect-o/_config.js (100%) rename test/form/{ => samples}/side-effect-o/_expected/amd.js (100%) rename test/form/{ => samples}/side-effect-o/_expected/cjs.js (100%) rename test/form/{ => samples}/side-effect-o/_expected/es.js (100%) rename test/form/{ => samples}/side-effect-o/_expected/iife.js (100%) rename test/form/{ => samples}/side-effect-o/_expected/umd.js (100%) rename test/form/{ => samples}/side-effect-o/main.js (100%) rename test/form/{ => samples}/side-effect-p/_config.js (100%) rename test/form/{ => samples}/side-effect-p/_expected/amd.js (100%) rename test/form/{ => samples}/side-effect-p/_expected/cjs.js (100%) rename test/form/{ => samples}/side-effect-p/_expected/es.js (100%) rename test/form/{ => samples}/side-effect-p/_expected/iife.js (100%) rename test/form/{ => samples}/side-effect-p/_expected/umd.js (100%) rename test/form/{ => samples}/side-effect-p/bool.js (100%) rename test/form/{ => samples}/side-effect-p/main.js (100%) rename test/form/{ => samples}/side-effect-q/_config.js (100%) rename test/form/{ => samples}/side-effect-q/_expected/amd.js (100%) rename test/form/{ => samples}/side-effect-q/_expected/cjs.js (100%) rename test/form/{ => samples}/side-effect-q/_expected/es.js (100%) rename test/form/{ => samples}/side-effect-q/_expected/iife.js (100%) rename test/form/{ => samples}/side-effect-q/_expected/umd.js (100%) rename test/form/{ => samples}/side-effect-q/main.js (100%) rename test/form/{ => samples}/side-effect-r/_config.js (100%) rename test/form/{ => samples}/side-effect-r/_expected/amd.js (100%) rename test/form/{ => samples}/side-effect-r/_expected/cjs.js (100%) rename test/form/{ => samples}/side-effect-r/_expected/es.js (100%) rename test/form/{ => samples}/side-effect-r/_expected/iife.js (100%) rename test/form/{ => samples}/side-effect-r/_expected/umd.js (100%) rename test/form/{ => samples}/side-effect-r/main.js (100%) rename test/form/{ => samples}/side-effect-s/_config.js (100%) rename test/form/{ => samples}/side-effect-s/_expected/amd.js (100%) rename test/form/{ => samples}/side-effect-s/_expected/cjs.js (100%) rename test/form/{ => samples}/side-effect-s/_expected/es.js (100%) rename test/form/{ => samples}/side-effect-s/_expected/iife.js (100%) rename test/form/{ => samples}/side-effect-s/_expected/umd.js (100%) rename test/form/{ => samples}/side-effect-s/main.js (100%) rename test/form/{ => samples}/side-effect-t/_config.js (100%) rename test/form/{ => samples}/side-effect-t/_expected/amd.js (100%) rename test/form/{ => samples}/side-effect-t/_expected/cjs.js (100%) rename test/form/{ => samples}/side-effect-t/_expected/es.js (100%) rename test/form/{ => samples}/side-effect-t/_expected/iife.js (100%) rename test/form/{ => samples}/side-effect-t/_expected/umd.js (100%) rename test/form/{ => samples}/side-effect-t/main.js (100%) rename test/form/{ => samples}/side-effect/_config.js (100%) rename test/form/{ => samples}/side-effect/_expected/amd.js (100%) rename test/form/{ => samples}/side-effect/_expected/cjs.js (100%) rename test/form/{ => samples}/side-effect/_expected/es.js (100%) rename test/form/{ => samples}/side-effect/_expected/iife.js (100%) rename test/form/{ => samples}/side-effect/_expected/umd.js (100%) rename test/form/{ => samples}/side-effect/foo.js (100%) rename test/form/{ => samples}/side-effect/main.js (100%) rename test/form/{ => samples}/side-effects-in-template-literals/_config.js (100%) rename test/form/{ => samples}/side-effects-in-template-literals/_expected/amd.js (100%) rename test/form/{ => samples}/side-effects-in-template-literals/_expected/cjs.js (100%) rename test/form/{ => samples}/side-effects-in-template-literals/_expected/es.js (100%) rename test/form/{ => samples}/side-effects-in-template-literals/_expected/iife.js (100%) rename test/form/{ => samples}/side-effects-in-template-literals/_expected/umd.js (100%) rename test/form/{ => samples}/side-effects-in-template-literals/main.js (100%) rename test/form/{ => samples}/skips-dead-branches-b/_config.js (100%) rename test/form/{ => samples}/skips-dead-branches-b/_expected/amd.js (100%) rename test/form/{ => samples}/skips-dead-branches-b/_expected/cjs.js (100%) rename test/form/{ => samples}/skips-dead-branches-b/_expected/es.js (100%) rename test/form/{ => samples}/skips-dead-branches-b/_expected/iife.js (100%) rename test/form/{ => samples}/skips-dead-branches-b/_expected/umd.js (100%) rename test/form/{ => samples}/skips-dead-branches-b/main.js (100%) rename test/form/{ => samples}/skips-dead-branches-c/_config.js (100%) rename test/form/{ => samples}/skips-dead-branches-c/_expected/amd.js (100%) rename test/form/{ => samples}/skips-dead-branches-c/_expected/cjs.js (100%) rename test/form/{ => samples}/skips-dead-branches-c/_expected/es.js (100%) rename test/form/{ => samples}/skips-dead-branches-c/_expected/iife.js (100%) rename test/form/{ => samples}/skips-dead-branches-c/_expected/umd.js (100%) rename test/form/{ => samples}/skips-dead-branches-c/main.js (100%) rename test/form/{ => samples}/skips-dead-branches-d/_config.js (100%) rename test/form/{ => samples}/skips-dead-branches-d/_expected/amd.js (100%) rename test/form/{ => samples}/skips-dead-branches-d/_expected/cjs.js (100%) rename test/form/{ => samples}/skips-dead-branches-d/_expected/es.js (100%) rename test/form/{ => samples}/skips-dead-branches-d/_expected/iife.js (100%) rename test/form/{ => samples}/skips-dead-branches-d/_expected/umd.js (100%) rename test/form/{ => samples}/skips-dead-branches-d/main.js (100%) rename test/form/{ => samples}/skips-dead-branches-e/_config.js (100%) rename test/form/{ => samples}/skips-dead-branches-e/_expected/amd.js (100%) rename test/form/{ => samples}/skips-dead-branches-e/_expected/cjs.js (100%) rename test/form/{ => samples}/skips-dead-branches-e/_expected/es.js (100%) rename test/form/{ => samples}/skips-dead-branches-e/_expected/iife.js (100%) rename test/form/{ => samples}/skips-dead-branches-e/_expected/umd.js (100%) rename test/form/{ => samples}/skips-dead-branches-e/main.js (100%) rename test/form/{ => samples}/skips-dead-branches-f/_config.js (100%) rename test/form/{ => samples}/skips-dead-branches-f/_expected/amd.js (100%) rename test/form/{ => samples}/skips-dead-branches-f/_expected/cjs.js (100%) rename test/form/{ => samples}/skips-dead-branches-f/_expected/es.js (100%) rename test/form/{ => samples}/skips-dead-branches-f/_expected/iife.js (100%) rename test/form/{ => samples}/skips-dead-branches-f/_expected/umd.js (100%) rename test/form/{ => samples}/skips-dead-branches-f/main.js (100%) rename test/form/{ => samples}/skips-dead-branches-g/_config.js (100%) rename test/form/{ => samples}/skips-dead-branches-g/_expected/amd.js (100%) rename test/form/{ => samples}/skips-dead-branches-g/_expected/cjs.js (100%) rename test/form/{ => samples}/skips-dead-branches-g/_expected/es.js (100%) rename test/form/{ => samples}/skips-dead-branches-g/_expected/iife.js (100%) rename test/form/{ => samples}/skips-dead-branches-g/_expected/umd.js (100%) rename test/form/{ => samples}/skips-dead-branches-g/main.js (100%) rename test/form/{ => samples}/skips-dead-branches-h/_config.js (100%) rename test/form/{ => samples}/skips-dead-branches-h/_expected/amd.js (100%) rename test/form/{ => samples}/skips-dead-branches-h/_expected/cjs.js (100%) rename test/form/{ => samples}/skips-dead-branches-h/_expected/es.js (100%) rename test/form/{ => samples}/skips-dead-branches-h/_expected/iife.js (100%) rename test/form/{ => samples}/skips-dead-branches-h/_expected/umd.js (100%) rename test/form/{ => samples}/skips-dead-branches-h/main.js (100%) rename test/form/{ => samples}/skips-dead-branches-i/_config.js (100%) rename test/form/{ => samples}/skips-dead-branches-i/_expected/amd.js (100%) rename test/form/{ => samples}/skips-dead-branches-i/_expected/cjs.js (100%) rename test/form/{ => samples}/skips-dead-branches-i/_expected/es.js (100%) rename test/form/{ => samples}/skips-dead-branches-i/_expected/iife.js (100%) rename test/form/{ => samples}/skips-dead-branches-i/_expected/umd.js (100%) rename test/form/{ => samples}/skips-dead-branches-i/main.js (100%) rename test/form/{ => samples}/skips-dead-branches-j/_config.js (100%) rename test/form/{ => samples}/skips-dead-branches-j/_expected/amd.js (100%) rename test/form/{ => samples}/skips-dead-branches-j/_expected/cjs.js (100%) rename test/form/{ => samples}/skips-dead-branches-j/_expected/es.js (100%) rename test/form/{ => samples}/skips-dead-branches-j/_expected/iife.js (100%) rename test/form/{ => samples}/skips-dead-branches-j/_expected/umd.js (100%) rename test/form/{ => samples}/skips-dead-branches-j/main.js (100%) rename test/form/{ => samples}/skips-dead-branches/_config.js (100%) rename test/form/{ => samples}/skips-dead-branches/_expected/amd.js (100%) rename test/form/{ => samples}/skips-dead-branches/_expected/cjs.js (100%) rename test/form/{ => samples}/skips-dead-branches/_expected/es.js (100%) rename test/form/{ => samples}/skips-dead-branches/_expected/iife.js (100%) rename test/form/{ => samples}/skips-dead-branches/_expected/umd.js (100%) rename test/form/{ => samples}/skips-dead-branches/main.js (100%) rename test/form/{ => samples}/sourcemaps-external/_config.js (100%) rename test/form/{ => samples}/sourcemaps-external/_expected/amd.js (100%) rename test/form/{ => samples}/sourcemaps-external/_expected/amd.js.map (100%) rename test/form/{ => samples}/sourcemaps-external/_expected/cjs.js (100%) rename test/form/{ => samples}/sourcemaps-external/_expected/cjs.js.map (100%) rename test/form/{ => samples}/sourcemaps-external/_expected/es.js (100%) rename test/form/{ => samples}/sourcemaps-external/_expected/es.js.map (100%) rename test/form/{ => samples}/sourcemaps-external/_expected/iife.js (100%) rename test/form/{ => samples}/sourcemaps-external/_expected/iife.js.map (100%) rename test/form/{ => samples}/sourcemaps-external/_expected/umd.js (100%) rename test/form/{ => samples}/sourcemaps-external/_expected/umd.js.map (100%) rename test/form/{ => samples}/sourcemaps-external/bar.js (100%) rename test/form/{ => samples}/sourcemaps-external/foo.js (100%) rename test/form/{ => samples}/sourcemaps-external/main.js (100%) rename test/form/{ => samples}/sourcemaps-inline/_config.js (100%) rename test/form/{ => samples}/sourcemaps-inline/_expected/amd.js (100%) rename test/form/{ => samples}/sourcemaps-inline/_expected/cjs.js (100%) rename test/form/{ => samples}/sourcemaps-inline/_expected/es.js (100%) rename test/form/{ => samples}/sourcemaps-inline/_expected/iife.js (100%) rename test/form/{ => samples}/sourcemaps-inline/_expected/umd.js (100%) rename test/form/{ => samples}/sourcemaps-inline/bar.js (100%) rename test/form/{ => samples}/sourcemaps-inline/foo.js (100%) rename test/form/{ => samples}/sourcemaps-inline/main.js (100%) rename test/form/{ => samples}/spacing-after-function-with-semicolon/_config.js (100%) rename test/form/{ => samples}/spacing-after-function-with-semicolon/_expected/amd.js (100%) rename test/form/{ => samples}/spacing-after-function-with-semicolon/_expected/cjs.js (100%) rename test/form/{ => samples}/spacing-after-function-with-semicolon/_expected/es.js (100%) rename test/form/{ => samples}/spacing-after-function-with-semicolon/_expected/iife.js (100%) rename test/form/{ => samples}/spacing-after-function-with-semicolon/_expected/umd.js (100%) rename test/form/{ => samples}/spacing-after-function-with-semicolon/main.js (100%) rename test/form/{ => samples}/string-indentation-b/_config.js (100%) rename test/form/{ => samples}/string-indentation-b/_expected/amd.js (100%) rename test/form/{ => samples}/string-indentation-b/_expected/cjs.js (100%) rename test/form/{ => samples}/string-indentation-b/_expected/es.js (100%) rename test/form/{ => samples}/string-indentation-b/_expected/iife.js (100%) rename test/form/{ => samples}/string-indentation-b/_expected/umd.js (100%) rename test/form/{ => samples}/string-indentation-b/main.js (100%) rename test/form/{ => samples}/string-indentation/_config.js (100%) rename test/form/{ => samples}/string-indentation/_expected/amd.js (100%) rename test/form/{ => samples}/string-indentation/_expected/cjs.js (100%) rename test/form/{ => samples}/string-indentation/_expected/es.js (100%) rename test/form/{ => samples}/string-indentation/_expected/iife.js (100%) rename test/form/{ => samples}/string-indentation/_expected/umd.js (100%) rename test/form/{ => samples}/string-indentation/main.js (100%) rename test/form/{ => samples}/switch-scopes/_config.js (100%) rename test/form/{ => samples}/switch-scopes/_expected/amd.js (100%) rename test/form/{ => samples}/switch-scopes/_expected/cjs.js (100%) rename test/form/{ => samples}/switch-scopes/_expected/es.js (100%) rename test/form/{ => samples}/switch-scopes/_expected/iife.js (100%) rename test/form/{ => samples}/switch-scopes/_expected/umd.js (100%) rename test/form/{ => samples}/switch-scopes/main.js (100%) rename test/form/{ => samples}/this-is-undefined/_config.js (100%) rename test/form/{ => samples}/this-is-undefined/_expected/amd.js (100%) rename test/form/{ => samples}/this-is-undefined/_expected/cjs.js (100%) rename test/form/{ => samples}/this-is-undefined/_expected/es.js (100%) rename test/form/{ => samples}/this-is-undefined/_expected/iife.js (100%) rename test/form/{ => samples}/this-is-undefined/_expected/umd.js (100%) rename test/form/{ => samples}/this-is-undefined/main.js (100%) rename test/form/{ => samples}/transform-bundle-plugin-options/_config.js (100%) rename test/form/{ => samples}/transform-bundle-plugin-options/_expected/amd.js (100%) rename test/form/{ => samples}/transform-bundle-plugin-options/_expected/cjs.js (100%) rename test/form/{ => samples}/transform-bundle-plugin-options/_expected/es.js (100%) rename test/form/{ => samples}/transform-bundle-plugin-options/_expected/iife.js (100%) rename test/form/{ => samples}/transform-bundle-plugin-options/_expected/umd.js (100%) rename test/form/{ => samples}/transform-bundle-plugin-options/main.js (100%) rename test/form/{ => samples}/transform-bundle-plugin/_config.js (100%) rename test/form/{ => samples}/transform-bundle-plugin/_expected/amd.js (100%) rename test/form/{ => samples}/transform-bundle-plugin/_expected/cjs.js (100%) rename test/form/{ => samples}/transform-bundle-plugin/_expected/es.js (100%) rename test/form/{ => samples}/transform-bundle-plugin/_expected/iife.js (100%) rename test/form/{ => samples}/transform-bundle-plugin/_expected/umd.js (100%) rename test/form/{ => samples}/transform-bundle-plugin/main.js (100%) rename test/form/{ => samples}/umd-noconflict-extend/_config.js (100%) rename test/form/{ => samples}/umd-noconflict-extend/_expected/amd.js (100%) rename test/form/{ => samples}/umd-noconflict-extend/_expected/cjs.js (100%) rename test/form/{ => samples}/umd-noconflict-extend/_expected/es.js (100%) rename test/form/{ => samples}/umd-noconflict-extend/_expected/iife.js (100%) rename test/form/{ => samples}/umd-noconflict-extend/_expected/umd.js (100%) rename test/form/{ => samples}/umd-noconflict-extend/main.js (100%) rename test/form/{ => samples}/umd-noconflict-namespaced/_config.js (100%) rename test/form/{ => samples}/umd-noconflict-namespaced/_expected/amd.js (100%) rename test/form/{ => samples}/umd-noconflict-namespaced/_expected/cjs.js (100%) rename test/form/{ => samples}/umd-noconflict-namespaced/_expected/es.js (100%) rename test/form/{ => samples}/umd-noconflict-namespaced/_expected/iife.js (100%) rename test/form/{ => samples}/umd-noconflict-namespaced/_expected/umd.js (100%) rename test/form/{ => samples}/umd-noconflict-namespaced/main.js (100%) rename test/form/{ => samples}/umd-noconflict/_config.js (100%) rename test/form/{ => samples}/umd-noconflict/_expected/amd.js (100%) rename test/form/{ => samples}/umd-noconflict/_expected/cjs.js (100%) rename test/form/{ => samples}/umd-noconflict/_expected/es.js (100%) rename test/form/{ => samples}/umd-noconflict/_expected/iife.js (100%) rename test/form/{ => samples}/umd-noconflict/_expected/umd.js (100%) rename test/form/{ => samples}/umd-noconflict/main.js (100%) rename test/form/{ => samples}/unmodified-default-exports-function-argument/_config.js (100%) rename test/form/{ => samples}/unmodified-default-exports-function-argument/_expected/amd.js (100%) rename test/form/{ => samples}/unmodified-default-exports-function-argument/_expected/cjs.js (100%) rename test/form/{ => samples}/unmodified-default-exports-function-argument/_expected/es.js (100%) rename test/form/{ => samples}/unmodified-default-exports-function-argument/_expected/iife.js (100%) rename test/form/{ => samples}/unmodified-default-exports-function-argument/_expected/umd.js (100%) rename test/form/{ => samples}/unmodified-default-exports-function-argument/foo.js (100%) rename test/form/{ => samples}/unmodified-default-exports-function-argument/main.js (100%) rename test/form/{ => samples}/unmodified-default-exports/_config.js (100%) rename test/form/{ => samples}/unmodified-default-exports/_expected/amd.js (100%) rename test/form/{ => samples}/unmodified-default-exports/_expected/cjs.js (100%) rename test/form/{ => samples}/unmodified-default-exports/_expected/es.js (100%) rename test/form/{ => samples}/unmodified-default-exports/_expected/iife.js (100%) rename test/form/{ => samples}/unmodified-default-exports/_expected/umd.js (100%) rename test/form/{ => samples}/unmodified-default-exports/foo.js (100%) rename test/form/{ => samples}/unmodified-default-exports/main.js (100%) rename test/form/{ => samples}/unused-called-import/_config.js (100%) rename test/form/{ => samples}/unused-called-import/_expected/amd.js (100%) rename test/form/{ => samples}/unused-called-import/_expected/cjs.js (100%) rename test/form/{ => samples}/unused-called-import/_expected/es.js (100%) rename test/form/{ => samples}/unused-called-import/_expected/iife.js (100%) rename test/form/{ => samples}/unused-called-import/_expected/umd.js (100%) rename test/form/{ => samples}/unused-called-import/dead.js (100%) rename test/form/{ => samples}/unused-called-import/foo.js (100%) rename test/form/{ => samples}/unused-called-import/main.js (100%) rename test/form/{ => samples}/unused-called-with-side-effects/_config.js (100%) rename test/form/{ => samples}/unused-called-with-side-effects/_expected/amd.js (100%) rename test/form/{ => samples}/unused-called-with-side-effects/_expected/cjs.js (100%) rename test/form/{ => samples}/unused-called-with-side-effects/_expected/es.js (100%) rename test/form/{ => samples}/unused-called-with-side-effects/_expected/iife.js (100%) rename test/form/{ => samples}/unused-called-with-side-effects/_expected/umd.js (100%) rename test/form/{ => samples}/unused-called-with-side-effects/main.js (100%) rename test/form/{ => samples}/unused-default-exports/_config.js (100%) rename test/form/{ => samples}/unused-default-exports/_expected/amd.js (100%) rename test/form/{ => samples}/unused-default-exports/_expected/cjs.js (100%) rename test/form/{ => samples}/unused-default-exports/_expected/es.js (100%) rename test/form/{ => samples}/unused-default-exports/_expected/iife.js (100%) rename test/form/{ => samples}/unused-default-exports/_expected/umd.js (100%) rename test/form/{ => samples}/unused-default-exports/foo.js (100%) rename test/form/{ => samples}/unused-default-exports/main.js (100%) rename test/form/{ => samples}/unused-import/_config.js (100%) rename test/form/{ => samples}/unused-import/_expected/amd.js (100%) rename test/form/{ => samples}/unused-import/_expected/cjs.js (100%) rename test/form/{ => samples}/unused-import/_expected/es.js (100%) rename test/form/{ => samples}/unused-import/_expected/iife.js (100%) rename test/form/{ => samples}/unused-import/_expected/umd.js (100%) rename test/form/{ => samples}/unused-import/main.js (100%) rename test/form/{ => samples}/unused-inner-functions-and-classes/_config.js (100%) rename test/form/{ => samples}/unused-inner-functions-and-classes/_expected/amd.js (100%) rename test/form/{ => samples}/unused-inner-functions-and-classes/_expected/cjs.js (100%) rename test/form/{ => samples}/unused-inner-functions-and-classes/_expected/es.js (100%) rename test/form/{ => samples}/unused-inner-functions-and-classes/_expected/iife.js (100%) rename test/form/{ => samples}/unused-inner-functions-and-classes/_expected/umd.js (100%) rename test/form/{ => samples}/unused-inner-functions-and-classes/main.js (100%) rename test/form/{ => samples}/unused-inner-functions-and-classes/stuff.js (100%) rename test/form/{ => samples}/unused-var/_config.js (100%) rename test/form/{ => samples}/unused-var/_expected/amd.js (100%) rename test/form/{ => samples}/unused-var/_expected/cjs.js (100%) rename test/form/{ => samples}/unused-var/_expected/es.js (100%) rename test/form/{ => samples}/unused-var/_expected/iife.js (100%) rename test/form/{ => samples}/unused-var/_expected/umd.js (100%) rename test/form/{ => samples}/unused-var/foo.js (100%) rename test/form/{ => samples}/unused-var/main.js (100%) rename test/form/{ => samples}/whitespace-around-namespace-member-expression/_config.js (100%) rename test/form/{ => samples}/whitespace-around-namespace-member-expression/_expected/amd.js (100%) rename test/form/{ => samples}/whitespace-around-namespace-member-expression/_expected/cjs.js (100%) rename test/form/{ => samples}/whitespace-around-namespace-member-expression/_expected/es.js (100%) rename test/form/{ => samples}/whitespace-around-namespace-member-expression/_expected/iife.js (100%) rename test/form/{ => samples}/whitespace-around-namespace-member-expression/_expected/umd.js (100%) rename test/form/{ => samples}/whitespace-around-namespace-member-expression/foo.js (100%) rename test/form/{ => samples}/whitespace-around-namespace-member-expression/main.js (100%) create mode 100644 test/function/index.js rename test/function/{ => samples}/adds-semicolons-if-necessary-b/_config.js (100%) rename test/function/{ => samples}/adds-semicolons-if-necessary-b/foo.js (100%) rename test/function/{ => samples}/adds-semicolons-if-necessary-b/main.js (100%) rename test/function/{ => samples}/adds-semicolons-if-necessary-c/_config.js (100%) rename test/function/{ => samples}/adds-semicolons-if-necessary-c/foo.js (100%) rename test/function/{ => samples}/adds-semicolons-if-necessary-c/main.js (100%) rename test/function/{ => samples}/adds-semicolons-if-necessary/_config.js (100%) rename test/function/{ => samples}/adds-semicolons-if-necessary/foo.js (100%) rename test/function/{ => samples}/adds-semicolons-if-necessary/main.js (100%) rename test/function/{ => samples}/aliased-not-exported-twice/_config.js (100%) rename test/function/{ => samples}/aliased-not-exported-twice/foo.js (100%) rename test/function/{ => samples}/aliased-not-exported-twice/main.js (100%) rename test/function/{ => samples}/allow-reserved/_config.js (100%) rename test/function/{ => samples}/allow-reserved/main.js (100%) rename test/function/{ => samples}/allows-external-modules-from-nested-module/_config.js (100%) rename test/function/{ => samples}/allows-external-modules-from-nested-module/foo.js (100%) rename test/function/{ => samples}/allows-external-modules-from-nested-module/main.js (100%) rename test/function/{ => samples}/allows-unknown-binary-operators/_config.js (100%) rename test/function/{ => samples}/allows-unknown-binary-operators/main.js (100%) rename test/function/{ => samples}/already-deshadowed-import/_config.js (100%) rename test/function/{ => samples}/already-deshadowed-import/alice.js (100%) rename test/function/{ => samples}/already-deshadowed-import/bob.js (100%) rename test/function/{ => samples}/already-deshadowed-import/main.js (100%) rename test/function/{ => samples}/assign-namespace-to-var/_config.js (100%) rename test/function/{ => samples}/assign-namespace-to-var/b.js (100%) rename test/function/{ => samples}/assign-namespace-to-var/main.js (100%) rename test/function/{ => samples}/assignment-patterns/_config.js (100%) rename test/function/{ => samples}/assignment-patterns/main.js (100%) rename test/function/{ => samples}/assignment-patterns/other.js (100%) rename test/function/{ => samples}/assignment-to-exports-b/_config.js (100%) rename test/function/{ => samples}/assignment-to-exports-b/main.js (100%) rename test/function/{ => samples}/assignment-to-exports/_config.js (100%) rename test/function/{ => samples}/assignment-to-exports/main.js (100%) rename test/function/{ => samples}/assignment-to-re-exports-conflict/_config.js (100%) rename test/function/{ => samples}/assignment-to-re-exports-conflict/count.js (100%) rename test/function/{ => samples}/assignment-to-re-exports-conflict/main.js (100%) rename test/function/{ => samples}/assignment-to-re-exports/_config.js (100%) rename test/function/{ => samples}/assignment-to-re-exports/count.js (100%) rename test/function/{ => samples}/assignment-to-re-exports/main.js (100%) rename test/function/{ => samples}/bindings/_config.js (100%) rename test/function/{ => samples}/bindings/foo.js (100%) rename test/function/{ => samples}/bindings/main.js (100%) rename test/function/{ => samples}/braceless-arrow-function-returning-function/_config.js (100%) rename test/function/{ => samples}/braceless-arrow-function-returning-function/main.js (100%) rename test/function/{ => samples}/bundle-transformer-async/_config.js (100%) rename test/function/{ => samples}/bundle-transformer-async/main.js (100%) rename test/function/{ => samples}/call-external-function/_config.js (100%) rename test/function/{ => samples}/call-external-function/foo.js (100%) rename test/function/{ => samples}/call-external-function/main.js (100%) rename test/function/{ => samples}/call-non-function-default-exports/_config.js (100%) rename test/function/{ => samples}/call-non-function-default-exports/foo.js (100%) rename test/function/{ => samples}/call-non-function-default-exports/main.js (100%) rename test/function/{ => samples}/cannot-call-external-namespace/_config.js (100%) rename test/function/{ => samples}/cannot-call-external-namespace/main.js (100%) rename test/function/{ => samples}/cannot-call-internal-namespace/_config.js (100%) rename test/function/{ => samples}/cannot-call-internal-namespace/foo.js (100%) rename test/function/{ => samples}/cannot-call-internal-namespace/main.js (100%) rename test/function/{ => samples}/cannot-import-self-empty/_config.js (100%) rename test/function/{ => samples}/cannot-import-self-empty/main.js (100%) rename test/function/{ => samples}/cannot-import-self/_config.js (100%) rename test/function/{ => samples}/cannot-import-self/main.js (100%) rename test/function/{ => samples}/check-resolve-for-entry/_config.js (100%) rename test/function/{ => samples}/class-methods-not-renamed/_config.js (100%) rename test/function/{ => samples}/class-methods-not-renamed/foo.js (100%) rename test/function/{ => samples}/class-methods-not-renamed/main.js (100%) rename test/function/{ => samples}/conditional-definition/_config.js (100%) rename test/function/{ => samples}/conditional-definition/env.js (100%) rename test/function/{ => samples}/conditional-definition/main.js (100%) rename test/function/{ => samples}/configure-external-module-b/_config.js (100%) rename test/function/{ => samples}/configure-external-module-b/main.js (100%) rename test/function/{ => samples}/configure-external-module/_config.js (100%) rename test/function/{ => samples}/configure-external-module/main.js (100%) rename test/function/{ => samples}/configure-relative-external-module/_config.js (100%) rename test/function/{ => samples}/configure-relative-external-module/main.js (100%) rename test/function/{ => samples}/confused-default-identifier/_config.js (100%) rename test/function/{ => samples}/confused-default-identifier/foo.js (100%) rename test/function/{ => samples}/confused-default-identifier/main.js (100%) rename test/function/{ => samples}/consistent-renaming-b/_config.js (100%) rename test/function/{ => samples}/consistent-renaming-b/altdir/two.js (100%) rename test/function/{ => samples}/consistent-renaming-b/main.js (100%) rename test/function/{ => samples}/consistent-renaming-b/subdir/one.js (100%) rename test/function/{ => samples}/consistent-renaming-b/subdir/two.js (100%) rename test/function/{ => samples}/consistent-renaming-c/-internal.js (100%) rename test/function/{ => samples}/consistent-renaming-c/_config.js (100%) rename test/function/{ => samples}/consistent-renaming-c/main.js (100%) rename test/function/{ => samples}/consistent-renaming-c/one.js (100%) rename test/function/{ => samples}/consistent-renaming-c/one/three.js (100%) rename test/function/{ => samples}/consistent-renaming-c/one/two.js (100%) rename test/function/{ => samples}/consistent-renaming-c/two.js (100%) rename test/function/{ => samples}/consistent-renaming-d/Baz.js (100%) rename test/function/{ => samples}/consistent-renaming-d/_config.js (100%) rename test/function/{ => samples}/consistent-renaming-d/bar.js (100%) rename test/function/{ => samples}/consistent-renaming-d/foo.js (100%) rename test/function/{ => samples}/consistent-renaming-d/foo/baz.js (100%) rename test/function/{ => samples}/consistent-renaming-d/main.js (100%) rename test/function/{ => samples}/consistent-renaming-e/_config.js (100%) rename test/function/{ => samples}/consistent-renaming-e/a.js (100%) rename test/function/{ => samples}/consistent-renaming-e/b.js (100%) rename test/function/{ => samples}/consistent-renaming-e/main.js (100%) rename test/function/{ => samples}/consistent-renaming-e/utils.js (100%) rename test/function/{ => samples}/consistent-renaming-f/_config.js (100%) rename test/function/{ => samples}/consistent-renaming-f/bar.js (100%) rename test/function/{ => samples}/consistent-renaming-f/main.js (100%) rename test/function/{ => samples}/consistent-renaming/_config.js (100%) rename test/function/{ => samples}/consistent-renaming/main.js (100%) rename test/function/{ => samples}/consistent-renaming/one.js (100%) rename test/function/{ => samples}/consistent-renaming/three.js (100%) rename test/function/{ => samples}/consistent-renaming/two.js (100%) rename test/function/{ => samples}/custom-external-resolver-async/_config.js (100%) rename test/function/{ => samples}/custom-external-resolver-async/js_modules/external.js (100%) rename test/function/{ => samples}/custom-external-resolver-async/main.js (100%) rename test/function/{ => samples}/custom-external-resolver-sync/_config.js (100%) rename test/function/{ => samples}/custom-external-resolver-sync/js_modules/external.js (100%) rename test/function/{ => samples}/custom-external-resolver-sync/main.js (100%) rename test/function/{ => samples}/custom-loaders/_config.js (100%) rename test/function/{ => samples}/custom-loaders/bar.js (100%) rename test/function/{ => samples}/custom-loaders/baz.js (100%) rename test/function/{ => samples}/custom-loaders/foo.js (100%) rename test/function/{ => samples}/custom-loaders/main.js (100%) rename test/function/{ => samples}/custom-path-resolver-async/_config.js (100%) rename test/function/{ => samples}/custom-path-resolver-async/bar.js (100%) rename test/function/{ => samples}/custom-path-resolver-async/main.js (100%) rename test/function/{ => samples}/custom-path-resolver-on-entry/_config.js (100%) rename test/function/{ => samples}/custom-path-resolver-on-entry/bar.js (100%) rename test/function/{ => samples}/custom-path-resolver-on-entry/foo.js (100%) rename test/function/{ => samples}/custom-path-resolver-plural-b/_config.js (100%) rename test/function/{ => samples}/custom-path-resolver-plural/_config.js (100%) rename test/function/{ => samples}/custom-path-resolver-plural/globals-math.js (100%) rename test/function/{ => samples}/custom-path-resolver-plural/main.js (100%) rename test/function/{ => samples}/custom-path-resolver-sync/_config.js (100%) rename test/function/{ => samples}/custom-path-resolver-sync/bar.js (100%) rename test/function/{ => samples}/custom-path-resolver-sync/main.js (100%) rename test/function/{ => samples}/cycles-defaults/_config.js (100%) rename test/function/{ => samples}/cycles-defaults/a.js (100%) rename test/function/{ => samples}/cycles-defaults/b.js (100%) rename test/function/{ => samples}/cycles-defaults/main.js (100%) rename test/function/{ => samples}/cycles-immediate/_config.js (100%) rename test/function/{ => samples}/cycles-immediate/evens.js (100%) rename test/function/{ => samples}/cycles-immediate/main.js (100%) rename test/function/{ => samples}/cycles-immediate/odds.js (100%) rename test/function/{ => samples}/cycles-pathological-2/_config.js (100%) rename test/function/{ => samples}/cycles-pathological-2/b.js (100%) rename test/function/{ => samples}/cycles-pathological-2/c.js (100%) rename test/function/{ => samples}/cycles-pathological-2/d.js (100%) rename test/function/{ => samples}/cycles-pathological-2/main.js (100%) rename test/function/{ => samples}/cycles-pathological/A.js (100%) rename test/function/{ => samples}/cycles-pathological/B.js (100%) rename test/function/{ => samples}/cycles-pathological/C.js (100%) rename test/function/{ => samples}/cycles-pathological/D.js (100%) rename test/function/{ => samples}/cycles-pathological/_config.js (100%) rename test/function/{ => samples}/cycles-pathological/main.js (100%) rename test/function/{ => samples}/cycles-stack-overflow/_config.js (100%) rename test/function/{ => samples}/cycles-stack-overflow/b.js (100%) rename test/function/{ => samples}/cycles-stack-overflow/c.js (100%) rename test/function/{ => samples}/cycles-stack-overflow/d.js (100%) rename test/function/{ => samples}/cycles-stack-overflow/main.js (100%) rename test/function/{ => samples}/deconflicts-classes/_config.js (100%) rename test/function/{ => samples}/deconflicts-classes/a.js (100%) rename test/function/{ => samples}/deconflicts-classes/b.js (100%) rename test/function/{ => samples}/deconflicts-classes/main.js (100%) rename test/function/{ => samples}/deconflicts-exports/_config.js (100%) rename test/function/{ => samples}/deconflicts-exports/main.js (100%) rename test/function/{ => samples}/deconflicts-external-imports/_config.js (100%) rename test/function/{ => samples}/deconflicts-external-imports/a.js (100%) rename test/function/{ => samples}/deconflicts-external-imports/b.js (100%) rename test/function/{ => samples}/deconflicts-external-imports/main.js (100%) rename test/function/{ => samples}/deconflicts-generated-default-names/_config.js (100%) rename test/function/{ => samples}/deconflicts-generated-default-names/foo.js (100%) rename test/function/{ => samples}/deconflicts-generated-default-names/main.js (100%) rename test/function/{ => samples}/deconflicts-globals/_config.js (100%) rename test/function/{ => samples}/deconflicts-globals/bar.js (100%) rename test/function/{ => samples}/deconflicts-globals/foo.js (100%) rename test/function/{ => samples}/deconflicts-globals/main.js (100%) rename test/function/{ => samples}/deconstructed-exported-vars/_config.js (100%) rename test/function/{ => samples}/deconstructed-exported-vars/main.js (100%) rename test/function/{ => samples}/default-export-as-is-bound/_config.js (100%) rename test/function/{ => samples}/default-export-as-is-bound/foo.js (100%) rename test/function/{ => samples}/default-export-as-is-bound/main.js (100%) rename test/function/{ => samples}/default-export-is-not-bound-b/_config.js (100%) rename test/function/{ => samples}/default-export-is-not-bound-b/foo.js (100%) rename test/function/{ => samples}/default-export-is-not-bound-b/main.js (100%) rename test/function/{ => samples}/default-export-is-not-bound/_config.js (100%) rename test/function/{ => samples}/default-export-is-not-bound/foo.js (100%) rename test/function/{ => samples}/default-export-is-not-bound/main.js (100%) rename test/function/{ => samples}/default-exports-in-parens/_config.js (100%) rename test/function/{ => samples}/default-exports-in-parens/foo.js (100%) rename test/function/{ => samples}/default-exports-in-parens/main.js (100%) rename test/function/{ => samples}/default-function-export-conflict/_config.js (100%) rename test/function/{ => samples}/default-function-export-conflict/foo.js (100%) rename test/function/{ => samples}/default-function-export-conflict/main.js (100%) rename test/function/{ => samples}/default-not-reexported/_config.js (100%) rename test/function/{ => samples}/default-not-reexported/bar.js (100%) rename test/function/{ => samples}/default-not-reexported/foo.js (100%) rename test/function/{ => samples}/default-not-reexported/main.js (100%) rename test/function/{ => samples}/delete/_config.js (100%) rename test/function/{ => samples}/delete/main.js (100%) rename test/function/{ => samples}/deshadow-top-level-declaration/_config.js (100%) rename test/function/{ => samples}/deshadow-top-level-declaration/a.js (100%) rename test/function/{ => samples}/deshadow-top-level-declaration/b.js (100%) rename test/function/{ => samples}/deshadow-top-level-declaration/foo.js (100%) rename test/function/{ => samples}/deshadow-top-level-declaration/main.js (100%) rename test/function/{ => samples}/deshadow-top-level-declaration/x.js (100%) rename test/function/{ => samples}/deshadowed-destructured-parameter/_config.js (100%) rename test/function/{ => samples}/deshadowed-destructured-parameter/main.js (100%) rename test/function/{ => samples}/deshadowed-destructured-parameter/x.js (100%) rename test/function/{ => samples}/deshadowed-shorthand-property/_config.js (100%) rename test/function/{ => samples}/deshadowed-shorthand-property/foo.js (100%) rename test/function/{ => samples}/deshadowed-shorthand-property/main.js (100%) rename test/function/{ => samples}/deshadows-function-expression-id/_config.js (100%) rename test/function/{ => samples}/deshadows-function-expression-id/foo.js (100%) rename test/function/{ => samples}/deshadows-function-expression-id/main.js (100%) rename test/function/{ => samples}/disappearing-exported-value/_config.js (100%) rename test/function/{ => samples}/disappearing-exported-value/answer.js (100%) rename test/function/{ => samples}/disappearing-exported-value/main.js (100%) rename test/function/{ => samples}/does-not-hang-on-missing-module/_config.js (100%) rename test/function/{ => samples}/does-not-hang-on-missing-module/main.js (100%) rename test/function/{ => samples}/does-not-mangle-entry-point/_config.js (100%) rename test/function/{ => samples}/double-default-export/_config.js (100%) rename test/function/{ => samples}/double-default-export/foo.js (100%) rename test/function/{ => samples}/double-default-export/main.js (100%) rename test/function/{ => samples}/double-named-export/_config.js (100%) rename test/function/{ => samples}/double-named-export/foo.js (100%) rename test/function/{ => samples}/double-named-export/main.js (100%) rename test/function/{ => samples}/double-named-reexport/_config.js (100%) rename test/function/{ => samples}/double-named-reexport/bar.js (100%) rename test/function/{ => samples}/double-named-reexport/foo.js (100%) rename test/function/{ => samples}/double-named-reexport/main.js (100%) rename test/function/{ => samples}/duplicate-import-fails/_config.js (100%) rename test/function/{ => samples}/duplicate-import-fails/foo.js (100%) rename test/function/{ => samples}/duplicate-import-fails/main.js (100%) rename test/function/{ => samples}/duplicate-import-specifier-fails/_config.js (100%) rename test/function/{ => samples}/duplicate-import-specifier-fails/foo.js (100%) rename test/function/{ => samples}/duplicate-import-specifier-fails/main.js (100%) rename test/function/{ => samples}/dynamic-namespace-lookup/_config.js (100%) rename test/function/{ => samples}/dynamic-namespace-lookup/foo.js (100%) rename test/function/{ => samples}/dynamic-namespace-lookup/main.js (100%) rename test/function/{ => samples}/empty-imports-have-side-effects/_config.js (100%) rename test/function/{ => samples}/empty-imports-have-side-effects/foo.js (100%) rename test/function/{ => samples}/empty-imports-have-side-effects/main.js (100%) rename test/function/{ => samples}/es5-class-called-without-new/_config.js (100%) rename test/function/{ => samples}/es5-class-called-without-new/foo.js (100%) rename test/function/{ => samples}/es5-class-called-without-new/main.js (100%) rename test/function/{ => samples}/export-all-from-external/_config.js (100%) rename test/function/{ => samples}/export-all-from-external/main.js (100%) rename test/function/{ => samples}/export-all-from-external/path-plus.js (100%) rename test/function/{ => samples}/export-all-multiple/_config.js (100%) rename test/function/{ => samples}/export-all-multiple/bar.js (100%) rename test/function/{ => samples}/export-all-multiple/foo.js (100%) rename test/function/{ => samples}/export-all-multiple/main.js (100%) rename test/function/{ => samples}/export-all/_config.js (100%) rename test/function/{ => samples}/export-all/main.js (100%) rename test/function/{ => samples}/export-all/wat-impl.js (100%) rename test/function/{ => samples}/export-all/wat.js (100%) rename test/function/{ => samples}/export-and-import-reference-share-var/_config.js (100%) rename test/function/{ => samples}/export-and-import-reference-share-var/foo.js (100%) rename test/function/{ => samples}/export-and-import-reference-share-var/main.js (100%) rename test/function/{ => samples}/export-as/_config.js (100%) rename test/function/{ => samples}/export-as/foo.js (100%) rename test/function/{ => samples}/export-as/main.js (100%) rename test/function/{ => samples}/export-deconflicted-names/_config.js (100%) rename test/function/{ => samples}/export-deconflicted-names/bar.js (100%) rename test/function/{ => samples}/export-deconflicted-names/baz.js (100%) rename test/function/{ => samples}/export-deconflicted-names/foo.js (100%) rename test/function/{ => samples}/export-deconflicted-names/main.js (100%) rename test/function/{ => samples}/export-default-anonymous-function/_config.js (100%) rename test/function/{ => samples}/export-default-anonymous-function/answer.js (100%) rename test/function/{ => samples}/export-default-anonymous-function/main.js (100%) rename test/function/{ => samples}/export-default-as-b/_config.js (100%) rename test/function/{ => samples}/export-default-as-b/bar.js (100%) rename test/function/{ => samples}/export-default-as-b/baz.js (100%) rename test/function/{ => samples}/export-default-as-b/main.js (100%) rename test/function/{ => samples}/export-default-as-c/_config.js (100%) rename test/function/{ => samples}/export-default-as-c/baz.js (100%) rename test/function/{ => samples}/export-default-as-c/main.js (100%) rename test/function/{ => samples}/export-default-as-c/namespace.js (100%) rename test/function/{ => samples}/export-default-as/_config.js (100%) rename test/function/{ => samples}/export-default-as/foo.js (100%) rename test/function/{ => samples}/export-default-as/main.js (100%) rename test/function/{ => samples}/export-default-expression/_config.js (100%) rename test/function/{ => samples}/export-default-expression/main.js (100%) rename test/function/{ => samples}/export-default-from-external/_config.js (100%) rename test/function/{ => samples}/export-default-from-external/main.js (100%) rename test/function/{ => samples}/export-default-named-function/_config.js (100%) rename test/function/{ => samples}/export-default-named-function/main.js (100%) rename test/function/{ => samples}/export-default-no-space/_config.js (100%) rename test/function/{ => samples}/export-default-no-space/main.js (100%) rename test/function/{ => samples}/export-destruction/_config.js (100%) rename test/function/{ => samples}/export-destruction/main.js (100%) rename test/function/{ => samples}/export-from-default-renamed/_config.js (100%) rename test/function/{ => samples}/export-from-default-renamed/a.js (100%) rename test/function/{ => samples}/export-from-default-renamed/b.js (100%) rename test/function/{ => samples}/export-from-default-renamed/foo.js (100%) rename test/function/{ => samples}/export-from-default-renamed/main.js (100%) rename test/function/{ => samples}/export-from-default/_config.js (100%) rename test/function/{ => samples}/export-from-default/first.js (100%) rename test/function/{ => samples}/export-from-default/main.js (100%) rename test/function/{ => samples}/export-from-default/second.js (100%) rename test/function/{ => samples}/export-from-external/_config.js (100%) rename test/function/{ => samples}/export-from-external/main.js (100%) rename test/function/{ => samples}/export-from-internal-module/_config.js (100%) rename test/function/{ => samples}/export-from-internal-module/foo.js (100%) rename test/function/{ => samples}/export-from-internal-module/main.js (100%) rename test/function/{ => samples}/export-from-multiple-no-default-conflict/_config.js (100%) rename test/function/{ => samples}/export-from-multiple-no-default-conflict/a.js (100%) rename test/function/{ => samples}/export-from-multiple-no-default-conflict/b.js (100%) rename test/function/{ => samples}/export-from-multiple-no-default-conflict/main.js (100%) rename test/function/{ => samples}/export-from-no-local-binding-var/_config.js (100%) rename test/function/{ => samples}/export-from-no-local-binding-var/foo.js (100%) rename test/function/{ => samples}/export-from-no-local-binding-var/main.js (100%) rename test/function/{ => samples}/export-from-no-local-binding/_config.js (100%) rename test/function/{ => samples}/export-from-no-local-binding/first.js (100%) rename test/function/{ => samples}/export-from-no-local-binding/main.js (100%) rename test/function/{ => samples}/export-from-no-local-binding/second.js (100%) rename test/function/{ => samples}/export-from-renamed/_config.js (100%) rename test/function/{ => samples}/export-from-renamed/foo.js (100%) rename test/function/{ => samples}/export-from-renamed/main.js (100%) rename test/function/{ => samples}/export-from-with-definition-conflict/_config.js (100%) rename test/function/{ => samples}/export-from-with-definition-conflict/a.js (100%) rename test/function/{ => samples}/export-from-with-definition-conflict/main.js (100%) rename test/function/{ => samples}/export-from-with-import-conflict/_config.js (100%) rename test/function/{ => samples}/export-from-with-import-conflict/a.js (100%) rename test/function/{ => samples}/export-from-with-import-conflict/b.js (100%) rename test/function/{ => samples}/export-from-with-import-conflict/main.js (100%) rename test/function/{ => samples}/export-global/_config.js (100%) rename test/function/{ => samples}/export-global/main.js (100%) rename test/function/{ => samples}/export-not-at-top-level-fails/_config.js (100%) rename test/function/{ => samples}/export-not-at-top-level-fails/main.js (100%) rename test/function/{ => samples}/export-two-ways-default-b/_config.js (100%) rename test/function/{ => samples}/export-two-ways-default-b/bar.js (100%) rename test/function/{ => samples}/export-two-ways-default-b/foo.js (100%) rename test/function/{ => samples}/export-two-ways-default-b/main.js (100%) rename test/function/{ => samples}/export-two-ways-default-b/x.js (100%) rename test/function/{ => samples}/export-two-ways-default/_config.js (100%) rename test/function/{ => samples}/export-two-ways-default/bar.js (100%) rename test/function/{ => samples}/export-two-ways-default/foo.js (100%) rename test/function/{ => samples}/export-two-ways-default/main.js (100%) rename test/function/{ => samples}/export-two-ways-default/x.js (100%) rename test/function/{ => samples}/export-two-ways-function/_config.js (100%) rename test/function/{ => samples}/export-two-ways-function/main.js (100%) rename test/function/{ => samples}/export-two-ways/_config.js (100%) rename test/function/{ => samples}/export-two-ways/foo.js (100%) rename test/function/{ => samples}/export-two-ways/main.js (100%) rename test/function/{ => samples}/export-type-mismatch-b/_config.js (100%) rename test/function/{ => samples}/export-type-mismatch-b/main.js (100%) rename test/function/{ => samples}/export-type-mismatch-c/_config.js (100%) rename test/function/{ => samples}/export-type-mismatch-c/main.js (100%) rename test/function/{ => samples}/export-type-mismatch/_config.js (100%) rename test/function/{ => samples}/export-type-mismatch/main.js (100%) rename test/function/{ => samples}/exports-flag-allowed-in-options/_config.js (100%) rename test/function/{ => samples}/exports-flag-allowed-in-options/foo.js (100%) rename test/function/{ => samples}/exports-flag-allowed-in-options/main.js (100%) rename test/function/{ => samples}/exports-named-values/_config.js (100%) rename test/function/{ => samples}/exports-named-values/main.js (100%) rename test/function/{ => samples}/external-alias/_config.js (100%) rename test/function/{ => samples}/external-alias/first/main.js (100%) rename test/function/{ => samples}/external-alias/first/module.js (100%) rename test/function/{ => samples}/external-function-always-true/_config.js (100%) rename test/function/{ => samples}/external-function-always-true/main.js (100%) rename test/function/{ => samples}/external-function/_config.js (100%) rename test/function/{ => samples}/external-function/main.js (100%) rename test/function/{ => samples}/external-ids-not-resolved/_config.js (100%) rename test/function/{ => samples}/external-ids-not-resolved/main.js (100%) rename test/function/{ => samples}/external-normalization/_config.js (100%) rename test/function/{ => samples}/external-normalization/main.js (100%) rename test/function/{ => samples}/function-side-effects/_config.js (100%) rename test/function/{ => samples}/function-side-effects/main.js (100%) rename test/function/{ => samples}/function-side-effects/mutate.js (100%) rename test/function/{ => samples}/function-side-effects/object.js (100%) rename test/function/{ => samples}/functions-renamed-correctly/_config.js (100%) rename test/function/{ => samples}/functions-renamed-correctly/after.js (100%) rename test/function/{ => samples}/functions-renamed-correctly/before.js (100%) rename test/function/{ => samples}/functions-renamed-correctly/factorial.js (100%) rename test/function/{ => samples}/functions-renamed-correctly/main.js (100%) rename test/function/{ => samples}/globally-called-modifying-function/_config.js (100%) rename test/function/{ => samples}/globally-called-modifying-function/main.js (100%) rename test/function/{ => samples}/globally-called-modifying-function/module.js (100%) rename test/function/{ => samples}/handle-calling-uncallable/_config.js (100%) rename test/function/{ => samples}/handle-calling-uncallable/foo.js (100%) rename test/function/{ => samples}/handle-calling-uncallable/main.js (100%) rename test/function/{ => samples}/handles-stringified-sourcemaps/_config.js (100%) rename test/function/{ => samples}/handles-stringified-sourcemaps/main.js (100%) rename test/function/{ => samples}/has-modules-array/_config.js (100%) rename test/function/{ => samples}/has-modules-array/foo.js (100%) rename test/function/{ => samples}/has-modules-array/main.js (100%) rename test/function/{ => samples}/has-resolved-ids/_config.js (100%) rename test/function/{ => samples}/has-resolved-ids/foo.js (100%) rename test/function/{ => samples}/has-resolved-ids/main.js (100%) rename test/function/{ => samples}/hidden-directories/.foo/bar.js (100%) rename test/function/{ => samples}/hidden-directories/_config.js (100%) rename test/function/{ => samples}/hidden-directories/main.js (100%) rename test/function/{ => samples}/identifiers-in-template-literals/_config.js (100%) rename test/function/{ => samples}/identifiers-in-template-literals/a.js (100%) rename test/function/{ => samples}/identifiers-in-template-literals/b.js (100%) rename test/function/{ => samples}/identifiers-in-template-literals/main.js (100%) rename test/function/{ => samples}/if-statement-with-assignment/_config.js (100%) rename test/function/{ => samples}/if-statement-with-assignment/main.js (100%) rename test/function/{ => samples}/if-statement-with-false-condition/_config.js (100%) rename test/function/{ => samples}/if-statement-with-false-condition/main.js (100%) rename test/function/{ => samples}/if-statement-with-update/_config.js (100%) rename test/function/{ => samples}/if-statement-with-update/main.js (100%) rename test/function/{ => samples}/iife-comments/_config.js (100%) rename test/function/{ => samples}/iife-comments/main.js (100%) rename test/function/{ => samples}/iife-strong-dependencies/A.js (100%) rename test/function/{ => samples}/iife-strong-dependencies/B.js (100%) rename test/function/{ => samples}/iife-strong-dependencies/C.js (100%) rename test/function/{ => samples}/iife-strong-dependencies/D.js (100%) rename test/function/{ => samples}/iife-strong-dependencies/_config.js (100%) rename test/function/{ => samples}/iife-strong-dependencies/main.js (100%) rename test/function/{ => samples}/import-as/_config.js (100%) rename test/function/{ => samples}/import-as/foo.js (100%) rename test/function/{ => samples}/import-as/main.js (100%) rename test/function/{ => samples}/import-binding/_config.js (100%) rename test/function/{ => samples}/import-binding/foo.js (100%) rename test/function/{ => samples}/import-binding/main.js (100%) rename test/function/{ => samples}/import-chain-as/_config.js (100%) rename test/function/{ => samples}/import-chain-as/first.js (100%) rename test/function/{ => samples}/import-chain-as/main.js (100%) rename test/function/{ => samples}/import-chain-as/second.js (100%) rename test/function/{ => samples}/import-chain/_config.js (100%) rename test/function/{ => samples}/import-chain/first.js (100%) rename test/function/{ => samples}/import-chain/main.js (100%) rename test/function/{ => samples}/import-chain/second.js (100%) rename test/function/{ => samples}/import-default-and-named-function/_config.js (100%) rename test/function/{ => samples}/import-default-and-named-function/foo.js (100%) rename test/function/{ => samples}/import-default-and-named-function/main.js (100%) rename test/function/{ => samples}/import-default-as-named/_config.js (100%) rename test/function/{ => samples}/import-default-as-named/foo.js (100%) rename test/function/{ => samples}/import-default-as-named/main.js (100%) rename test/function/{ => samples}/import-default-as-other/_config.js (100%) rename test/function/{ => samples}/import-default-as-other/foo.js (100%) rename test/function/{ => samples}/import-default-as-other/main.js (100%) rename test/function/{ => samples}/import-default-class/_config.js (100%) rename test/function/{ => samples}/import-default-class/main.js (100%) rename test/function/{ => samples}/import-default-class/point.js (100%) rename test/function/{ => samples}/import-default-expression/_config.js (100%) rename test/function/{ => samples}/import-default-expression/foo.js (100%) rename test/function/{ => samples}/import-default-expression/main.js (100%) rename test/function/{ => samples}/import-default-from-external/_config.js (100%) rename test/function/{ => samples}/import-default-from-external/main.js (100%) rename test/function/{ => samples}/import-default-function/_config.js (100%) rename test/function/{ => samples}/import-default-function/foo.js (100%) rename test/function/{ => samples}/import-default-function/main.js (100%) rename test/function/{ => samples}/import-dependency-in-other-module/_config.js (100%) rename test/function/{ => samples}/import-dependency-in-other-module/bar.js (100%) rename test/function/{ => samples}/import-dependency-in-other-module/foo.js (100%) rename test/function/{ => samples}/import-dependency-in-other-module/main.js (100%) rename test/function/{ => samples}/import-dependency-in-same-module/_config.js (100%) rename test/function/{ => samples}/import-dependency-in-same-module/foo.js (100%) rename test/function/{ => samples}/import-dependency-in-same-module/main.js (100%) rename test/function/{ => samples}/import-empty-from-external/_config.js (100%) rename test/function/{ => samples}/import-empty-from-external/foo.js (100%) rename test/function/{ => samples}/import-empty-from-external/main.js (100%) rename test/function/{ => samples}/import-named-class/_config.js (100%) rename test/function/{ => samples}/import-named-class/foo.js (100%) rename test/function/{ => samples}/import-named-class/main.js (100%) rename test/function/{ => samples}/import-named-from-external/_config.js (100%) rename test/function/{ => samples}/import-named-from-external/main.js (100%) rename test/function/{ => samples}/import-named-function-as-other/_config.js (100%) rename test/function/{ => samples}/import-named-function-as-other/foo.js (100%) rename test/function/{ => samples}/import-named-function-as-other/main.js (100%) rename test/function/{ => samples}/import-named-function/_config.js (100%) rename test/function/{ => samples}/import-named-function/foo.js (100%) rename test/function/{ => samples}/import-named-function/main.js (100%) rename test/function/{ => samples}/import-nameless-class-expression/_config.js (100%) rename test/function/{ => samples}/import-nameless-class-expression/foo.js (100%) rename test/function/{ => samples}/import-nameless-class-expression/main.js (100%) rename test/function/{ => samples}/import-namespace-from-external-module-renamed/_config.js (100%) rename test/function/{ => samples}/import-namespace-from-external-module-renamed/main.js (100%) rename test/function/{ => samples}/import-namespace-from-external-module/_config.js (100%) rename test/function/{ => samples}/import-namespace-from-external-module/main.js (100%) rename test/function/{ => samples}/import-namespace-from-internal-module-renamed/_config.js (100%) rename test/function/{ => samples}/import-namespace-from-internal-module-renamed/foo.js (100%) rename test/function/{ => samples}/import-namespace-from-internal-module-renamed/main.js (100%) rename test/function/{ => samples}/import-namespace-from-internal-module/_config.js (100%) rename test/function/{ => samples}/import-namespace-from-internal-module/foo.js (100%) rename test/function/{ => samples}/import-namespace-from-internal-module/main.js (100%) rename test/function/{ => samples}/import-not-at-top-level-fails/_config.js (100%) rename test/function/{ => samples}/import-not-at-top-level-fails/main.js (100%) rename test/function/{ => samples}/import-of-unexported-fails/_config.js (100%) rename test/function/{ => samples}/import-of-unexported-fails/empty.js (100%) rename test/function/{ => samples}/import-of-unexported-fails/main.js (100%) rename test/function/{ => samples}/import-var-declaration/_config.js (100%) rename test/function/{ => samples}/import-var-declaration/foo.js (100%) rename test/function/{ => samples}/import-var-declaration/main.js (100%) rename test/function/{ => samples}/imports-are-deconflicted-b/_config.js (100%) rename test/function/{ => samples}/imports-are-deconflicted-b/bar.js (100%) rename test/function/{ => samples}/imports-are-deconflicted-b/foo.js (100%) rename test/function/{ => samples}/imports-are-deconflicted-b/main.js (100%) rename test/function/{ => samples}/imports-are-deconflicted-c/_config.js (100%) rename test/function/{ => samples}/imports-are-deconflicted-c/bar.js (100%) rename test/function/{ => samples}/imports-are-deconflicted-c/foo.js (100%) rename test/function/{ => samples}/imports-are-deconflicted-c/main.js (100%) rename test/function/{ => samples}/imports-are-deconflicted/_config.js (100%) rename test/function/{ => samples}/imports-are-deconflicted/bar.js (100%) rename test/function/{ => samples}/imports-are-deconflicted/foo.js (100%) rename test/function/{ => samples}/imports-are-deconflicted/main.js (100%) rename test/function/{ => samples}/includes-internally-used-default-export/_config.js (100%) rename test/function/{ => samples}/includes-internally-used-default-export/main.js (100%) rename test/function/{ => samples}/includes-internally-used-default-export/module.js (100%) rename test/function/{ => samples}/includes-reassignments/_config.js (100%) rename test/function/{ => samples}/includes-reassignments/foo.js (100%) rename test/function/{ => samples}/includes-reassignments/main.js (100%) rename test/function/{ => samples}/includes-superclass/_config.js (100%) rename test/function/{ => samples}/includes-superclass/base.js (100%) rename test/function/{ => samples}/includes-superclass/main.js (100%) rename test/function/{ => samples}/includes-superclass/thing.js (100%) rename test/function/{ => samples}/legal-import-modification/_config.js (100%) rename test/function/{ => samples}/legal-import-modification/foo.js (100%) rename test/function/{ => samples}/legal-import-modification/main.js (100%) rename test/function/{ => samples}/legal-suggested-names/_config.js (100%) rename test/function/{ => samples}/legal-suggested-names/bar.js (100%) rename test/function/{ => samples}/legal-suggested-names/foo.js (100%) rename test/function/{ => samples}/legal-suggested-names/helpers.js (100%) rename test/function/{ => samples}/legal-suggested-names/main.js (100%) rename test/function/{ => samples}/load-returns-string-or-null/_config.js (100%) rename test/function/{ => samples}/load-returns-string-or-null/main.js (100%) rename test/function/{ => samples}/mark-namespace-members/_config.js (100%) rename test/function/{ => samples}/mark-namespace-members/bar.js (100%) rename test/function/{ => samples}/mark-namespace-members/foo.js (100%) rename test/function/{ => samples}/mark-namespace-members/main.js (100%) rename test/function/{ => samples}/member-expression-assignment-in-function/_config.js (100%) rename test/function/{ => samples}/member-expression-assignment-in-function/main.js (100%) rename test/function/{ => samples}/method-call-mutates-this/_config.js (100%) rename test/function/{ => samples}/method-call-mutates-this/foo.js (100%) rename test/function/{ => samples}/method-call-mutates-this/main.js (100%) rename test/function/{ => samples}/method-call-side-effects/_config.js (100%) rename test/function/{ => samples}/method-call-side-effects/main.js (100%) rename test/function/{ => samples}/method-call-side-effects/object.js (100%) rename test/function/{ => samples}/method-call-side-effects/thing.js (100%) rename test/function/{ => samples}/modify-assumed-global/_config.js (100%) rename test/function/{ => samples}/modify-assumed-global/main.js (100%) rename test/function/{ => samples}/modify-assumed-global/math.js (100%) rename test/function/{ => samples}/module-sort-order/_config.js (100%) rename test/function/{ => samples}/module-sort-order/a.js (100%) rename test/function/{ => samples}/module-sort-order/b.js (100%) rename test/function/{ => samples}/module-sort-order/c.js (100%) rename test/function/{ => samples}/module-sort-order/main.js (100%) rename test/function/{ => samples}/module-sort-order/z.js (100%) rename test/function/{ => samples}/module-tree/_config.js (100%) rename test/function/{ => samples}/module-tree/bar.js (100%) rename test/function/{ => samples}/module-tree/foo.js (100%) rename test/function/{ => samples}/module-tree/main.js (100%) rename test/function/{ => samples}/module-tree/nested/baz.js (100%) rename test/function/{ => samples}/module-tree/nested/qux.js (100%) rename test/function/{ => samples}/named-external-method-in-prototype/_config.js (100%) rename test/function/{ => samples}/named-external-method-in-prototype/bar.js (100%) rename test/function/{ => samples}/named-external-method-in-prototype/foo.js (100%) rename test/function/{ => samples}/named-external-method-in-prototype/main.js (100%) rename test/function/{ => samples}/namespace-missing-export/_config.js (100%) rename test/function/{ => samples}/namespace-missing-export/empty.js (100%) rename test/function/{ => samples}/namespace-missing-export/main.js (100%) rename test/function/{ => samples}/namespace-reassign-import-fails/_config.js (100%) rename test/function/{ => samples}/namespace-reassign-import-fails/foo.js (100%) rename test/function/{ => samples}/namespace-reassign-import-fails/main.js (100%) rename test/function/{ => samples}/namespace-update-import-fails/_config.js (100%) rename test/function/{ => samples}/namespace-update-import-fails/foo.js (100%) rename test/function/{ => samples}/namespace-update-import-fails/main.js (100%) rename test/function/{ => samples}/namespaces-are-frozen/_config.js (100%) rename test/function/{ => samples}/namespaces-are-frozen/main.js (100%) rename test/function/{ => samples}/namespaces-are-frozen/mod.js (100%) rename test/function/{ => samples}/namespacing-collisions-2/Material.js (100%) rename test/function/{ => samples}/namespacing-collisions-2/MaterialAgain.js (100%) rename test/function/{ => samples}/namespacing-collisions-2/Something.js (100%) rename test/function/{ => samples}/namespacing-collisions-2/SomethingAgain.js (100%) rename test/function/{ => samples}/namespacing-collisions-2/_config.js (100%) rename test/function/{ => samples}/namespacing-collisions-2/main.js (100%) rename test/function/{ => samples}/namespacing-collisions/Material.js (100%) rename test/function/{ => samples}/namespacing-collisions/Something.js (100%) rename test/function/{ => samples}/namespacing-collisions/_config.js (100%) rename test/function/{ => samples}/namespacing-collisions/main.js (100%) rename test/function/{ => samples}/namespacing-in-sub-functions/_config.js (100%) rename test/function/{ => samples}/namespacing-in-sub-functions/main.js (100%) rename test/function/{ => samples}/namespacing-in-sub-functions/problematicFunc.js (100%) rename test/function/{ => samples}/newline-after-comment/_config.js (100%) rename test/function/{ => samples}/newline-after-comment/main.js (100%) rename test/function/{ => samples}/no-imports/_config.js (100%) rename test/function/{ => samples}/no-imports/main.js (100%) rename test/function/{ => samples}/no-relative-external/_config.js (100%) rename test/function/{ => samples}/no-relative-external/main.js (100%) rename test/function/{ => samples}/non-extension-dot/_config.js (100%) rename test/function/{ => samples}/non-extension-dot/foo.bar.js (100%) rename test/function/{ => samples}/non-extension-dot/main.js (100%) rename test/function/{ => samples}/non-js-extensions/_config.js (100%) rename test/function/{ => samples}/non-js-extensions/info.json (100%) rename test/function/{ => samples}/non-js-extensions/main.js (100%) rename test/function/{ => samples}/object-destructuring-renaming/_config.js (100%) rename test/function/{ => samples}/object-destructuring-renaming/main.js (100%) rename test/function/{ => samples}/object-destructuring-renaming/module.js (100%) rename test/function/{ => samples}/object-dynamic-properties/_config.js (100%) rename test/function/{ => samples}/object-dynamic-properties/main.js (100%) rename test/function/{ => samples}/object-dynamic-properties/tags.js (100%) rename test/function/{ => samples}/object-properties/_config.js (100%) rename test/function/{ => samples}/object-properties/main.js (100%) rename test/function/{ => samples}/object-properties/object.js (100%) rename test/function/{ => samples}/object-prototype-properties/_config.js (100%) rename test/function/{ => samples}/object-prototype-properties/foo.js (100%) rename test/function/{ => samples}/object-prototype-properties/main.js (100%) rename test/function/{ => samples}/parenthesised-default-export/_config.js (100%) rename test/function/{ => samples}/parenthesised-default-export/main.js (100%) rename test/function/{ => samples}/pass-namespace-to-function/_config.js (100%) rename test/function/{ => samples}/pass-namespace-to-function/bar.js (100%) rename test/function/{ => samples}/pass-namespace-to-function/foo.js (100%) rename test/function/{ => samples}/pass-namespace-to-function/main.js (100%) rename test/function/{ => samples}/paths-are-case-sensitive/Foo.js (100%) rename test/function/{ => samples}/paths-are-case-sensitive/_config.js (100%) rename test/function/{ => samples}/paths-are-case-sensitive/main.js (100%) rename test/function/{ => samples}/plugin-error-loc-instead-pos/_config.js (100%) rename test/function/{ => samples}/plugin-error-loc-instead-pos/main.js (100%) rename test/function/{ => samples}/plugin-error-only-first-transform-bundle/_config.js (100%) rename test/function/{ => samples}/plugin-error-only-first-transform-bundle/main.js (100%) rename test/function/{ => samples}/plugin-error-only-first-transform/_config.js (100%) rename test/function/{ => samples}/plugin-error-only-first-transform/main.js (100%) rename test/function/{ => samples}/plugin-error/_config.js (100%) rename test/function/{ => samples}/plugin-error/main.js (100%) rename test/function/{ => samples}/plugin-warn-loc-instead-pos/_config.js (100%) rename test/function/{ => samples}/plugin-warn-loc-instead-pos/main.js (100%) rename test/function/{ => samples}/plugin-warn/_config.js (100%) rename test/function/{ => samples}/plugin-warn/main.js (100%) rename test/function/{ => samples}/plugins-can-manipulate-options/_config.js (100%) rename test/function/{ => samples}/plugins-can-manipulate-options/answer.js (100%) rename test/function/{ => samples}/preserves-catch-argument/_config.js (100%) rename test/function/{ => samples}/preserves-catch-argument/main.js (100%) rename test/function/{ => samples}/preserves-default-exports-used-locally/_config.js (100%) rename test/function/{ => samples}/preserves-default-exports-used-locally/foo.js (100%) rename test/function/{ => samples}/preserves-default-exports-used-locally/main.js (100%) rename test/function/{ => samples}/preserves-function-expression-names/_config.js (100%) rename test/function/{ => samples}/preserves-function-expression-names/main.js (100%) rename test/function/{ => samples}/preserves-var-declarations-in-dead-branches/_config.js (100%) rename test/function/{ => samples}/preserves-var-declarations-in-dead-branches/main.js (100%) rename test/function/{ => samples}/property-keys-not-renamed/_config.js (100%) rename test/function/{ => samples}/property-keys-not-renamed/main.js (100%) rename test/function/{ => samples}/property-keys-not-renamed/one.js (100%) rename test/function/{ => samples}/property-keys-not-renamed/three.js (100%) rename test/function/{ => samples}/property-keys-not-renamed/two.js (100%) rename test/function/{ => samples}/re-export-default-import/_config.js (100%) rename test/function/{ => samples}/re-export-default-import/first.js (100%) rename test/function/{ => samples}/re-export-default-import/main.js (100%) rename test/function/{ => samples}/re-export-default-import/second.js (100%) rename test/function/{ => samples}/re-export-namespace-import/_config.js (100%) rename test/function/{ => samples}/re-export-namespace-import/first.js (100%) rename test/function/{ => samples}/re-export-namespace-import/main.js (100%) rename test/function/{ => samples}/re-export-namespace-import/second.js (100%) rename test/function/{ => samples}/reassign-import-fails/_config.js (100%) rename test/function/{ => samples}/reassign-import-fails/foo.js (100%) rename test/function/{ => samples}/reassign-import-fails/main.js (100%) rename test/function/{ => samples}/reassign-import-not-at-top-level-fails/_config.js (100%) rename test/function/{ => samples}/reassign-import-not-at-top-level-fails/foo.js (100%) rename test/function/{ => samples}/reassign-import-not-at-top-level-fails/main.js (100%) rename test/function/{ => samples}/reassign-parameter/_config.js (100%) rename test/function/{ => samples}/reassign-parameter/main.js (100%) rename test/function/{ => samples}/reexport-missing-error/_config.js (100%) rename test/function/{ => samples}/reexport-missing-error/empty.js (100%) rename test/function/{ => samples}/reexport-missing-error/main.js (100%) rename test/function/{ => samples}/reexports-from-external/_config.js (100%) rename test/function/{ => samples}/reexports-from-external/main.js (100%) rename test/function/{ => samples}/relative-external-include-once-nested/_config.js (100%) rename test/function/{ => samples}/relative-external-include-once-nested/first/foo.js (100%) rename test/function/{ => samples}/relative-external-include-once-nested/first/module.js (100%) rename test/function/{ => samples}/relative-external-include-once-nested/first/second/module.js (100%) rename test/function/{ => samples}/relative-external-include-once-nested/main.js (100%) rename test/function/{ => samples}/relative-external-include-once-two-external/_config.js (100%) rename test/function/{ => samples}/relative-external-include-once-two-external/first/foo.js (100%) rename test/function/{ => samples}/relative-external-include-once-two-external/first/module.js (100%) rename test/function/{ => samples}/relative-external-include-once-two-external/foo.js (100%) rename test/function/{ => samples}/relative-external-include-once-two-external/main.js (100%) rename test/function/{ => samples}/relative-external-include-once-up/_config.js (100%) rename test/function/{ => samples}/relative-external-include-once-up/first/main.js (100%) rename test/function/{ => samples}/relative-external-include-once-up/first/module.js (100%) rename test/function/{ => samples}/relative-external-include-once-up/first/second/module.js (100%) rename test/function/{ => samples}/relative-external-include-once-up/foo.js (100%) rename test/function/{ => samples}/relative-external-include-once/_config.js (100%) rename test/function/{ => samples}/relative-external-include-once/first/module.js (100%) rename test/function/{ => samples}/relative-external-include-once/first/second/module.js (100%) rename test/function/{ => samples}/relative-external-include-once/foo.js (100%) rename test/function/{ => samples}/relative-external-include-once/main.js (100%) rename test/function/{ => samples}/removes-empty-exported-vars/_config.js (100%) rename test/function/{ => samples}/removes-empty-exported-vars/main.js (100%) rename test/function/{ => samples}/rename-conditional-expression-children/_config.js (100%) rename test/function/{ => samples}/rename-conditional-expression-children/foo.js (100%) rename test/function/{ => samples}/rename-conditional-expression-children/main.js (100%) rename test/function/{ => samples}/rename-default-export/_config.js (100%) rename test/function/{ => samples}/rename-default-export/bar.js (100%) rename test/function/{ => samples}/rename-default-export/baz.js (100%) rename test/function/{ => samples}/rename-default-export/foo.js (100%) rename test/function/{ => samples}/rename-default-export/main.js (100%) rename test/function/{ => samples}/renamed-arguments/_config.js (100%) rename test/function/{ => samples}/renamed-arguments/bar.js (100%) rename test/function/{ => samples}/renamed-arguments/foo.js (100%) rename test/function/{ => samples}/renamed-arguments/main.js (100%) rename test/function/{ => samples}/resolves-namespace-default/_config.js (100%) rename test/function/{ => samples}/resolves-namespace-default/main.js (100%) rename test/function/{ => samples}/resolves-namespace-default/mod.js (100%) rename test/function/{ => samples}/retains-sort-order-b/_config.js (100%) rename test/function/{ => samples}/retains-sort-order-b/bar.js (100%) rename test/function/{ => samples}/retains-sort-order-b/foo.js (100%) rename test/function/{ => samples}/retains-sort-order-b/main.js (100%) rename test/function/{ => samples}/retains-sort-order/_config.js (100%) rename test/function/{ => samples}/retains-sort-order/baz.js (100%) rename test/function/{ => samples}/retains-sort-order/foobar.js (100%) rename test/function/{ => samples}/retains-sort-order/main.js (100%) rename test/function/{ => samples}/rewrite-member-expressions/_config.js (100%) rename test/function/{ => samples}/rewrite-member-expressions/getLengthOfOtherQueue.js (100%) rename test/function/{ => samples}/rewrite-member-expressions/main.js (100%) rename test/function/{ => samples}/rewrite-member-expressions/mainQueue.js (100%) rename test/function/{ => samples}/shadowed-external-export/_config.js (100%) rename test/function/{ => samples}/shadowed-external-export/main.js (100%) rename test/function/{ => samples}/shadowed-namespace-b/_config.js (100%) rename test/function/{ => samples}/shadowed-namespace-b/bar.js (100%) rename test/function/{ => samples}/shadowed-namespace-b/main.js (100%) rename test/function/{ => samples}/shadowed-namespace/_config.js (100%) rename test/function/{ => samples}/shadowed-namespace/bar.js (100%) rename test/function/{ => samples}/shadowed-namespace/main.js (100%) rename test/function/{ => samples}/shadowed-variables/_config.js (100%) rename test/function/{ => samples}/shadowed-variables/foo.js (100%) rename test/function/{ => samples}/shadowed-variables/main.js (100%) rename test/function/{ => samples}/sourcemapping-url-comment/_config.js (100%) rename test/function/{ => samples}/sourcemapping-url-comment/main.js (100%) rename test/function/{ => samples}/sourcemapping-url-multiline/_config.js (100%) rename test/function/{ => samples}/sourcemapping-url-multiline/main.js (100%) rename test/function/{ => samples}/statement-order/_config.js (100%) rename test/function/{ => samples}/statement-order/answer.js (100%) rename test/function/{ => samples}/statement-order/main.js (100%) rename test/function/{ => samples}/symlink/_config.js (100%) rename test/function/{ => samples}/symlink/foo.js (100%) rename test/function/{ => samples}/symlink/main.js (100%) rename test/function/{ => samples}/symlink/symlinked/bar.js (100%) rename test/function/{ => samples}/symlink/symlinked/baz.js (100%) rename test/function/{ => samples}/this-not-namespace/_config.js (100%) rename test/function/{ => samples}/this-not-namespace/main.js (100%) rename test/function/{ => samples}/throws-not-found-module/_config.js (100%) rename test/function/{ => samples}/throws-not-found-module/main.js (100%) rename test/function/{ => samples}/top-level-arrow-function/_config.js (100%) rename test/function/{ => samples}/top-level-arrow-function/main.js (100%) rename test/function/{ => samples}/top-level-block/_config.js (100%) rename test/function/{ => samples}/top-level-block/main.js (100%) rename test/function/{ => samples}/top-level-side-effect-on-imported/_config.js (100%) rename test/function/{ => samples}/top-level-side-effect-on-imported/lib.js (100%) rename test/function/{ => samples}/top-level-side-effect-on-imported/main.js (100%) rename test/function/{ => samples}/top-level-side-effect-on-imported/obj.js (100%) rename test/function/{ => samples}/top-level-side-effects-are-preserved/_config.js (100%) rename test/function/{ => samples}/top-level-side-effects-are-preserved/asap.js (100%) rename test/function/{ => samples}/top-level-side-effects-are-preserved/config.js (100%) rename test/function/{ => samples}/top-level-side-effects-are-preserved/defer.js (100%) rename test/function/{ => samples}/top-level-side-effects-are-preserved/main.js (100%) rename test/function/{ => samples}/top-level-side-effects-are-preserved/rsvp.js (100%) rename test/function/{ => samples}/tracks-alias-mutations-b/_config.js (100%) rename test/function/{ => samples}/tracks-alias-mutations-b/main.js (100%) rename test/function/{ => samples}/tracks-alias-mutations/_config.js (100%) rename test/function/{ => samples}/tracks-alias-mutations/bar.js (100%) rename test/function/{ => samples}/tracks-alias-mutations/foo.js (100%) rename test/function/{ => samples}/tracks-alias-mutations/main.js (100%) rename test/function/{ => samples}/transformer-async/_config.js (100%) rename test/function/{ => samples}/transformer-async/main.js (100%) rename test/function/{ => samples}/transformer-multiple/_config.js (100%) rename test/function/{ => samples}/transformer-multiple/foo.js (100%) rename test/function/{ => samples}/transformer-multiple/main.js (100%) rename test/function/{ => samples}/transformer-single/_config.js (100%) rename test/function/{ => samples}/transformer-single/foo.js (100%) rename test/function/{ => samples}/transformer-single/main.js (100%) rename test/function/{ => samples}/trim-conditional-branches-in-exports/_config.js (100%) rename test/function/{ => samples}/trim-conditional-branches-in-exports/foo.js (100%) rename test/function/{ => samples}/trim-conditional-branches-in-exports/main.js (100%) rename test/function/{ => samples}/try-catch-scoping/_config.js (100%) rename test/function/{ => samples}/try-catch-scoping/foo.js (100%) rename test/function/{ => samples}/try-catch-scoping/main.js (100%) rename test/function/{ => samples}/unused-import/_config.js (100%) rename test/function/{ => samples}/unused-import/main.js (100%) rename test/function/{ => samples}/unused-var-a/_config.js (100%) rename test/function/{ => samples}/unused-var-a/foo.js (100%) rename test/function/{ => samples}/unused-var-a/main.js (100%) rename test/function/{ => samples}/unused-var-b/_config.js (100%) rename test/function/{ => samples}/unused-var-b/foo.js (100%) rename test/function/{ => samples}/unused-var-b/main.js (100%) rename test/function/{ => samples}/unused-var-c/_config.js (100%) rename test/function/{ => samples}/unused-var-c/foo.js (100%) rename test/function/{ => samples}/unused-var-c/main.js (100%) rename test/function/{ => samples}/unused-var-d/_config.js (100%) rename test/function/{ => samples}/unused-var-d/foo.js (100%) rename test/function/{ => samples}/unused-var-d/main.js (100%) rename test/function/{ => samples}/update-expression-of-import-fails/_config.js (100%) rename test/function/{ => samples}/update-expression-of-import-fails/foo.js (100%) rename test/function/{ => samples}/update-expression-of-import-fails/main.js (100%) rename test/function/{ => samples}/uses-supplied-ast/_config.js (100%) rename test/function/{ => samples}/vars-in-for-loop-head/_config.js (100%) rename test/function/{ => samples}/vars-in-for-loop-head/main.js (100%) rename test/function/{ => samples}/vars-not-removed-in-if-block/_config.js (100%) rename test/function/{ => samples}/vars-not-removed-in-if-block/main.js (100%) rename test/function/{ => samples}/vars-not-removed/_config.js (100%) rename test/function/{ => samples}/vars-not-removed/bar.js (100%) rename test/function/{ => samples}/vars-not-removed/foo.js (100%) rename test/function/{ => samples}/vars-not-removed/main.js (100%) rename test/function/{ => samples}/vars-with-init-in-dead-branch/_config.js (100%) rename test/function/{ => samples}/vars-with-init-in-dead-branch/main.js (100%) rename test/function/{ => samples}/warn-on-auto-named-default-exports/_config.js (100%) rename test/function/{ => samples}/warn-on-auto-named-default-exports/main.js (100%) rename test/function/{ => samples}/warn-on-empty-bundle/_config.js (100%) rename test/function/{ => samples}/warn-on-empty-bundle/main.js (100%) rename test/function/{ => samples}/warn-on-eval/_config.js (100%) rename test/function/{ => samples}/warn-on-eval/main.js (100%) rename test/function/{ => samples}/warn-on-namespace-conflict/_config.js (100%) rename test/function/{ => samples}/warn-on-namespace-conflict/bar.js (100%) rename test/function/{ => samples}/warn-on-namespace-conflict/deep.js (100%) rename test/function/{ => samples}/warn-on-namespace-conflict/foo.js (100%) rename test/function/{ => samples}/warn-on-namespace-conflict/main.js (100%) rename test/function/{ => samples}/warn-on-top-level-this/_config.js (100%) rename test/function/{ => samples}/warn-on-top-level-this/main.js (100%) rename test/function/{ => samples}/warn-on-unused-missing-imports/_config.js (100%) rename test/function/{ => samples}/warn-on-unused-missing-imports/foo.js (100%) rename test/function/{ => samples}/warn-on-unused-missing-imports/main.js (100%) rename test/function/{ => samples}/watch-option/_config.js (100%) rename test/function/{ => samples}/watch-option/main.js (100%) create mode 100644 test/hooks/index.js create mode 100644 test/incremental/index.js create mode 100644 test/leak/main.js delete mode 100644 test/leak/test.js create mode 100644 test/misc/index.js rename test/{utils => sourcemaps}/getLocation.js (100%) create mode 100644 test/sourcemaps/index.js rename test/sourcemaps/{ => samples}/basic-support/_config.js (95%) rename test/sourcemaps/{ => samples}/basic-support/bar.js (100%) rename test/sourcemaps/{ => samples}/basic-support/foo.js (100%) rename test/sourcemaps/{ => samples}/basic-support/main.js (100%) rename test/sourcemaps/{ => samples}/excludes-plugin-helpers/_config.js (100%) rename test/sourcemaps/{ => samples}/excludes-plugin-helpers/helper.js (100%) rename test/sourcemaps/{ => samples}/excludes-plugin-helpers/main.js (100%) rename test/sourcemaps/{ => samples}/loaders/_config.js (97%) rename test/sourcemaps/{ => samples}/loaders/bar.js (100%) rename test/sourcemaps/{ => samples}/loaders/foo.js (100%) rename test/sourcemaps/{ => samples}/loaders/main.js (100%) rename test/sourcemaps/{ => samples}/names-transformed/_config.js (96%) rename test/sourcemaps/{ => samples}/names-transformed/a.js (100%) rename test/sourcemaps/{ => samples}/names-transformed/b.js (100%) rename test/sourcemaps/{ => samples}/names-transformed/main.js (100%) rename test/sourcemaps/{ => samples}/names/_config.js (93%) rename test/sourcemaps/{ => samples}/names/bar.js (100%) rename test/sourcemaps/{ => samples}/names/foo.js (100%) rename test/sourcemaps/{ => samples}/names/main.js (100%) rename test/sourcemaps/{ => samples}/reified-namespace/_config.js (92%) rename test/sourcemaps/{ => samples}/reified-namespace/foo.js (100%) rename test/sourcemaps/{ => samples}/reified-namespace/main.js (100%) rename test/sourcemaps/{ => samples}/relative-paths/_config.js (100%) rename test/sourcemaps/{ => samples}/relative-paths/main.js (100%) rename test/sourcemaps/{ => samples}/single-length-segments/_config.js (95%) rename test/sourcemaps/{ => samples}/single-length-segments/main.js (100%) rename test/sourcemaps/{ => samples}/single-length-segments/output.js (100%) rename test/sourcemaps/{ => samples}/single-length-segments/output.js.map (100%) rename test/sourcemaps/{ => samples}/sourcemap-file/_config.js (100%) rename test/sourcemaps/{ => samples}/sourcemap-file/main.js (100%) rename test/sourcemaps/{ => samples}/transform-bundle-babili/_config.js (94%) rename test/sourcemaps/{ => samples}/transform-bundle-babili/babili-results.js (100%) rename test/sourcemaps/{ => samples}/transform-bundle-babili/main.js (100%) rename test/sourcemaps/{ => samples}/transform-bundle/_config.js (94%) rename test/sourcemaps/{ => samples}/transform-bundle/main.js (100%) rename test/sourcemaps/{ => samples}/transform-without-sourcemap/_config.js (100%) rename test/sourcemaps/{ => samples}/transform-without-sourcemap/main.js (100%) rename test/sourcemaps/{ => samples}/transforms/_config.js (95%) rename test/sourcemaps/{ => samples}/transforms/foo.js (100%) rename test/sourcemaps/{ => samples}/transforms/main.js (100%) rename test/sourcemaps/{ => samples}/untransformed-modules/_config.js (100%) rename test/sourcemaps/{ => samples}/untransformed-modules/foo.js (100%) rename test/sourcemaps/{ => samples}/untransformed-modules/main.js (100%) create mode 100644 test/utils.js delete mode 100644 test/utils/promiseSequence.js create mode 100644 test/watch/index.js diff --git a/.eslintignore b/.eslintignore index 6df029f6ed8..5ff20017f6c 100644 --- a/.eslintignore +++ b/.eslintignore @@ -1,2 +1 @@ -test/* -!test/test.js +test/*/samples/** \ No newline at end of file diff --git a/package.json b/package.json index 52659ab63e9..68f47620bea 100644 --- a/package.json +++ b/package.json @@ -11,7 +11,7 @@ "scripts": { "pretest": "npm run build && npm run build:cli", "test": "mocha", - "test:leak": "node --expose-gc test/leak/test.js", + "test:leak": "node --expose-gc test/leak/index.js", "test:quick": "rollup -c && mocha", "pretest-coverage": "npm run build", "test-coverage": "rm -rf coverage/* && istanbul cover --report json node_modules/.bin/_mocha -- -u exports -R spec test/test.js", @@ -24,7 +24,7 @@ "watch:browser": "rollup -c rollup.config.browser.js -w", "watch:cli": "rollup -c rollup.config.cli.js -w", "prepublish": "npm run lint && npm test && npm run test:leak && npm run build:browser", - "lint": "eslint src browser test/test.js test/utils test/**/_config.js" + "lint": "eslint src browser test/test.js test/*/index.js test/utils test/**/_config.js" }, "repository": "rollup/rollup", "keywords": [ diff --git a/test/cli/index.js b/test/cli/index.js new file mode 100644 index 00000000000..3a506573bbb --- /dev/null +++ b/test/cli/index.js @@ -0,0 +1,130 @@ +const path = require('path'); +const assert = require('assert'); +const sander = require('sander'); +const buble = require('buble'); +const { exec } = require('child_process'); +const { deindent, loadConfig, normaliseOutput } = require('../utils.js'); + +const samples = path.resolve(__dirname, 'samples'); + +describe('cli', () => { + sander.readdirSync(samples).sort().forEach(dir => { + if (dir[0] === '.') return; // .DS_Store... + + describe(dir, () => { + const config = loadConfig(samples + '/' + dir + '/_config.js'); + + (config.skip ? it.skip : config.solo ? it.only : it)(dir, done => { + process.chdir(config.cwd || path.resolve(samples, dir)); + + const command = + 'node ' + + path.resolve(__dirname, '../../bin') + + path.sep + + config.command; + + exec(command, {}, (err, code, stderr) => { + if (err) { + if (config.error) { + const shouldContinue = config.error(err); + if (!shouldContinue) return done(); + } else { + throw err; + } + } + + if ('stderr' in config) { + assert.equal(deindent(config.stderr), stderr.trim()); + } else if (stderr) { + console.error(stderr); + } + + let unintendedError; + + if (config.execute) { + try { + if (config.buble) { + code = buble.transform(code, { + transforms: { modules: false } + }).code; + } + + const fn = new Function( + 'require', + 'module', + 'exports', + 'assert', + code + ); + const module = { + exports: {} + }; + fn(require, module, module.exports, assert); + + if (config.error) { + unintendedError = new Error( + 'Expected an error while executing output' + ); + } + + if (config.exports) { + config.exports(module.exports); + } + } catch (err) { + if (config.error) { + config.error(err); + } else { + unintendedError = err; + } + } + + if (config.show || unintendedError) { + console.log(code + '\n\n\n'); + } + + if (config.solo) console.groupEnd(); + + unintendedError ? done(unintendedError) : done(); + } else if (config.result) { + try { + config.result(code); + done(); + } catch (err) { + done(err); + } + } else if ( + sander.existsSync('_expected') && + sander.statSync('_expected').isDirectory() + ) { + let error = null; + sander.readdirSync('_expected').forEach(child => { + const expected = sander + .readFileSync(path.join('_expected', child)) + .toString(); + const actual = sander + .readFileSync(path.join('_actual', child)) + .toString(); + try { + assert.equal( + normaliseOutput(actual), + normaliseOutput(expected) + ); + } catch (err) { + error = err; + } + }); + done(error); + } else { + const expected = sander.readFileSync('_expected.js').toString(); + try { + assert.equal(normaliseOutput(code), normaliseOutput(expected)); + done(); + } catch (err) { + done(err); + } + } + }); + }); + }); + }); +}); diff --git a/test/cli/node-config-auto-prefix/node_modules/rollup-config-foo/lib/config.js b/test/cli/node-config-auto-prefix/node_modules/rollup-config-foo/lib/config.js deleted file mode 100644 index 3cc995e2f4a..00000000000 --- a/test/cli/node-config-auto-prefix/node_modules/rollup-config-foo/lib/config.js +++ /dev/null @@ -1,9 +0,0 @@ -var replace = require( 'rollup-plugin-replace' ); - -module.exports = { - entry: 'main.js', - format: 'cjs', - plugins: [ - replace({ 'ANSWER': 42 }) - ] -}; diff --git a/test/cli/node-config-auto-prefix/node_modules/rollup-config-foo/package.json b/test/cli/node-config-auto-prefix/node_modules/rollup-config-foo/package.json deleted file mode 100644 index fbd490130d0..00000000000 --- a/test/cli/node-config-auto-prefix/node_modules/rollup-config-foo/package.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "main": "lib/config.js" -} diff --git a/test/cli/node-config/node_modules/foo/lib/config.js b/test/cli/node-config/node_modules/foo/lib/config.js deleted file mode 100644 index 3cc995e2f4a..00000000000 --- a/test/cli/node-config/node_modules/foo/lib/config.js +++ /dev/null @@ -1,9 +0,0 @@ -var replace = require( 'rollup-plugin-replace' ); - -module.exports = { - entry: 'main.js', - format: 'cjs', - plugins: [ - replace({ 'ANSWER': 42 }) - ] -}; diff --git a/test/cli/node-config/node_modules/foo/package.json b/test/cli/node-config/node_modules/foo/package.json deleted file mode 100644 index fbd490130d0..00000000000 --- a/test/cli/node-config/node_modules/foo/package.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "main": "lib/config.js" -} diff --git a/test/cli/banner-intro-outro-footer/_config.js b/test/cli/samples/banner-intro-outro-footer/_config.js similarity index 100% rename from test/cli/banner-intro-outro-footer/_config.js rename to test/cli/samples/banner-intro-outro-footer/_config.js diff --git a/test/cli/banner-intro-outro-footer/_expected.js b/test/cli/samples/banner-intro-outro-footer/_expected.js similarity index 100% rename from test/cli/banner-intro-outro-footer/_expected.js rename to test/cli/samples/banner-intro-outro-footer/_expected.js diff --git a/test/cli/banner-intro-outro-footer/main.js b/test/cli/samples/banner-intro-outro-footer/main.js similarity index 100% rename from test/cli/banner-intro-outro-footer/main.js rename to test/cli/samples/banner-intro-outro-footer/main.js diff --git a/test/cli/config-cwd-case-insensitive/_config.js b/test/cli/samples/config-cwd-case-insensitive/_config.js similarity index 100% rename from test/cli/config-cwd-case-insensitive/_config.js rename to test/cli/samples/config-cwd-case-insensitive/_config.js diff --git a/test/cli/config-cwd-case-insensitive/main.js b/test/cli/samples/config-cwd-case-insensitive/main.js similarity index 100% rename from test/cli/config-cwd-case-insensitive/main.js rename to test/cli/samples/config-cwd-case-insensitive/main.js diff --git a/test/cli/config-cwd-case-insensitive/rollup.config.js b/test/cli/samples/config-cwd-case-insensitive/rollup.config.js similarity index 100% rename from test/cli/config-cwd-case-insensitive/rollup.config.js rename to test/cli/samples/config-cwd-case-insensitive/rollup.config.js diff --git a/test/cli/config-env/_config.js b/test/cli/samples/config-env/_config.js similarity index 100% rename from test/cli/config-env/_config.js rename to test/cli/samples/config-env/_config.js diff --git a/test/cli/config-env/main.js b/test/cli/samples/config-env/main.js similarity index 100% rename from test/cli/config-env/main.js rename to test/cli/samples/config-env/main.js diff --git a/test/cli/config-env/rollup.config.js b/test/cli/samples/config-env/rollup.config.js similarity index 100% rename from test/cli/config-env/rollup.config.js rename to test/cli/samples/config-env/rollup.config.js diff --git a/test/cli/config-es6/_config.js b/test/cli/samples/config-es6/_config.js similarity index 100% rename from test/cli/config-es6/_config.js rename to test/cli/samples/config-es6/_config.js diff --git a/test/cli/config-es6/main.js b/test/cli/samples/config-es6/main.js similarity index 100% rename from test/cli/config-es6/main.js rename to test/cli/samples/config-es6/main.js diff --git a/test/cli/config-es6/rollup.config.js b/test/cli/samples/config-es6/rollup.config.js similarity index 100% rename from test/cli/config-es6/rollup.config.js rename to test/cli/samples/config-es6/rollup.config.js diff --git a/test/cli/config-external-function/_config.js b/test/cli/samples/config-external-function/_config.js similarity index 100% rename from test/cli/config-external-function/_config.js rename to test/cli/samples/config-external-function/_config.js diff --git a/test/cli/config-external-function/_expected.js b/test/cli/samples/config-external-function/_expected.js similarity index 100% rename from test/cli/config-external-function/_expected.js rename to test/cli/samples/config-external-function/_expected.js diff --git a/test/cli/config-external-function/main.js b/test/cli/samples/config-external-function/main.js similarity index 100% rename from test/cli/config-external-function/main.js rename to test/cli/samples/config-external-function/main.js diff --git a/test/cli/config-external-function/rollup.config.js b/test/cli/samples/config-external-function/rollup.config.js similarity index 100% rename from test/cli/config-external-function/rollup.config.js rename to test/cli/samples/config-external-function/rollup.config.js diff --git a/test/cli/config-external/_config.js b/test/cli/samples/config-external/_config.js similarity index 100% rename from test/cli/config-external/_config.js rename to test/cli/samples/config-external/_config.js diff --git a/test/cli/config-external/_expected.js b/test/cli/samples/config-external/_expected.js similarity index 100% rename from test/cli/config-external/_expected.js rename to test/cli/samples/config-external/_expected.js diff --git a/test/cli/config-external/main.js b/test/cli/samples/config-external/main.js similarity index 100% rename from test/cli/config-external/main.js rename to test/cli/samples/config-external/main.js diff --git a/test/cli/config-external/rollup.config.js b/test/cli/samples/config-external/rollup.config.js similarity index 100% rename from test/cli/config-external/rollup.config.js rename to test/cli/samples/config-external/rollup.config.js diff --git a/test/cli/config-json/_config.js b/test/cli/samples/config-json/_config.js similarity index 100% rename from test/cli/config-json/_config.js rename to test/cli/samples/config-json/_config.js diff --git a/test/cli/config-json/main.js b/test/cli/samples/config-json/main.js similarity index 100% rename from test/cli/config-json/main.js rename to test/cli/samples/config-json/main.js diff --git a/test/cli/config-json/package.json b/test/cli/samples/config-json/package.json similarity index 100% rename from test/cli/config-json/package.json rename to test/cli/samples/config-json/package.json diff --git a/test/cli/config-json/rollup.config.js b/test/cli/samples/config-json/rollup.config.js similarity index 100% rename from test/cli/config-json/rollup.config.js rename to test/cli/samples/config-json/rollup.config.js diff --git a/test/cli/config-missing-export/_config.js b/test/cli/samples/config-missing-export/_config.js similarity index 100% rename from test/cli/config-missing-export/_config.js rename to test/cli/samples/config-missing-export/_config.js diff --git a/test/cli/config-missing-export/rollup.config.js b/test/cli/samples/config-missing-export/rollup.config.js similarity index 100% rename from test/cli/config-missing-export/rollup.config.js rename to test/cli/samples/config-missing-export/rollup.config.js diff --git a/test/cli/config-override/_config.js b/test/cli/samples/config-override/_config.js similarity index 100% rename from test/cli/config-override/_config.js rename to test/cli/samples/config-override/_config.js diff --git a/test/cli/config-override/main.js b/test/cli/samples/config-override/main.js similarity index 100% rename from test/cli/config-override/main.js rename to test/cli/samples/config-override/main.js diff --git a/test/cli/config-override/rollup.config.js b/test/cli/samples/config-override/rollup.config.js similarity index 100% rename from test/cli/config-override/rollup.config.js rename to test/cli/samples/config-override/rollup.config.js diff --git a/test/cli/config-plugin-entry/_config.js b/test/cli/samples/config-plugin-entry/_config.js similarity index 100% rename from test/cli/config-plugin-entry/_config.js rename to test/cli/samples/config-plugin-entry/_config.js diff --git a/test/cli/config-plugin-entry/_expected.js b/test/cli/samples/config-plugin-entry/_expected.js similarity index 100% rename from test/cli/config-plugin-entry/_expected.js rename to test/cli/samples/config-plugin-entry/_expected.js diff --git a/test/cli/config-plugin-entry/main.js b/test/cli/samples/config-plugin-entry/main.js similarity index 100% rename from test/cli/config-plugin-entry/main.js rename to test/cli/samples/config-plugin-entry/main.js diff --git a/test/cli/config-plugin-entry/rollup.config.js b/test/cli/samples/config-plugin-entry/rollup.config.js similarity index 100% rename from test/cli/config-plugin-entry/rollup.config.js rename to test/cli/samples/config-plugin-entry/rollup.config.js diff --git a/test/cli/config-true/_config.js b/test/cli/samples/config-true/_config.js similarity index 100% rename from test/cli/config-true/_config.js rename to test/cli/samples/config-true/_config.js diff --git a/test/cli/config-true/main.js b/test/cli/samples/config-true/main.js similarity index 100% rename from test/cli/config-true/main.js rename to test/cli/samples/config-true/main.js diff --git a/test/cli/config-true/rollup.config.js b/test/cli/samples/config-true/rollup.config.js similarity index 100% rename from test/cli/config-true/rollup.config.js rename to test/cli/samples/config-true/rollup.config.js diff --git a/test/cli/config/_config.js b/test/cli/samples/config/_config.js similarity index 100% rename from test/cli/config/_config.js rename to test/cli/samples/config/_config.js diff --git a/test/cli/config/_expected.js b/test/cli/samples/config/_expected.js similarity index 100% rename from test/cli/config/_expected.js rename to test/cli/samples/config/_expected.js diff --git a/test/cli/config/main.js b/test/cli/samples/config/main.js similarity index 100% rename from test/cli/config/main.js rename to test/cli/samples/config/main.js diff --git a/test/cli/config/rollup.config.js b/test/cli/samples/config/rollup.config.js similarity index 100% rename from test/cli/config/rollup.config.js rename to test/cli/samples/config/rollup.config.js diff --git a/test/cli/external-modules-auto-global/_config.js b/test/cli/samples/external-modules-auto-global/_config.js similarity index 100% rename from test/cli/external-modules-auto-global/_config.js rename to test/cli/samples/external-modules-auto-global/_config.js diff --git a/test/cli/external-modules-auto-global/main.js b/test/cli/samples/external-modules-auto-global/main.js similarity index 100% rename from test/cli/external-modules-auto-global/main.js rename to test/cli/samples/external-modules-auto-global/main.js diff --git a/test/cli/external-modules/_config.js b/test/cli/samples/external-modules/_config.js similarity index 100% rename from test/cli/external-modules/_config.js rename to test/cli/samples/external-modules/_config.js diff --git a/test/cli/external-modules/main.js b/test/cli/samples/external-modules/main.js similarity index 100% rename from test/cli/external-modules/main.js rename to test/cli/samples/external-modules/main.js diff --git a/test/cli/indent-none/_config.js b/test/cli/samples/indent-none/_config.js similarity index 100% rename from test/cli/indent-none/_config.js rename to test/cli/samples/indent-none/_config.js diff --git a/test/cli/indent-none/_expected.js b/test/cli/samples/indent-none/_expected.js similarity index 100% rename from test/cli/indent-none/_expected.js rename to test/cli/samples/indent-none/_expected.js diff --git a/test/cli/indent-none/main.js b/test/cli/samples/indent-none/main.js similarity index 100% rename from test/cli/indent-none/main.js rename to test/cli/samples/indent-none/main.js diff --git a/test/cli/module-name/_config.js b/test/cli/samples/module-name/_config.js similarity index 100% rename from test/cli/module-name/_config.js rename to test/cli/samples/module-name/_config.js diff --git a/test/cli/module-name/_expected.js b/test/cli/samples/module-name/_expected.js similarity index 100% rename from test/cli/module-name/_expected.js rename to test/cli/samples/module-name/_expected.js diff --git a/test/cli/module-name/main.js b/test/cli/samples/module-name/main.js similarity index 100% rename from test/cli/module-name/main.js rename to test/cli/samples/module-name/main.js diff --git a/test/cli/multiple-configs/_config.js b/test/cli/samples/multiple-configs/_config.js similarity index 100% rename from test/cli/multiple-configs/_config.js rename to test/cli/samples/multiple-configs/_config.js diff --git a/test/cli/multiple-configs/_expected/bundle1.js b/test/cli/samples/multiple-configs/_expected/bundle1.js similarity index 100% rename from test/cli/multiple-configs/_expected/bundle1.js rename to test/cli/samples/multiple-configs/_expected/bundle1.js diff --git a/test/cli/multiple-configs/main.js b/test/cli/samples/multiple-configs/main.js similarity index 100% rename from test/cli/multiple-configs/main.js rename to test/cli/samples/multiple-configs/main.js diff --git a/test/cli/multiple-configs/rollup.config.js b/test/cli/samples/multiple-configs/rollup.config.js similarity index 100% rename from test/cli/multiple-configs/rollup.config.js rename to test/cli/samples/multiple-configs/rollup.config.js diff --git a/test/cli/multiple-targets-shared-config/_config.js b/test/cli/samples/multiple-targets-shared-config/_config.js similarity index 100% rename from test/cli/multiple-targets-shared-config/_config.js rename to test/cli/samples/multiple-targets-shared-config/_config.js diff --git a/test/cli/multiple-targets-shared-config/_expected/cjs.js b/test/cli/samples/multiple-targets-shared-config/_expected/cjs.js similarity index 100% rename from test/cli/multiple-targets-shared-config/_expected/cjs.js rename to test/cli/samples/multiple-targets-shared-config/_expected/cjs.js diff --git a/test/cli/multiple-targets-shared-config/_expected/cjs.js.map b/test/cli/samples/multiple-targets-shared-config/_expected/cjs.js.map similarity index 100% rename from test/cli/multiple-targets-shared-config/_expected/cjs.js.map rename to test/cli/samples/multiple-targets-shared-config/_expected/cjs.js.map diff --git a/test/cli/multiple-targets-shared-config/_expected/es.js b/test/cli/samples/multiple-targets-shared-config/_expected/es.js similarity index 100% rename from test/cli/multiple-targets-shared-config/_expected/es.js rename to test/cli/samples/multiple-targets-shared-config/_expected/es.js diff --git a/test/cli/multiple-targets-shared-config/_expected/es.js.map b/test/cli/samples/multiple-targets-shared-config/_expected/es.js.map similarity index 100% rename from test/cli/multiple-targets-shared-config/_expected/es.js.map rename to test/cli/samples/multiple-targets-shared-config/_expected/es.js.map diff --git a/test/cli/multiple-targets-shared-config/main.js b/test/cli/samples/multiple-targets-shared-config/main.js similarity index 100% rename from test/cli/multiple-targets-shared-config/main.js rename to test/cli/samples/multiple-targets-shared-config/main.js diff --git a/test/cli/multiple-targets-shared-config/rollup.config.js b/test/cli/samples/multiple-targets-shared-config/rollup.config.js similarity index 100% rename from test/cli/multiple-targets-shared-config/rollup.config.js rename to test/cli/samples/multiple-targets-shared-config/rollup.config.js diff --git a/test/cli/multiple-targets/_config.js b/test/cli/samples/multiple-targets/_config.js similarity index 100% rename from test/cli/multiple-targets/_config.js rename to test/cli/samples/multiple-targets/_config.js diff --git a/test/cli/multiple-targets/_expected/cjs.js b/test/cli/samples/multiple-targets/_expected/cjs.js similarity index 100% rename from test/cli/multiple-targets/_expected/cjs.js rename to test/cli/samples/multiple-targets/_expected/cjs.js diff --git a/test/cli/multiple-targets/_expected/es.js b/test/cli/samples/multiple-targets/_expected/es.js similarity index 100% rename from test/cli/multiple-targets/_expected/es.js rename to test/cli/samples/multiple-targets/_expected/es.js diff --git a/test/cli/multiple-targets/main.js b/test/cli/samples/multiple-targets/main.js similarity index 100% rename from test/cli/multiple-targets/main.js rename to test/cli/samples/multiple-targets/main.js diff --git a/test/cli/multiple-targets/rollup.config.js b/test/cli/samples/multiple-targets/rollup.config.js similarity index 100% rename from test/cli/multiple-targets/rollup.config.js rename to test/cli/samples/multiple-targets/rollup.config.js diff --git a/test/cli/no-conflict/_config.js b/test/cli/samples/no-conflict/_config.js similarity index 100% rename from test/cli/no-conflict/_config.js rename to test/cli/samples/no-conflict/_config.js diff --git a/test/cli/no-conflict/_expected.js b/test/cli/samples/no-conflict/_expected.js similarity index 100% rename from test/cli/no-conflict/_expected.js rename to test/cli/samples/no-conflict/_expected.js diff --git a/test/cli/no-conflict/main.js b/test/cli/samples/no-conflict/main.js similarity index 100% rename from test/cli/no-conflict/main.js rename to test/cli/samples/no-conflict/main.js diff --git a/test/cli/no-conflict/rollup.config.js b/test/cli/samples/no-conflict/rollup.config.js similarity index 100% rename from test/cli/no-conflict/rollup.config.js rename to test/cli/samples/no-conflict/rollup.config.js diff --git a/test/cli/no-strict/_config.js b/test/cli/samples/no-strict/_config.js similarity index 100% rename from test/cli/no-strict/_config.js rename to test/cli/samples/no-strict/_config.js diff --git a/test/cli/no-strict/_expected.js b/test/cli/samples/no-strict/_expected.js similarity index 100% rename from test/cli/no-strict/_expected.js rename to test/cli/samples/no-strict/_expected.js diff --git a/test/cli/no-strict/main.js b/test/cli/samples/no-strict/main.js similarity index 100% rename from test/cli/no-strict/main.js rename to test/cli/samples/no-strict/main.js diff --git a/test/cli/no-treeshake/_config.js b/test/cli/samples/no-treeshake/_config.js similarity index 100% rename from test/cli/no-treeshake/_config.js rename to test/cli/samples/no-treeshake/_config.js diff --git a/test/cli/no-treeshake/_expected.js b/test/cli/samples/no-treeshake/_expected.js similarity index 100% rename from test/cli/no-treeshake/_expected.js rename to test/cli/samples/no-treeshake/_expected.js diff --git a/test/cli/no-treeshake/main.js b/test/cli/samples/no-treeshake/main.js similarity index 100% rename from test/cli/no-treeshake/main.js rename to test/cli/samples/no-treeshake/main.js diff --git a/test/cli/node-config-auto-prefix/_config.js b/test/cli/samples/node-config-auto-prefix/_config.js similarity index 100% rename from test/cli/node-config-auto-prefix/_config.js rename to test/cli/samples/node-config-auto-prefix/_config.js diff --git a/test/cli/node-config-auto-prefix/_expected.js b/test/cli/samples/node-config-auto-prefix/_expected.js similarity index 100% rename from test/cli/node-config-auto-prefix/_expected.js rename to test/cli/samples/node-config-auto-prefix/_expected.js diff --git a/test/cli/node-config-auto-prefix/main.js b/test/cli/samples/node-config-auto-prefix/main.js similarity index 100% rename from test/cli/node-config-auto-prefix/main.js rename to test/cli/samples/node-config-auto-prefix/main.js diff --git a/test/cli/node-config/_config.js b/test/cli/samples/node-config/_config.js similarity index 100% rename from test/cli/node-config/_config.js rename to test/cli/samples/node-config/_config.js diff --git a/test/cli/node-config/_expected.js b/test/cli/samples/node-config/_expected.js similarity index 100% rename from test/cli/node-config/_expected.js rename to test/cli/samples/node-config/_expected.js diff --git a/test/cli/node-config/main.js b/test/cli/samples/node-config/main.js similarity index 100% rename from test/cli/node-config/main.js rename to test/cli/samples/node-config/main.js diff --git a/test/cli/silent/_config.js b/test/cli/samples/silent/_config.js similarity index 100% rename from test/cli/silent/_config.js rename to test/cli/samples/silent/_config.js diff --git a/test/cli/silent/_expected.js b/test/cli/samples/silent/_expected.js similarity index 100% rename from test/cli/silent/_expected.js rename to test/cli/samples/silent/_expected.js diff --git a/test/cli/silent/foo.js b/test/cli/samples/silent/foo.js similarity index 100% rename from test/cli/silent/foo.js rename to test/cli/samples/silent/foo.js diff --git a/test/cli/silent/main.js b/test/cli/samples/silent/main.js similarity index 100% rename from test/cli/silent/main.js rename to test/cli/samples/silent/main.js diff --git a/test/cli/sourcemap-newline/_config.js b/test/cli/samples/sourcemap-newline/_config.js similarity index 100% rename from test/cli/sourcemap-newline/_config.js rename to test/cli/samples/sourcemap-newline/_config.js diff --git a/test/cli/sourcemap-newline/main.js b/test/cli/samples/sourcemap-newline/main.js similarity index 100% rename from test/cli/sourcemap-newline/main.js rename to test/cli/samples/sourcemap-newline/main.js diff --git a/test/form/index.js b/test/form/index.js new file mode 100644 index 00000000000..8d3fc48285f --- /dev/null +++ b/test/form/index.js @@ -0,0 +1,108 @@ +const path = require('path'); +const assert = require('assert'); +const sander = require('sander'); +const rollup = require('../../dist/rollup'); +const { extend, loadConfig, normaliseOutput } = require('../utils.js'); + +const samples = path.resolve(__dirname, 'samples'); + +const FORMATS = ['amd', 'cjs', 'es', 'iife', 'umd']; + +describe('form', () => { + sander.readdirSync(samples).sort().forEach(dir => { + if (dir[0] === '.') return; // .DS_Store... + + const config = loadConfig(samples + '/' + dir + '/_config.js'); + + if (config.skipIfWindows && process.platform === 'win32') return; + if (!config.options) { + config.options = {}; + } + if (!('indent' in config.options)) { + config.options.indent = true; + } + + const options = extend( + {}, + { + entry: samples + '/' + dir + '/main.js', + onwarn: msg => { + if (/No name was provided for/.test(msg)) return; + if (/as external dependency/.test(msg)) return; + console.error(msg); + } + }, + config.options + ); + + (config.skip + ? describe.skip + : config.solo ? describe.only : describe)(dir, () => { + let promise; + const createBundle = () => promise || (promise = rollup.rollup(options)); + + FORMATS.forEach(format => { + it('generates ' + format, () => { + process.chdir(samples + '/' + dir); + + return createBundle().then(bundle => { + const options = extend({}, config.options, { + dest: samples + '/' + dir + '/_actual/' + format + '.js', + format + }); + + return bundle.write(options).then(() => { + const actualCode = normaliseOutput( + sander.readFileSync(samples, dir, '_actual', format + '.js') + ); + let expectedCode; + let actualMap; + let expectedMap; + + try { + expectedCode = normaliseOutput( + sander.readFileSync(samples, dir, '_expected', format + '.js') + ); + } catch (err) { + expectedCode = 'missing file'; + } + + try { + actualMap = JSON.parse( + sander + .readFileSync(samples, dir, '_actual', format + '.js.map') + .toString() + ); + actualMap.sourcesContent = actualMap.sourcesContent.map( + normaliseOutput + ); + } catch (err) { + assert.equal(err.code, 'ENOENT'); + } + + try { + expectedMap = JSON.parse( + sander + .readFileSync(samples, dir, '_expected', format + '.js.map') + .toString() + ); + expectedMap.sourcesContent = expectedMap.sourcesContent.map( + normaliseOutput + ); + } catch (err) { + assert.equal(err.code, 'ENOENT'); + } + + if (config.show) { + console.log(actualCode + '\n\n\n'); + } + + assert.equal(actualCode, expectedCode); + assert.deepEqual(actualMap, expectedMap); + }); + }); + }); + }); + }); + }); +}); diff --git a/test/form/absolute-path-resolver/_config.js b/test/form/samples/absolute-path-resolver/_config.js similarity index 100% rename from test/form/absolute-path-resolver/_config.js rename to test/form/samples/absolute-path-resolver/_config.js diff --git a/test/form/absolute-path-resolver/_expected/amd.js b/test/form/samples/absolute-path-resolver/_expected/amd.js similarity index 100% rename from test/form/absolute-path-resolver/_expected/amd.js rename to test/form/samples/absolute-path-resolver/_expected/amd.js diff --git a/test/form/absolute-path-resolver/_expected/cjs.js b/test/form/samples/absolute-path-resolver/_expected/cjs.js similarity index 100% rename from test/form/absolute-path-resolver/_expected/cjs.js rename to test/form/samples/absolute-path-resolver/_expected/cjs.js diff --git a/test/form/absolute-path-resolver/_expected/es.js b/test/form/samples/absolute-path-resolver/_expected/es.js similarity index 100% rename from test/form/absolute-path-resolver/_expected/es.js rename to test/form/samples/absolute-path-resolver/_expected/es.js diff --git a/test/form/absolute-path-resolver/_expected/iife.js b/test/form/samples/absolute-path-resolver/_expected/iife.js similarity index 100% rename from test/form/absolute-path-resolver/_expected/iife.js rename to test/form/samples/absolute-path-resolver/_expected/iife.js diff --git a/test/form/absolute-path-resolver/_expected/umd.js b/test/form/samples/absolute-path-resolver/_expected/umd.js similarity index 100% rename from test/form/absolute-path-resolver/_expected/umd.js rename to test/form/samples/absolute-path-resolver/_expected/umd.js diff --git a/test/form/absolute-path-resolver/a.js b/test/form/samples/absolute-path-resolver/a.js similarity index 100% rename from test/form/absolute-path-resolver/a.js rename to test/form/samples/absolute-path-resolver/a.js diff --git a/test/form/absolute-path-resolver/main.js b/test/form/samples/absolute-path-resolver/main.js similarity index 100% rename from test/form/absolute-path-resolver/main.js rename to test/form/samples/absolute-path-resolver/main.js diff --git a/test/form/assignment-to-exports-class-declaration/_config.js b/test/form/samples/assignment-to-exports-class-declaration/_config.js similarity index 100% rename from test/form/assignment-to-exports-class-declaration/_config.js rename to test/form/samples/assignment-to-exports-class-declaration/_config.js diff --git a/test/form/assignment-to-exports-class-declaration/_expected/amd.js b/test/form/samples/assignment-to-exports-class-declaration/_expected/amd.js similarity index 100% rename from test/form/assignment-to-exports-class-declaration/_expected/amd.js rename to test/form/samples/assignment-to-exports-class-declaration/_expected/amd.js diff --git a/test/form/assignment-to-exports-class-declaration/_expected/cjs.js b/test/form/samples/assignment-to-exports-class-declaration/_expected/cjs.js similarity index 100% rename from test/form/assignment-to-exports-class-declaration/_expected/cjs.js rename to test/form/samples/assignment-to-exports-class-declaration/_expected/cjs.js diff --git a/test/form/assignment-to-exports-class-declaration/_expected/es.js b/test/form/samples/assignment-to-exports-class-declaration/_expected/es.js similarity index 100% rename from test/form/assignment-to-exports-class-declaration/_expected/es.js rename to test/form/samples/assignment-to-exports-class-declaration/_expected/es.js diff --git a/test/form/assignment-to-exports-class-declaration/_expected/iife.js b/test/form/samples/assignment-to-exports-class-declaration/_expected/iife.js similarity index 100% rename from test/form/assignment-to-exports-class-declaration/_expected/iife.js rename to test/form/samples/assignment-to-exports-class-declaration/_expected/iife.js diff --git a/test/form/assignment-to-exports-class-declaration/_expected/umd.js b/test/form/samples/assignment-to-exports-class-declaration/_expected/umd.js similarity index 100% rename from test/form/assignment-to-exports-class-declaration/_expected/umd.js rename to test/form/samples/assignment-to-exports-class-declaration/_expected/umd.js diff --git a/test/form/assignment-to-exports-class-declaration/main.js b/test/form/samples/assignment-to-exports-class-declaration/main.js similarity index 100% rename from test/form/assignment-to-exports-class-declaration/main.js rename to test/form/samples/assignment-to-exports-class-declaration/main.js diff --git a/test/form/assignment-to-exports/_config.js b/test/form/samples/assignment-to-exports/_config.js similarity index 100% rename from test/form/assignment-to-exports/_config.js rename to test/form/samples/assignment-to-exports/_config.js diff --git a/test/form/assignment-to-exports/_expected/amd.js b/test/form/samples/assignment-to-exports/_expected/amd.js similarity index 100% rename from test/form/assignment-to-exports/_expected/amd.js rename to test/form/samples/assignment-to-exports/_expected/amd.js diff --git a/test/form/assignment-to-exports/_expected/cjs.js b/test/form/samples/assignment-to-exports/_expected/cjs.js similarity index 100% rename from test/form/assignment-to-exports/_expected/cjs.js rename to test/form/samples/assignment-to-exports/_expected/cjs.js diff --git a/test/form/assignment-to-exports/_expected/es.js b/test/form/samples/assignment-to-exports/_expected/es.js similarity index 100% rename from test/form/assignment-to-exports/_expected/es.js rename to test/form/samples/assignment-to-exports/_expected/es.js diff --git a/test/form/assignment-to-exports/_expected/iife.js b/test/form/samples/assignment-to-exports/_expected/iife.js similarity index 100% rename from test/form/assignment-to-exports/_expected/iife.js rename to test/form/samples/assignment-to-exports/_expected/iife.js diff --git a/test/form/assignment-to-exports/_expected/umd.js b/test/form/samples/assignment-to-exports/_expected/umd.js similarity index 100% rename from test/form/assignment-to-exports/_expected/umd.js rename to test/form/samples/assignment-to-exports/_expected/umd.js diff --git a/test/form/assignment-to-exports/main.js b/test/form/samples/assignment-to-exports/main.js similarity index 100% rename from test/form/assignment-to-exports/main.js rename to test/form/samples/assignment-to-exports/main.js diff --git a/test/form/async-function-unused/_config.js b/test/form/samples/async-function-unused/_config.js similarity index 100% rename from test/form/async-function-unused/_config.js rename to test/form/samples/async-function-unused/_config.js diff --git a/test/form/async-function-unused/_expected/amd.js b/test/form/samples/async-function-unused/_expected/amd.js similarity index 100% rename from test/form/async-function-unused/_expected/amd.js rename to test/form/samples/async-function-unused/_expected/amd.js diff --git a/test/form/async-function-unused/_expected/cjs.js b/test/form/samples/async-function-unused/_expected/cjs.js similarity index 100% rename from test/form/async-function-unused/_expected/cjs.js rename to test/form/samples/async-function-unused/_expected/cjs.js diff --git a/test/form/async-function-unused/_expected/es.js b/test/form/samples/async-function-unused/_expected/es.js similarity index 100% rename from test/form/async-function-unused/_expected/es.js rename to test/form/samples/async-function-unused/_expected/es.js diff --git a/test/form/async-function-unused/_expected/iife.js b/test/form/samples/async-function-unused/_expected/iife.js similarity index 100% rename from test/form/async-function-unused/_expected/iife.js rename to test/form/samples/async-function-unused/_expected/iife.js diff --git a/test/form/async-function-unused/_expected/umd.js b/test/form/samples/async-function-unused/_expected/umd.js similarity index 100% rename from test/form/async-function-unused/_expected/umd.js rename to test/form/samples/async-function-unused/_expected/umd.js diff --git a/test/form/async-function-unused/main.js b/test/form/samples/async-function-unused/main.js similarity index 100% rename from test/form/async-function-unused/main.js rename to test/form/samples/async-function-unused/main.js diff --git a/test/form/async-function-unused/utils.js b/test/form/samples/async-function-unused/utils.js similarity index 100% rename from test/form/async-function-unused/utils.js rename to test/form/samples/async-function-unused/utils.js diff --git a/test/form/banner-and-footer-plugin/_config.js b/test/form/samples/banner-and-footer-plugin/_config.js similarity index 100% rename from test/form/banner-and-footer-plugin/_config.js rename to test/form/samples/banner-and-footer-plugin/_config.js diff --git a/test/form/banner-and-footer-plugin/_expected/amd.js b/test/form/samples/banner-and-footer-plugin/_expected/amd.js similarity index 100% rename from test/form/banner-and-footer-plugin/_expected/amd.js rename to test/form/samples/banner-and-footer-plugin/_expected/amd.js diff --git a/test/form/banner-and-footer-plugin/_expected/cjs.js b/test/form/samples/banner-and-footer-plugin/_expected/cjs.js similarity index 100% rename from test/form/banner-and-footer-plugin/_expected/cjs.js rename to test/form/samples/banner-and-footer-plugin/_expected/cjs.js diff --git a/test/form/banner-and-footer-plugin/_expected/es.js b/test/form/samples/banner-and-footer-plugin/_expected/es.js similarity index 100% rename from test/form/banner-and-footer-plugin/_expected/es.js rename to test/form/samples/banner-and-footer-plugin/_expected/es.js diff --git a/test/form/banner-and-footer-plugin/_expected/iife.js b/test/form/samples/banner-and-footer-plugin/_expected/iife.js similarity index 100% rename from test/form/banner-and-footer-plugin/_expected/iife.js rename to test/form/samples/banner-and-footer-plugin/_expected/iife.js diff --git a/test/form/banner-and-footer-plugin/_expected/umd.js b/test/form/samples/banner-and-footer-plugin/_expected/umd.js similarity index 100% rename from test/form/banner-and-footer-plugin/_expected/umd.js rename to test/form/samples/banner-and-footer-plugin/_expected/umd.js diff --git a/test/form/banner-and-footer-plugin/main.js b/test/form/samples/banner-and-footer-plugin/main.js similarity index 100% rename from test/form/banner-and-footer-plugin/main.js rename to test/form/samples/banner-and-footer-plugin/main.js diff --git a/test/form/banner-and-footer/_config.js b/test/form/samples/banner-and-footer/_config.js similarity index 100% rename from test/form/banner-and-footer/_config.js rename to test/form/samples/banner-and-footer/_config.js diff --git a/test/form/banner-and-footer/_expected/amd.js b/test/form/samples/banner-and-footer/_expected/amd.js similarity index 100% rename from test/form/banner-and-footer/_expected/amd.js rename to test/form/samples/banner-and-footer/_expected/amd.js diff --git a/test/form/banner-and-footer/_expected/cjs.js b/test/form/samples/banner-and-footer/_expected/cjs.js similarity index 100% rename from test/form/banner-and-footer/_expected/cjs.js rename to test/form/samples/banner-and-footer/_expected/cjs.js diff --git a/test/form/banner-and-footer/_expected/es.js b/test/form/samples/banner-and-footer/_expected/es.js similarity index 100% rename from test/form/banner-and-footer/_expected/es.js rename to test/form/samples/banner-and-footer/_expected/es.js diff --git a/test/form/banner-and-footer/_expected/iife.js b/test/form/samples/banner-and-footer/_expected/iife.js similarity index 100% rename from test/form/banner-and-footer/_expected/iife.js rename to test/form/samples/banner-and-footer/_expected/iife.js diff --git a/test/form/banner-and-footer/_expected/umd.js b/test/form/samples/banner-and-footer/_expected/umd.js similarity index 100% rename from test/form/banner-and-footer/_expected/umd.js rename to test/form/samples/banner-and-footer/_expected/umd.js diff --git a/test/form/banner-and-footer/main.js b/test/form/samples/banner-and-footer/main.js similarity index 100% rename from test/form/banner-and-footer/main.js rename to test/form/samples/banner-and-footer/main.js diff --git a/test/form/block-comments/_config.js b/test/form/samples/block-comments/_config.js similarity index 100% rename from test/form/block-comments/_config.js rename to test/form/samples/block-comments/_config.js diff --git a/test/form/block-comments/_expected/amd.js b/test/form/samples/block-comments/_expected/amd.js similarity index 100% rename from test/form/block-comments/_expected/amd.js rename to test/form/samples/block-comments/_expected/amd.js diff --git a/test/form/block-comments/_expected/cjs.js b/test/form/samples/block-comments/_expected/cjs.js similarity index 100% rename from test/form/block-comments/_expected/cjs.js rename to test/form/samples/block-comments/_expected/cjs.js diff --git a/test/form/block-comments/_expected/es.js b/test/form/samples/block-comments/_expected/es.js similarity index 100% rename from test/form/block-comments/_expected/es.js rename to test/form/samples/block-comments/_expected/es.js diff --git a/test/form/block-comments/_expected/iife.js b/test/form/samples/block-comments/_expected/iife.js similarity index 100% rename from test/form/block-comments/_expected/iife.js rename to test/form/samples/block-comments/_expected/iife.js diff --git a/test/form/block-comments/_expected/umd.js b/test/form/samples/block-comments/_expected/umd.js similarity index 100% rename from test/form/block-comments/_expected/umd.js rename to test/form/samples/block-comments/_expected/umd.js diff --git a/test/form/block-comments/foo.js b/test/form/samples/block-comments/foo.js similarity index 100% rename from test/form/block-comments/foo.js rename to test/form/samples/block-comments/foo.js diff --git a/test/form/block-comments/main.js b/test/form/samples/block-comments/main.js similarity index 100% rename from test/form/block-comments/main.js rename to test/form/samples/block-comments/main.js diff --git a/test/form/body-less-for-loops/_config.js b/test/form/samples/body-less-for-loops/_config.js similarity index 100% rename from test/form/body-less-for-loops/_config.js rename to test/form/samples/body-less-for-loops/_config.js diff --git a/test/form/body-less-for-loops/_expected/amd.js b/test/form/samples/body-less-for-loops/_expected/amd.js similarity index 100% rename from test/form/body-less-for-loops/_expected/amd.js rename to test/form/samples/body-less-for-loops/_expected/amd.js diff --git a/test/form/body-less-for-loops/_expected/cjs.js b/test/form/samples/body-less-for-loops/_expected/cjs.js similarity index 100% rename from test/form/body-less-for-loops/_expected/cjs.js rename to test/form/samples/body-less-for-loops/_expected/cjs.js diff --git a/test/form/body-less-for-loops/_expected/es.js b/test/form/samples/body-less-for-loops/_expected/es.js similarity index 100% rename from test/form/body-less-for-loops/_expected/es.js rename to test/form/samples/body-less-for-loops/_expected/es.js diff --git a/test/form/body-less-for-loops/_expected/iife.js b/test/form/samples/body-less-for-loops/_expected/iife.js similarity index 100% rename from test/form/body-less-for-loops/_expected/iife.js rename to test/form/samples/body-less-for-loops/_expected/iife.js diff --git a/test/form/body-less-for-loops/_expected/umd.js b/test/form/samples/body-less-for-loops/_expected/umd.js similarity index 100% rename from test/form/body-less-for-loops/_expected/umd.js rename to test/form/samples/body-less-for-loops/_expected/umd.js diff --git a/test/form/body-less-for-loops/main.js b/test/form/samples/body-less-for-loops/main.js similarity index 100% rename from test/form/body-less-for-loops/main.js rename to test/form/samples/body-less-for-loops/main.js diff --git a/test/form/class-constructor-side-effect/_config.js b/test/form/samples/class-constructor-side-effect/_config.js similarity index 100% rename from test/form/class-constructor-side-effect/_config.js rename to test/form/samples/class-constructor-side-effect/_config.js diff --git a/test/form/class-constructor-side-effect/_expected/amd.js b/test/form/samples/class-constructor-side-effect/_expected/amd.js similarity index 100% rename from test/form/class-constructor-side-effect/_expected/amd.js rename to test/form/samples/class-constructor-side-effect/_expected/amd.js diff --git a/test/form/class-constructor-side-effect/_expected/cjs.js b/test/form/samples/class-constructor-side-effect/_expected/cjs.js similarity index 100% rename from test/form/class-constructor-side-effect/_expected/cjs.js rename to test/form/samples/class-constructor-side-effect/_expected/cjs.js diff --git a/test/form/class-constructor-side-effect/_expected/es.js b/test/form/samples/class-constructor-side-effect/_expected/es.js similarity index 100% rename from test/form/class-constructor-side-effect/_expected/es.js rename to test/form/samples/class-constructor-side-effect/_expected/es.js diff --git a/test/form/class-constructor-side-effect/_expected/iife.js b/test/form/samples/class-constructor-side-effect/_expected/iife.js similarity index 100% rename from test/form/class-constructor-side-effect/_expected/iife.js rename to test/form/samples/class-constructor-side-effect/_expected/iife.js diff --git a/test/form/class-constructor-side-effect/_expected/umd.js b/test/form/samples/class-constructor-side-effect/_expected/umd.js similarity index 100% rename from test/form/class-constructor-side-effect/_expected/umd.js rename to test/form/samples/class-constructor-side-effect/_expected/umd.js diff --git a/test/form/class-constructor-side-effect/main.js b/test/form/samples/class-constructor-side-effect/main.js similarity index 100% rename from test/form/class-constructor-side-effect/main.js rename to test/form/samples/class-constructor-side-effect/main.js diff --git a/test/form/comment-before-import/_config.js b/test/form/samples/comment-before-import/_config.js similarity index 100% rename from test/form/comment-before-import/_config.js rename to test/form/samples/comment-before-import/_config.js diff --git a/test/form/comment-before-import/_expected/amd.js b/test/form/samples/comment-before-import/_expected/amd.js similarity index 100% rename from test/form/comment-before-import/_expected/amd.js rename to test/form/samples/comment-before-import/_expected/amd.js diff --git a/test/form/comment-before-import/_expected/cjs.js b/test/form/samples/comment-before-import/_expected/cjs.js similarity index 100% rename from test/form/comment-before-import/_expected/cjs.js rename to test/form/samples/comment-before-import/_expected/cjs.js diff --git a/test/form/comment-before-import/_expected/es.js b/test/form/samples/comment-before-import/_expected/es.js similarity index 100% rename from test/form/comment-before-import/_expected/es.js rename to test/form/samples/comment-before-import/_expected/es.js diff --git a/test/form/comment-before-import/_expected/iife.js b/test/form/samples/comment-before-import/_expected/iife.js similarity index 100% rename from test/form/comment-before-import/_expected/iife.js rename to test/form/samples/comment-before-import/_expected/iife.js diff --git a/test/form/comment-before-import/_expected/umd.js b/test/form/samples/comment-before-import/_expected/umd.js similarity index 100% rename from test/form/comment-before-import/_expected/umd.js rename to test/form/samples/comment-before-import/_expected/umd.js diff --git a/test/form/comment-before-import/bar.js b/test/form/samples/comment-before-import/bar.js similarity index 100% rename from test/form/comment-before-import/bar.js rename to test/form/samples/comment-before-import/bar.js diff --git a/test/form/comment-before-import/foo.js b/test/form/samples/comment-before-import/foo.js similarity index 100% rename from test/form/comment-before-import/foo.js rename to test/form/samples/comment-before-import/foo.js diff --git a/test/form/comment-before-import/main.js b/test/form/samples/comment-before-import/main.js similarity index 100% rename from test/form/comment-before-import/main.js rename to test/form/samples/comment-before-import/main.js diff --git a/test/form/computed-properties/_config.js b/test/form/samples/computed-properties/_config.js similarity index 100% rename from test/form/computed-properties/_config.js rename to test/form/samples/computed-properties/_config.js diff --git a/test/form/computed-properties/_expected/amd.js b/test/form/samples/computed-properties/_expected/amd.js similarity index 100% rename from test/form/computed-properties/_expected/amd.js rename to test/form/samples/computed-properties/_expected/amd.js diff --git a/test/form/computed-properties/_expected/cjs.js b/test/form/samples/computed-properties/_expected/cjs.js similarity index 100% rename from test/form/computed-properties/_expected/cjs.js rename to test/form/samples/computed-properties/_expected/cjs.js diff --git a/test/form/computed-properties/_expected/es.js b/test/form/samples/computed-properties/_expected/es.js similarity index 100% rename from test/form/computed-properties/_expected/es.js rename to test/form/samples/computed-properties/_expected/es.js diff --git a/test/form/computed-properties/_expected/iife.js b/test/form/samples/computed-properties/_expected/iife.js similarity index 100% rename from test/form/computed-properties/_expected/iife.js rename to test/form/samples/computed-properties/_expected/iife.js diff --git a/test/form/computed-properties/_expected/umd.js b/test/form/samples/computed-properties/_expected/umd.js similarity index 100% rename from test/form/computed-properties/_expected/umd.js rename to test/form/samples/computed-properties/_expected/umd.js diff --git a/test/form/computed-properties/main.js b/test/form/samples/computed-properties/main.js similarity index 100% rename from test/form/computed-properties/main.js rename to test/form/samples/computed-properties/main.js diff --git a/test/form/conditional-put-parens-around-sequence/_config.js b/test/form/samples/conditional-put-parens-around-sequence/_config.js similarity index 100% rename from test/form/conditional-put-parens-around-sequence/_config.js rename to test/form/samples/conditional-put-parens-around-sequence/_config.js diff --git a/test/form/conditional-put-parens-around-sequence/_expected/amd.js b/test/form/samples/conditional-put-parens-around-sequence/_expected/amd.js similarity index 100% rename from test/form/conditional-put-parens-around-sequence/_expected/amd.js rename to test/form/samples/conditional-put-parens-around-sequence/_expected/amd.js diff --git a/test/form/conditional-put-parens-around-sequence/_expected/cjs.js b/test/form/samples/conditional-put-parens-around-sequence/_expected/cjs.js similarity index 100% rename from test/form/conditional-put-parens-around-sequence/_expected/cjs.js rename to test/form/samples/conditional-put-parens-around-sequence/_expected/cjs.js diff --git a/test/form/conditional-put-parens-around-sequence/_expected/es.js b/test/form/samples/conditional-put-parens-around-sequence/_expected/es.js similarity index 100% rename from test/form/conditional-put-parens-around-sequence/_expected/es.js rename to test/form/samples/conditional-put-parens-around-sequence/_expected/es.js diff --git a/test/form/conditional-put-parens-around-sequence/_expected/iife.js b/test/form/samples/conditional-put-parens-around-sequence/_expected/iife.js similarity index 100% rename from test/form/conditional-put-parens-around-sequence/_expected/iife.js rename to test/form/samples/conditional-put-parens-around-sequence/_expected/iife.js diff --git a/test/form/conditional-put-parens-around-sequence/_expected/umd.js b/test/form/samples/conditional-put-parens-around-sequence/_expected/umd.js similarity index 100% rename from test/form/conditional-put-parens-around-sequence/_expected/umd.js rename to test/form/samples/conditional-put-parens-around-sequence/_expected/umd.js diff --git a/test/form/conditional-put-parens-around-sequence/main.js b/test/form/samples/conditional-put-parens-around-sequence/main.js similarity index 100% rename from test/form/conditional-put-parens-around-sequence/main.js rename to test/form/samples/conditional-put-parens-around-sequence/main.js diff --git a/test/form/conflicting-imports/_config.js b/test/form/samples/conflicting-imports/_config.js similarity index 100% rename from test/form/conflicting-imports/_config.js rename to test/form/samples/conflicting-imports/_config.js diff --git a/test/form/conflicting-imports/_expected/amd.js b/test/form/samples/conflicting-imports/_expected/amd.js similarity index 100% rename from test/form/conflicting-imports/_expected/amd.js rename to test/form/samples/conflicting-imports/_expected/amd.js diff --git a/test/form/conflicting-imports/_expected/cjs.js b/test/form/samples/conflicting-imports/_expected/cjs.js similarity index 100% rename from test/form/conflicting-imports/_expected/cjs.js rename to test/form/samples/conflicting-imports/_expected/cjs.js diff --git a/test/form/conflicting-imports/_expected/es.js b/test/form/samples/conflicting-imports/_expected/es.js similarity index 100% rename from test/form/conflicting-imports/_expected/es.js rename to test/form/samples/conflicting-imports/_expected/es.js diff --git a/test/form/conflicting-imports/_expected/iife.js b/test/form/samples/conflicting-imports/_expected/iife.js similarity index 100% rename from test/form/conflicting-imports/_expected/iife.js rename to test/form/samples/conflicting-imports/_expected/iife.js diff --git a/test/form/conflicting-imports/_expected/umd.js b/test/form/samples/conflicting-imports/_expected/umd.js similarity index 100% rename from test/form/conflicting-imports/_expected/umd.js rename to test/form/samples/conflicting-imports/_expected/umd.js diff --git a/test/form/conflicting-imports/main.js b/test/form/samples/conflicting-imports/main.js similarity index 100% rename from test/form/conflicting-imports/main.js rename to test/form/samples/conflicting-imports/main.js diff --git a/test/form/conflicting-imports/other.js b/test/form/samples/conflicting-imports/other.js similarity index 100% rename from test/form/conflicting-imports/other.js rename to test/form/samples/conflicting-imports/other.js diff --git a/test/form/custom-context/_config.js b/test/form/samples/custom-context/_config.js similarity index 100% rename from test/form/custom-context/_config.js rename to test/form/samples/custom-context/_config.js diff --git a/test/form/custom-context/_expected/amd.js b/test/form/samples/custom-context/_expected/amd.js similarity index 100% rename from test/form/custom-context/_expected/amd.js rename to test/form/samples/custom-context/_expected/amd.js diff --git a/test/form/custom-context/_expected/cjs.js b/test/form/samples/custom-context/_expected/cjs.js similarity index 100% rename from test/form/custom-context/_expected/cjs.js rename to test/form/samples/custom-context/_expected/cjs.js diff --git a/test/form/custom-context/_expected/es.js b/test/form/samples/custom-context/_expected/es.js similarity index 100% rename from test/form/custom-context/_expected/es.js rename to test/form/samples/custom-context/_expected/es.js diff --git a/test/form/custom-context/_expected/iife.js b/test/form/samples/custom-context/_expected/iife.js similarity index 100% rename from test/form/custom-context/_expected/iife.js rename to test/form/samples/custom-context/_expected/iife.js diff --git a/test/form/custom-context/_expected/umd.js b/test/form/samples/custom-context/_expected/umd.js similarity index 100% rename from test/form/custom-context/_expected/umd.js rename to test/form/samples/custom-context/_expected/umd.js diff --git a/test/form/custom-context/main.js b/test/form/samples/custom-context/main.js similarity index 100% rename from test/form/custom-context/main.js rename to test/form/samples/custom-context/main.js diff --git a/test/form/custom-module-context-function/_config.js b/test/form/samples/custom-module-context-function/_config.js similarity index 100% rename from test/form/custom-module-context-function/_config.js rename to test/form/samples/custom-module-context-function/_config.js diff --git a/test/form/custom-module-context-function/_expected/amd.js b/test/form/samples/custom-module-context-function/_expected/amd.js similarity index 100% rename from test/form/custom-module-context-function/_expected/amd.js rename to test/form/samples/custom-module-context-function/_expected/amd.js diff --git a/test/form/custom-module-context-function/_expected/cjs.js b/test/form/samples/custom-module-context-function/_expected/cjs.js similarity index 100% rename from test/form/custom-module-context-function/_expected/cjs.js rename to test/form/samples/custom-module-context-function/_expected/cjs.js diff --git a/test/form/custom-module-context-function/_expected/es.js b/test/form/samples/custom-module-context-function/_expected/es.js similarity index 100% rename from test/form/custom-module-context-function/_expected/es.js rename to test/form/samples/custom-module-context-function/_expected/es.js diff --git a/test/form/custom-module-context-function/_expected/iife.js b/test/form/samples/custom-module-context-function/_expected/iife.js similarity index 100% rename from test/form/custom-module-context-function/_expected/iife.js rename to test/form/samples/custom-module-context-function/_expected/iife.js diff --git a/test/form/custom-module-context-function/_expected/umd.js b/test/form/samples/custom-module-context-function/_expected/umd.js similarity index 100% rename from test/form/custom-module-context-function/_expected/umd.js rename to test/form/samples/custom-module-context-function/_expected/umd.js diff --git a/test/form/custom-module-context-function/foo.js b/test/form/samples/custom-module-context-function/foo.js similarity index 100% rename from test/form/custom-module-context-function/foo.js rename to test/form/samples/custom-module-context-function/foo.js diff --git a/test/form/custom-module-context-function/main.js b/test/form/samples/custom-module-context-function/main.js similarity index 100% rename from test/form/custom-module-context-function/main.js rename to test/form/samples/custom-module-context-function/main.js diff --git a/test/form/custom-module-context/_config.js b/test/form/samples/custom-module-context/_config.js similarity index 100% rename from test/form/custom-module-context/_config.js rename to test/form/samples/custom-module-context/_config.js diff --git a/test/form/custom-module-context/_expected/amd.js b/test/form/samples/custom-module-context/_expected/amd.js similarity index 100% rename from test/form/custom-module-context/_expected/amd.js rename to test/form/samples/custom-module-context/_expected/amd.js diff --git a/test/form/custom-module-context/_expected/cjs.js b/test/form/samples/custom-module-context/_expected/cjs.js similarity index 100% rename from test/form/custom-module-context/_expected/cjs.js rename to test/form/samples/custom-module-context/_expected/cjs.js diff --git a/test/form/custom-module-context/_expected/es.js b/test/form/samples/custom-module-context/_expected/es.js similarity index 100% rename from test/form/custom-module-context/_expected/es.js rename to test/form/samples/custom-module-context/_expected/es.js diff --git a/test/form/custom-module-context/_expected/iife.js b/test/form/samples/custom-module-context/_expected/iife.js similarity index 100% rename from test/form/custom-module-context/_expected/iife.js rename to test/form/samples/custom-module-context/_expected/iife.js diff --git a/test/form/custom-module-context/_expected/umd.js b/test/form/samples/custom-module-context/_expected/umd.js similarity index 100% rename from test/form/custom-module-context/_expected/umd.js rename to test/form/samples/custom-module-context/_expected/umd.js diff --git a/test/form/custom-module-context/foo.js b/test/form/samples/custom-module-context/foo.js similarity index 100% rename from test/form/custom-module-context/foo.js rename to test/form/samples/custom-module-context/foo.js diff --git a/test/form/custom-module-context/main.js b/test/form/samples/custom-module-context/main.js similarity index 100% rename from test/form/custom-module-context/main.js rename to test/form/samples/custom-module-context/main.js diff --git a/test/form/dedupes-external-imports/_config.js b/test/form/samples/dedupes-external-imports/_config.js similarity index 100% rename from test/form/dedupes-external-imports/_config.js rename to test/form/samples/dedupes-external-imports/_config.js diff --git a/test/form/dedupes-external-imports/_expected/amd.js b/test/form/samples/dedupes-external-imports/_expected/amd.js similarity index 100% rename from test/form/dedupes-external-imports/_expected/amd.js rename to test/form/samples/dedupes-external-imports/_expected/amd.js diff --git a/test/form/dedupes-external-imports/_expected/cjs.js b/test/form/samples/dedupes-external-imports/_expected/cjs.js similarity index 100% rename from test/form/dedupes-external-imports/_expected/cjs.js rename to test/form/samples/dedupes-external-imports/_expected/cjs.js diff --git a/test/form/dedupes-external-imports/_expected/es.js b/test/form/samples/dedupes-external-imports/_expected/es.js similarity index 100% rename from test/form/dedupes-external-imports/_expected/es.js rename to test/form/samples/dedupes-external-imports/_expected/es.js diff --git a/test/form/dedupes-external-imports/_expected/iife.js b/test/form/samples/dedupes-external-imports/_expected/iife.js similarity index 100% rename from test/form/dedupes-external-imports/_expected/iife.js rename to test/form/samples/dedupes-external-imports/_expected/iife.js diff --git a/test/form/dedupes-external-imports/_expected/umd.js b/test/form/samples/dedupes-external-imports/_expected/umd.js similarity index 100% rename from test/form/dedupes-external-imports/_expected/umd.js rename to test/form/samples/dedupes-external-imports/_expected/umd.js diff --git a/test/form/dedupes-external-imports/bar.js b/test/form/samples/dedupes-external-imports/bar.js similarity index 100% rename from test/form/dedupes-external-imports/bar.js rename to test/form/samples/dedupes-external-imports/bar.js diff --git a/test/form/dedupes-external-imports/baz.js b/test/form/samples/dedupes-external-imports/baz.js similarity index 100% rename from test/form/dedupes-external-imports/baz.js rename to test/form/samples/dedupes-external-imports/baz.js diff --git a/test/form/dedupes-external-imports/foo.js b/test/form/samples/dedupes-external-imports/foo.js similarity index 100% rename from test/form/dedupes-external-imports/foo.js rename to test/form/samples/dedupes-external-imports/foo.js diff --git a/test/form/dedupes-external-imports/main.js b/test/form/samples/dedupes-external-imports/main.js similarity index 100% rename from test/form/dedupes-external-imports/main.js rename to test/form/samples/dedupes-external-imports/main.js diff --git a/test/form/define-replacement/_config.js b/test/form/samples/define-replacement/_config.js similarity index 100% rename from test/form/define-replacement/_config.js rename to test/form/samples/define-replacement/_config.js diff --git a/test/form/define-replacement/_expected/amd.js b/test/form/samples/define-replacement/_expected/amd.js similarity index 100% rename from test/form/define-replacement/_expected/amd.js rename to test/form/samples/define-replacement/_expected/amd.js diff --git a/test/form/define-replacement/_expected/cjs.js b/test/form/samples/define-replacement/_expected/cjs.js similarity index 100% rename from test/form/define-replacement/_expected/cjs.js rename to test/form/samples/define-replacement/_expected/cjs.js diff --git a/test/form/define-replacement/_expected/es.js b/test/form/samples/define-replacement/_expected/es.js similarity index 100% rename from test/form/define-replacement/_expected/es.js rename to test/form/samples/define-replacement/_expected/es.js diff --git a/test/form/define-replacement/_expected/iife.js b/test/form/samples/define-replacement/_expected/iife.js similarity index 100% rename from test/form/define-replacement/_expected/iife.js rename to test/form/samples/define-replacement/_expected/iife.js diff --git a/test/form/define-replacement/_expected/umd.js b/test/form/samples/define-replacement/_expected/umd.js similarity index 100% rename from test/form/define-replacement/_expected/umd.js rename to test/form/samples/define-replacement/_expected/umd.js diff --git a/test/form/define-replacement/a.js b/test/form/samples/define-replacement/a.js similarity index 100% rename from test/form/define-replacement/a.js rename to test/form/samples/define-replacement/a.js diff --git a/test/form/define-replacement/main.js b/test/form/samples/define-replacement/main.js similarity index 100% rename from test/form/define-replacement/main.js rename to test/form/samples/define-replacement/main.js diff --git a/test/form/duplicated-var-declarations/_config.js b/test/form/samples/duplicated-var-declarations/_config.js similarity index 100% rename from test/form/duplicated-var-declarations/_config.js rename to test/form/samples/duplicated-var-declarations/_config.js diff --git a/test/form/duplicated-var-declarations/_expected/amd.js b/test/form/samples/duplicated-var-declarations/_expected/amd.js similarity index 100% rename from test/form/duplicated-var-declarations/_expected/amd.js rename to test/form/samples/duplicated-var-declarations/_expected/amd.js diff --git a/test/form/duplicated-var-declarations/_expected/cjs.js b/test/form/samples/duplicated-var-declarations/_expected/cjs.js similarity index 100% rename from test/form/duplicated-var-declarations/_expected/cjs.js rename to test/form/samples/duplicated-var-declarations/_expected/cjs.js diff --git a/test/form/duplicated-var-declarations/_expected/es.js b/test/form/samples/duplicated-var-declarations/_expected/es.js similarity index 100% rename from test/form/duplicated-var-declarations/_expected/es.js rename to test/form/samples/duplicated-var-declarations/_expected/es.js diff --git a/test/form/duplicated-var-declarations/_expected/iife.js b/test/form/samples/duplicated-var-declarations/_expected/iife.js similarity index 100% rename from test/form/duplicated-var-declarations/_expected/iife.js rename to test/form/samples/duplicated-var-declarations/_expected/iife.js diff --git a/test/form/duplicated-var-declarations/_expected/umd.js b/test/form/samples/duplicated-var-declarations/_expected/umd.js similarity index 100% rename from test/form/duplicated-var-declarations/_expected/umd.js rename to test/form/samples/duplicated-var-declarations/_expected/umd.js diff --git a/test/form/duplicated-var-declarations/main.js b/test/form/samples/duplicated-var-declarations/main.js similarity index 100% rename from test/form/duplicated-var-declarations/main.js rename to test/form/samples/duplicated-var-declarations/main.js diff --git a/test/form/effect-in-for-of-loop-in-functions/_config.js b/test/form/samples/effect-in-for-of-loop-in-functions/_config.js similarity index 100% rename from test/form/effect-in-for-of-loop-in-functions/_config.js rename to test/form/samples/effect-in-for-of-loop-in-functions/_config.js diff --git a/test/form/effect-in-for-of-loop-in-functions/_expected/amd.js b/test/form/samples/effect-in-for-of-loop-in-functions/_expected/amd.js similarity index 100% rename from test/form/effect-in-for-of-loop-in-functions/_expected/amd.js rename to test/form/samples/effect-in-for-of-loop-in-functions/_expected/amd.js diff --git a/test/form/effect-in-for-of-loop-in-functions/_expected/cjs.js b/test/form/samples/effect-in-for-of-loop-in-functions/_expected/cjs.js similarity index 100% rename from test/form/effect-in-for-of-loop-in-functions/_expected/cjs.js rename to test/form/samples/effect-in-for-of-loop-in-functions/_expected/cjs.js diff --git a/test/form/effect-in-for-of-loop-in-functions/_expected/es.js b/test/form/samples/effect-in-for-of-loop-in-functions/_expected/es.js similarity index 100% rename from test/form/effect-in-for-of-loop-in-functions/_expected/es.js rename to test/form/samples/effect-in-for-of-loop-in-functions/_expected/es.js diff --git a/test/form/effect-in-for-of-loop-in-functions/_expected/iife.js b/test/form/samples/effect-in-for-of-loop-in-functions/_expected/iife.js similarity index 100% rename from test/form/effect-in-for-of-loop-in-functions/_expected/iife.js rename to test/form/samples/effect-in-for-of-loop-in-functions/_expected/iife.js diff --git a/test/form/effect-in-for-of-loop-in-functions/_expected/umd.js b/test/form/samples/effect-in-for-of-loop-in-functions/_expected/umd.js similarity index 100% rename from test/form/effect-in-for-of-loop-in-functions/_expected/umd.js rename to test/form/samples/effect-in-for-of-loop-in-functions/_expected/umd.js diff --git a/test/form/effect-in-for-of-loop-in-functions/main.js b/test/form/samples/effect-in-for-of-loop-in-functions/main.js similarity index 100% rename from test/form/effect-in-for-of-loop-in-functions/main.js rename to test/form/samples/effect-in-for-of-loop-in-functions/main.js diff --git a/test/form/effect-in-for-of-loop/_config.js b/test/form/samples/effect-in-for-of-loop/_config.js similarity index 100% rename from test/form/effect-in-for-of-loop/_config.js rename to test/form/samples/effect-in-for-of-loop/_config.js diff --git a/test/form/effect-in-for-of-loop/_expected/amd.js b/test/form/samples/effect-in-for-of-loop/_expected/amd.js similarity index 100% rename from test/form/effect-in-for-of-loop/_expected/amd.js rename to test/form/samples/effect-in-for-of-loop/_expected/amd.js diff --git a/test/form/effect-in-for-of-loop/_expected/cjs.js b/test/form/samples/effect-in-for-of-loop/_expected/cjs.js similarity index 100% rename from test/form/effect-in-for-of-loop/_expected/cjs.js rename to test/form/samples/effect-in-for-of-loop/_expected/cjs.js diff --git a/test/form/effect-in-for-of-loop/_expected/es.js b/test/form/samples/effect-in-for-of-loop/_expected/es.js similarity index 100% rename from test/form/effect-in-for-of-loop/_expected/es.js rename to test/form/samples/effect-in-for-of-loop/_expected/es.js diff --git a/test/form/effect-in-for-of-loop/_expected/iife.js b/test/form/samples/effect-in-for-of-loop/_expected/iife.js similarity index 100% rename from test/form/effect-in-for-of-loop/_expected/iife.js rename to test/form/samples/effect-in-for-of-loop/_expected/iife.js diff --git a/test/form/effect-in-for-of-loop/_expected/umd.js b/test/form/samples/effect-in-for-of-loop/_expected/umd.js similarity index 100% rename from test/form/effect-in-for-of-loop/_expected/umd.js rename to test/form/samples/effect-in-for-of-loop/_expected/umd.js diff --git a/test/form/effect-in-for-of-loop/main.js b/test/form/samples/effect-in-for-of-loop/main.js similarity index 100% rename from test/form/effect-in-for-of-loop/main.js rename to test/form/samples/effect-in-for-of-loop/main.js diff --git a/test/form/empty-block-statement/_config.js b/test/form/samples/empty-block-statement/_config.js similarity index 100% rename from test/form/empty-block-statement/_config.js rename to test/form/samples/empty-block-statement/_config.js diff --git a/test/form/empty-block-statement/_expected/amd.js b/test/form/samples/empty-block-statement/_expected/amd.js similarity index 100% rename from test/form/empty-block-statement/_expected/amd.js rename to test/form/samples/empty-block-statement/_expected/amd.js diff --git a/test/form/empty-block-statement/_expected/cjs.js b/test/form/samples/empty-block-statement/_expected/cjs.js similarity index 100% rename from test/form/empty-block-statement/_expected/cjs.js rename to test/form/samples/empty-block-statement/_expected/cjs.js diff --git a/test/form/empty-block-statement/_expected/es.js b/test/form/samples/empty-block-statement/_expected/es.js similarity index 100% rename from test/form/empty-block-statement/_expected/es.js rename to test/form/samples/empty-block-statement/_expected/es.js diff --git a/test/form/empty-block-statement/_expected/iife.js b/test/form/samples/empty-block-statement/_expected/iife.js similarity index 100% rename from test/form/empty-block-statement/_expected/iife.js rename to test/form/samples/empty-block-statement/_expected/iife.js diff --git a/test/form/empty-block-statement/_expected/umd.js b/test/form/samples/empty-block-statement/_expected/umd.js similarity index 100% rename from test/form/empty-block-statement/_expected/umd.js rename to test/form/samples/empty-block-statement/_expected/umd.js diff --git a/test/form/empty-block-statement/main.js b/test/form/samples/empty-block-statement/main.js similarity index 100% rename from test/form/empty-block-statement/main.js rename to test/form/samples/empty-block-statement/main.js diff --git a/test/form/empty-do-while-statement/_config.js b/test/form/samples/empty-do-while-statement/_config.js similarity index 100% rename from test/form/empty-do-while-statement/_config.js rename to test/form/samples/empty-do-while-statement/_config.js diff --git a/test/form/empty-do-while-statement/_expected/amd.js b/test/form/samples/empty-do-while-statement/_expected/amd.js similarity index 100% rename from test/form/empty-do-while-statement/_expected/amd.js rename to test/form/samples/empty-do-while-statement/_expected/amd.js diff --git a/test/form/empty-do-while-statement/_expected/cjs.js b/test/form/samples/empty-do-while-statement/_expected/cjs.js similarity index 100% rename from test/form/empty-do-while-statement/_expected/cjs.js rename to test/form/samples/empty-do-while-statement/_expected/cjs.js diff --git a/test/form/empty-do-while-statement/_expected/es.js b/test/form/samples/empty-do-while-statement/_expected/es.js similarity index 100% rename from test/form/empty-do-while-statement/_expected/es.js rename to test/form/samples/empty-do-while-statement/_expected/es.js diff --git a/test/form/empty-do-while-statement/_expected/iife.js b/test/form/samples/empty-do-while-statement/_expected/iife.js similarity index 100% rename from test/form/empty-do-while-statement/_expected/iife.js rename to test/form/samples/empty-do-while-statement/_expected/iife.js diff --git a/test/form/empty-do-while-statement/_expected/umd.js b/test/form/samples/empty-do-while-statement/_expected/umd.js similarity index 100% rename from test/form/empty-do-while-statement/_expected/umd.js rename to test/form/samples/empty-do-while-statement/_expected/umd.js diff --git a/test/form/empty-do-while-statement/main.js b/test/form/samples/empty-do-while-statement/main.js similarity index 100% rename from test/form/empty-do-while-statement/main.js rename to test/form/samples/empty-do-while-statement/main.js diff --git a/test/form/empty-for-in-statement/_config.js b/test/form/samples/empty-for-in-statement/_config.js similarity index 100% rename from test/form/empty-for-in-statement/_config.js rename to test/form/samples/empty-for-in-statement/_config.js diff --git a/test/form/empty-for-in-statement/_expected/amd.js b/test/form/samples/empty-for-in-statement/_expected/amd.js similarity index 100% rename from test/form/empty-for-in-statement/_expected/amd.js rename to test/form/samples/empty-for-in-statement/_expected/amd.js diff --git a/test/form/empty-for-in-statement/_expected/cjs.js b/test/form/samples/empty-for-in-statement/_expected/cjs.js similarity index 100% rename from test/form/empty-for-in-statement/_expected/cjs.js rename to test/form/samples/empty-for-in-statement/_expected/cjs.js diff --git a/test/form/empty-for-in-statement/_expected/es.js b/test/form/samples/empty-for-in-statement/_expected/es.js similarity index 100% rename from test/form/empty-for-in-statement/_expected/es.js rename to test/form/samples/empty-for-in-statement/_expected/es.js diff --git a/test/form/empty-for-in-statement/_expected/iife.js b/test/form/samples/empty-for-in-statement/_expected/iife.js similarity index 100% rename from test/form/empty-for-in-statement/_expected/iife.js rename to test/form/samples/empty-for-in-statement/_expected/iife.js diff --git a/test/form/empty-for-in-statement/_expected/umd.js b/test/form/samples/empty-for-in-statement/_expected/umd.js similarity index 100% rename from test/form/empty-for-in-statement/_expected/umd.js rename to test/form/samples/empty-for-in-statement/_expected/umd.js diff --git a/test/form/empty-for-in-statement/main.js b/test/form/samples/empty-for-in-statement/main.js similarity index 100% rename from test/form/empty-for-in-statement/main.js rename to test/form/samples/empty-for-in-statement/main.js diff --git a/test/form/empty-for-of-statement/_config.js b/test/form/samples/empty-for-of-statement/_config.js similarity index 100% rename from test/form/empty-for-of-statement/_config.js rename to test/form/samples/empty-for-of-statement/_config.js diff --git a/test/form/empty-for-of-statement/_expected/amd.js b/test/form/samples/empty-for-of-statement/_expected/amd.js similarity index 100% rename from test/form/empty-for-of-statement/_expected/amd.js rename to test/form/samples/empty-for-of-statement/_expected/amd.js diff --git a/test/form/empty-for-of-statement/_expected/cjs.js b/test/form/samples/empty-for-of-statement/_expected/cjs.js similarity index 100% rename from test/form/empty-for-of-statement/_expected/cjs.js rename to test/form/samples/empty-for-of-statement/_expected/cjs.js diff --git a/test/form/empty-for-of-statement/_expected/es.js b/test/form/samples/empty-for-of-statement/_expected/es.js similarity index 100% rename from test/form/empty-for-of-statement/_expected/es.js rename to test/form/samples/empty-for-of-statement/_expected/es.js diff --git a/test/form/empty-for-of-statement/_expected/iife.js b/test/form/samples/empty-for-of-statement/_expected/iife.js similarity index 100% rename from test/form/empty-for-of-statement/_expected/iife.js rename to test/form/samples/empty-for-of-statement/_expected/iife.js diff --git a/test/form/empty-for-of-statement/_expected/umd.js b/test/form/samples/empty-for-of-statement/_expected/umd.js similarity index 100% rename from test/form/empty-for-of-statement/_expected/umd.js rename to test/form/samples/empty-for-of-statement/_expected/umd.js diff --git a/test/form/empty-for-of-statement/main.js b/test/form/samples/empty-for-of-statement/main.js similarity index 100% rename from test/form/empty-for-of-statement/main.js rename to test/form/samples/empty-for-of-statement/main.js diff --git a/test/form/empty-for-statement/_config.js b/test/form/samples/empty-for-statement/_config.js similarity index 100% rename from test/form/empty-for-statement/_config.js rename to test/form/samples/empty-for-statement/_config.js diff --git a/test/form/empty-for-statement/_expected/amd.js b/test/form/samples/empty-for-statement/_expected/amd.js similarity index 100% rename from test/form/empty-for-statement/_expected/amd.js rename to test/form/samples/empty-for-statement/_expected/amd.js diff --git a/test/form/empty-for-statement/_expected/cjs.js b/test/form/samples/empty-for-statement/_expected/cjs.js similarity index 100% rename from test/form/empty-for-statement/_expected/cjs.js rename to test/form/samples/empty-for-statement/_expected/cjs.js diff --git a/test/form/empty-for-statement/_expected/es.js b/test/form/samples/empty-for-statement/_expected/es.js similarity index 100% rename from test/form/empty-for-statement/_expected/es.js rename to test/form/samples/empty-for-statement/_expected/es.js diff --git a/test/form/empty-for-statement/_expected/iife.js b/test/form/samples/empty-for-statement/_expected/iife.js similarity index 100% rename from test/form/empty-for-statement/_expected/iife.js rename to test/form/samples/empty-for-statement/_expected/iife.js diff --git a/test/form/empty-for-statement/_expected/umd.js b/test/form/samples/empty-for-statement/_expected/umd.js similarity index 100% rename from test/form/empty-for-statement/_expected/umd.js rename to test/form/samples/empty-for-statement/_expected/umd.js diff --git a/test/form/empty-for-statement/main.js b/test/form/samples/empty-for-statement/main.js similarity index 100% rename from test/form/empty-for-statement/main.js rename to test/form/samples/empty-for-statement/main.js diff --git a/test/form/empty-if-statement/_config.js b/test/form/samples/empty-if-statement/_config.js similarity index 100% rename from test/form/empty-if-statement/_config.js rename to test/form/samples/empty-if-statement/_config.js diff --git a/test/form/empty-if-statement/_expected/amd.js b/test/form/samples/empty-if-statement/_expected/amd.js similarity index 100% rename from test/form/empty-if-statement/_expected/amd.js rename to test/form/samples/empty-if-statement/_expected/amd.js diff --git a/test/form/empty-if-statement/_expected/cjs.js b/test/form/samples/empty-if-statement/_expected/cjs.js similarity index 100% rename from test/form/empty-if-statement/_expected/cjs.js rename to test/form/samples/empty-if-statement/_expected/cjs.js diff --git a/test/form/empty-if-statement/_expected/es.js b/test/form/samples/empty-if-statement/_expected/es.js similarity index 100% rename from test/form/empty-if-statement/_expected/es.js rename to test/form/samples/empty-if-statement/_expected/es.js diff --git a/test/form/empty-if-statement/_expected/iife.js b/test/form/samples/empty-if-statement/_expected/iife.js similarity index 100% rename from test/form/empty-if-statement/_expected/iife.js rename to test/form/samples/empty-if-statement/_expected/iife.js diff --git a/test/form/empty-if-statement/_expected/umd.js b/test/form/samples/empty-if-statement/_expected/umd.js similarity index 100% rename from test/form/empty-if-statement/_expected/umd.js rename to test/form/samples/empty-if-statement/_expected/umd.js diff --git a/test/form/empty-if-statement/main.js b/test/form/samples/empty-if-statement/main.js similarity index 100% rename from test/form/empty-if-statement/main.js rename to test/form/samples/empty-if-statement/main.js diff --git a/test/form/empty-statement-consequent/_config.js b/test/form/samples/empty-statement-consequent/_config.js similarity index 100% rename from test/form/empty-statement-consequent/_config.js rename to test/form/samples/empty-statement-consequent/_config.js diff --git a/test/form/empty-statement-consequent/_expected/amd.js b/test/form/samples/empty-statement-consequent/_expected/amd.js similarity index 100% rename from test/form/empty-statement-consequent/_expected/amd.js rename to test/form/samples/empty-statement-consequent/_expected/amd.js diff --git a/test/form/empty-statement-consequent/_expected/cjs.js b/test/form/samples/empty-statement-consequent/_expected/cjs.js similarity index 100% rename from test/form/empty-statement-consequent/_expected/cjs.js rename to test/form/samples/empty-statement-consequent/_expected/cjs.js diff --git a/test/form/empty-statement-consequent/_expected/es.js b/test/form/samples/empty-statement-consequent/_expected/es.js similarity index 100% rename from test/form/empty-statement-consequent/_expected/es.js rename to test/form/samples/empty-statement-consequent/_expected/es.js diff --git a/test/form/empty-statement-consequent/_expected/iife.js b/test/form/samples/empty-statement-consequent/_expected/iife.js similarity index 100% rename from test/form/empty-statement-consequent/_expected/iife.js rename to test/form/samples/empty-statement-consequent/_expected/iife.js diff --git a/test/form/empty-statement-consequent/_expected/umd.js b/test/form/samples/empty-statement-consequent/_expected/umd.js similarity index 100% rename from test/form/empty-statement-consequent/_expected/umd.js rename to test/form/samples/empty-statement-consequent/_expected/umd.js diff --git a/test/form/empty-statement-consequent/main.js b/test/form/samples/empty-statement-consequent/main.js similarity index 100% rename from test/form/empty-statement-consequent/main.js rename to test/form/samples/empty-statement-consequent/main.js diff --git a/test/form/empty-statement/_config.js b/test/form/samples/empty-statement/_config.js similarity index 100% rename from test/form/empty-statement/_config.js rename to test/form/samples/empty-statement/_config.js diff --git a/test/form/empty-statement/_expected/amd.js b/test/form/samples/empty-statement/_expected/amd.js similarity index 100% rename from test/form/empty-statement/_expected/amd.js rename to test/form/samples/empty-statement/_expected/amd.js diff --git a/test/form/empty-statement/_expected/cjs.js b/test/form/samples/empty-statement/_expected/cjs.js similarity index 100% rename from test/form/empty-statement/_expected/cjs.js rename to test/form/samples/empty-statement/_expected/cjs.js diff --git a/test/form/empty-statement/_expected/es.js b/test/form/samples/empty-statement/_expected/es.js similarity index 100% rename from test/form/empty-statement/_expected/es.js rename to test/form/samples/empty-statement/_expected/es.js diff --git a/test/form/empty-statement/_expected/iife.js b/test/form/samples/empty-statement/_expected/iife.js similarity index 100% rename from test/form/empty-statement/_expected/iife.js rename to test/form/samples/empty-statement/_expected/iife.js diff --git a/test/form/empty-statement/_expected/umd.js b/test/form/samples/empty-statement/_expected/umd.js similarity index 100% rename from test/form/empty-statement/_expected/umd.js rename to test/form/samples/empty-statement/_expected/umd.js diff --git a/test/form/empty-statement/main.js b/test/form/samples/empty-statement/main.js similarity index 100% rename from test/form/empty-statement/main.js rename to test/form/samples/empty-statement/main.js diff --git a/test/form/empty-switch-statement/_config.js b/test/form/samples/empty-switch-statement/_config.js similarity index 100% rename from test/form/empty-switch-statement/_config.js rename to test/form/samples/empty-switch-statement/_config.js diff --git a/test/form/empty-switch-statement/_expected/amd.js b/test/form/samples/empty-switch-statement/_expected/amd.js similarity index 100% rename from test/form/empty-switch-statement/_expected/amd.js rename to test/form/samples/empty-switch-statement/_expected/amd.js diff --git a/test/form/empty-switch-statement/_expected/cjs.js b/test/form/samples/empty-switch-statement/_expected/cjs.js similarity index 100% rename from test/form/empty-switch-statement/_expected/cjs.js rename to test/form/samples/empty-switch-statement/_expected/cjs.js diff --git a/test/form/empty-switch-statement/_expected/es.js b/test/form/samples/empty-switch-statement/_expected/es.js similarity index 100% rename from test/form/empty-switch-statement/_expected/es.js rename to test/form/samples/empty-switch-statement/_expected/es.js diff --git a/test/form/empty-switch-statement/_expected/iife.js b/test/form/samples/empty-switch-statement/_expected/iife.js similarity index 100% rename from test/form/empty-switch-statement/_expected/iife.js rename to test/form/samples/empty-switch-statement/_expected/iife.js diff --git a/test/form/empty-switch-statement/_expected/umd.js b/test/form/samples/empty-switch-statement/_expected/umd.js similarity index 100% rename from test/form/empty-switch-statement/_expected/umd.js rename to test/form/samples/empty-switch-statement/_expected/umd.js diff --git a/test/form/empty-switch-statement/main.js b/test/form/samples/empty-switch-statement/main.js similarity index 100% rename from test/form/empty-switch-statement/main.js rename to test/form/samples/empty-switch-statement/main.js diff --git a/test/form/empty-try-catch-statement/_config.js b/test/form/samples/empty-try-catch-statement/_config.js similarity index 100% rename from test/form/empty-try-catch-statement/_config.js rename to test/form/samples/empty-try-catch-statement/_config.js diff --git a/test/form/empty-try-catch-statement/_expected/amd.js b/test/form/samples/empty-try-catch-statement/_expected/amd.js similarity index 100% rename from test/form/empty-try-catch-statement/_expected/amd.js rename to test/form/samples/empty-try-catch-statement/_expected/amd.js diff --git a/test/form/empty-try-catch-statement/_expected/cjs.js b/test/form/samples/empty-try-catch-statement/_expected/cjs.js similarity index 100% rename from test/form/empty-try-catch-statement/_expected/cjs.js rename to test/form/samples/empty-try-catch-statement/_expected/cjs.js diff --git a/test/form/empty-try-catch-statement/_expected/es.js b/test/form/samples/empty-try-catch-statement/_expected/es.js similarity index 100% rename from test/form/empty-try-catch-statement/_expected/es.js rename to test/form/samples/empty-try-catch-statement/_expected/es.js diff --git a/test/form/empty-try-catch-statement/_expected/iife.js b/test/form/samples/empty-try-catch-statement/_expected/iife.js similarity index 100% rename from test/form/empty-try-catch-statement/_expected/iife.js rename to test/form/samples/empty-try-catch-statement/_expected/iife.js diff --git a/test/form/empty-try-catch-statement/_expected/umd.js b/test/form/samples/empty-try-catch-statement/_expected/umd.js similarity index 100% rename from test/form/empty-try-catch-statement/_expected/umd.js rename to test/form/samples/empty-try-catch-statement/_expected/umd.js diff --git a/test/form/empty-try-catch-statement/main.js b/test/form/samples/empty-try-catch-statement/main.js similarity index 100% rename from test/form/empty-try-catch-statement/main.js rename to test/form/samples/empty-try-catch-statement/main.js diff --git a/test/form/empty-while-statement/_config.js b/test/form/samples/empty-while-statement/_config.js similarity index 100% rename from test/form/empty-while-statement/_config.js rename to test/form/samples/empty-while-statement/_config.js diff --git a/test/form/empty-while-statement/_expected/amd.js b/test/form/samples/empty-while-statement/_expected/amd.js similarity index 100% rename from test/form/empty-while-statement/_expected/amd.js rename to test/form/samples/empty-while-statement/_expected/amd.js diff --git a/test/form/empty-while-statement/_expected/cjs.js b/test/form/samples/empty-while-statement/_expected/cjs.js similarity index 100% rename from test/form/empty-while-statement/_expected/cjs.js rename to test/form/samples/empty-while-statement/_expected/cjs.js diff --git a/test/form/empty-while-statement/_expected/es.js b/test/form/samples/empty-while-statement/_expected/es.js similarity index 100% rename from test/form/empty-while-statement/_expected/es.js rename to test/form/samples/empty-while-statement/_expected/es.js diff --git a/test/form/empty-while-statement/_expected/iife.js b/test/form/samples/empty-while-statement/_expected/iife.js similarity index 100% rename from test/form/empty-while-statement/_expected/iife.js rename to test/form/samples/empty-while-statement/_expected/iife.js diff --git a/test/form/empty-while-statement/_expected/umd.js b/test/form/samples/empty-while-statement/_expected/umd.js similarity index 100% rename from test/form/empty-while-statement/_expected/umd.js rename to test/form/samples/empty-while-statement/_expected/umd.js diff --git a/test/form/empty-while-statement/main.js b/test/form/samples/empty-while-statement/main.js similarity index 100% rename from test/form/empty-while-statement/main.js rename to test/form/samples/empty-while-statement/main.js diff --git a/test/form/erroneous-nested-member-expression/_config.js b/test/form/samples/erroneous-nested-member-expression/_config.js similarity index 100% rename from test/form/erroneous-nested-member-expression/_config.js rename to test/form/samples/erroneous-nested-member-expression/_config.js diff --git a/test/form/erroneous-nested-member-expression/_expected/amd.js b/test/form/samples/erroneous-nested-member-expression/_expected/amd.js similarity index 100% rename from test/form/erroneous-nested-member-expression/_expected/amd.js rename to test/form/samples/erroneous-nested-member-expression/_expected/amd.js diff --git a/test/form/erroneous-nested-member-expression/_expected/cjs.js b/test/form/samples/erroneous-nested-member-expression/_expected/cjs.js similarity index 100% rename from test/form/erroneous-nested-member-expression/_expected/cjs.js rename to test/form/samples/erroneous-nested-member-expression/_expected/cjs.js diff --git a/test/form/erroneous-nested-member-expression/_expected/es.js b/test/form/samples/erroneous-nested-member-expression/_expected/es.js similarity index 100% rename from test/form/erroneous-nested-member-expression/_expected/es.js rename to test/form/samples/erroneous-nested-member-expression/_expected/es.js diff --git a/test/form/erroneous-nested-member-expression/_expected/iife.js b/test/form/samples/erroneous-nested-member-expression/_expected/iife.js similarity index 100% rename from test/form/erroneous-nested-member-expression/_expected/iife.js rename to test/form/samples/erroneous-nested-member-expression/_expected/iife.js diff --git a/test/form/erroneous-nested-member-expression/_expected/umd.js b/test/form/samples/erroneous-nested-member-expression/_expected/umd.js similarity index 100% rename from test/form/erroneous-nested-member-expression/_expected/umd.js rename to test/form/samples/erroneous-nested-member-expression/_expected/umd.js diff --git a/test/form/erroneous-nested-member-expression/foo.js b/test/form/samples/erroneous-nested-member-expression/foo.js similarity index 100% rename from test/form/erroneous-nested-member-expression/foo.js rename to test/form/samples/erroneous-nested-member-expression/foo.js diff --git a/test/form/erroneous-nested-member-expression/main.js b/test/form/samples/erroneous-nested-member-expression/main.js similarity index 100% rename from test/form/erroneous-nested-member-expression/main.js rename to test/form/samples/erroneous-nested-member-expression/main.js diff --git a/test/form/exclude-unnecessary-modifications/_config.js b/test/form/samples/exclude-unnecessary-modifications/_config.js similarity index 100% rename from test/form/exclude-unnecessary-modifications/_config.js rename to test/form/samples/exclude-unnecessary-modifications/_config.js diff --git a/test/form/exclude-unnecessary-modifications/_expected/amd.js b/test/form/samples/exclude-unnecessary-modifications/_expected/amd.js similarity index 100% rename from test/form/exclude-unnecessary-modifications/_expected/amd.js rename to test/form/samples/exclude-unnecessary-modifications/_expected/amd.js diff --git a/test/form/exclude-unnecessary-modifications/_expected/cjs.js b/test/form/samples/exclude-unnecessary-modifications/_expected/cjs.js similarity index 100% rename from test/form/exclude-unnecessary-modifications/_expected/cjs.js rename to test/form/samples/exclude-unnecessary-modifications/_expected/cjs.js diff --git a/test/form/exclude-unnecessary-modifications/_expected/es.js b/test/form/samples/exclude-unnecessary-modifications/_expected/es.js similarity index 100% rename from test/form/exclude-unnecessary-modifications/_expected/es.js rename to test/form/samples/exclude-unnecessary-modifications/_expected/es.js diff --git a/test/form/exclude-unnecessary-modifications/_expected/iife.js b/test/form/samples/exclude-unnecessary-modifications/_expected/iife.js similarity index 100% rename from test/form/exclude-unnecessary-modifications/_expected/iife.js rename to test/form/samples/exclude-unnecessary-modifications/_expected/iife.js diff --git a/test/form/exclude-unnecessary-modifications/_expected/umd.js b/test/form/samples/exclude-unnecessary-modifications/_expected/umd.js similarity index 100% rename from test/form/exclude-unnecessary-modifications/_expected/umd.js rename to test/form/samples/exclude-unnecessary-modifications/_expected/umd.js diff --git a/test/form/exclude-unnecessary-modifications/foo.js b/test/form/samples/exclude-unnecessary-modifications/foo.js similarity index 100% rename from test/form/exclude-unnecessary-modifications/foo.js rename to test/form/samples/exclude-unnecessary-modifications/foo.js diff --git a/test/form/exclude-unnecessary-modifications/main.js b/test/form/samples/exclude-unnecessary-modifications/main.js similarity index 100% rename from test/form/exclude-unnecessary-modifications/main.js rename to test/form/samples/exclude-unnecessary-modifications/main.js diff --git a/test/form/exponentiation-operator/_config.js b/test/form/samples/exponentiation-operator/_config.js similarity index 100% rename from test/form/exponentiation-operator/_config.js rename to test/form/samples/exponentiation-operator/_config.js diff --git a/test/form/exponentiation-operator/_expected/amd.js b/test/form/samples/exponentiation-operator/_expected/amd.js similarity index 100% rename from test/form/exponentiation-operator/_expected/amd.js rename to test/form/samples/exponentiation-operator/_expected/amd.js diff --git a/test/form/exponentiation-operator/_expected/cjs.js b/test/form/samples/exponentiation-operator/_expected/cjs.js similarity index 100% rename from test/form/exponentiation-operator/_expected/cjs.js rename to test/form/samples/exponentiation-operator/_expected/cjs.js diff --git a/test/form/exponentiation-operator/_expected/es.js b/test/form/samples/exponentiation-operator/_expected/es.js similarity index 100% rename from test/form/exponentiation-operator/_expected/es.js rename to test/form/samples/exponentiation-operator/_expected/es.js diff --git a/test/form/exponentiation-operator/_expected/iife.js b/test/form/samples/exponentiation-operator/_expected/iife.js similarity index 100% rename from test/form/exponentiation-operator/_expected/iife.js rename to test/form/samples/exponentiation-operator/_expected/iife.js diff --git a/test/form/exponentiation-operator/_expected/umd.js b/test/form/samples/exponentiation-operator/_expected/umd.js similarity index 100% rename from test/form/exponentiation-operator/_expected/umd.js rename to test/form/samples/exponentiation-operator/_expected/umd.js diff --git a/test/form/exponentiation-operator/main.js b/test/form/samples/exponentiation-operator/main.js similarity index 100% rename from test/form/exponentiation-operator/main.js rename to test/form/samples/exponentiation-operator/main.js diff --git a/test/form/export-all-from-internal/_config.js b/test/form/samples/export-all-from-internal/_config.js similarity index 100% rename from test/form/export-all-from-internal/_config.js rename to test/form/samples/export-all-from-internal/_config.js diff --git a/test/form/export-all-from-internal/_expected/amd.js b/test/form/samples/export-all-from-internal/_expected/amd.js similarity index 100% rename from test/form/export-all-from-internal/_expected/amd.js rename to test/form/samples/export-all-from-internal/_expected/amd.js diff --git a/test/form/export-all-from-internal/_expected/cjs.js b/test/form/samples/export-all-from-internal/_expected/cjs.js similarity index 100% rename from test/form/export-all-from-internal/_expected/cjs.js rename to test/form/samples/export-all-from-internal/_expected/cjs.js diff --git a/test/form/export-all-from-internal/_expected/es.js b/test/form/samples/export-all-from-internal/_expected/es.js similarity index 100% rename from test/form/export-all-from-internal/_expected/es.js rename to test/form/samples/export-all-from-internal/_expected/es.js diff --git a/test/form/export-all-from-internal/_expected/iife.js b/test/form/samples/export-all-from-internal/_expected/iife.js similarity index 100% rename from test/form/export-all-from-internal/_expected/iife.js rename to test/form/samples/export-all-from-internal/_expected/iife.js diff --git a/test/form/export-all-from-internal/_expected/umd.js b/test/form/samples/export-all-from-internal/_expected/umd.js similarity index 100% rename from test/form/export-all-from-internal/_expected/umd.js rename to test/form/samples/export-all-from-internal/_expected/umd.js diff --git a/test/form/export-all-from-internal/internal.js b/test/form/samples/export-all-from-internal/internal.js similarity index 100% rename from test/form/export-all-from-internal/internal.js rename to test/form/samples/export-all-from-internal/internal.js diff --git a/test/form/export-all-from-internal/main.js b/test/form/samples/export-all-from-internal/main.js similarity index 100% rename from test/form/export-all-from-internal/main.js rename to test/form/samples/export-all-from-internal/main.js diff --git a/test/form/export-all-multiple/_config.js b/test/form/samples/export-all-multiple/_config.js similarity index 100% rename from test/form/export-all-multiple/_config.js rename to test/form/samples/export-all-multiple/_config.js diff --git a/test/form/export-all-multiple/_expected/amd.js b/test/form/samples/export-all-multiple/_expected/amd.js similarity index 100% rename from test/form/export-all-multiple/_expected/amd.js rename to test/form/samples/export-all-multiple/_expected/amd.js diff --git a/test/form/export-all-multiple/_expected/cjs.js b/test/form/samples/export-all-multiple/_expected/cjs.js similarity index 100% rename from test/form/export-all-multiple/_expected/cjs.js rename to test/form/samples/export-all-multiple/_expected/cjs.js diff --git a/test/form/export-all-multiple/_expected/es.js b/test/form/samples/export-all-multiple/_expected/es.js similarity index 100% rename from test/form/export-all-multiple/_expected/es.js rename to test/form/samples/export-all-multiple/_expected/es.js diff --git a/test/form/export-all-multiple/_expected/iife.js b/test/form/samples/export-all-multiple/_expected/iife.js similarity index 100% rename from test/form/export-all-multiple/_expected/iife.js rename to test/form/samples/export-all-multiple/_expected/iife.js diff --git a/test/form/export-all-multiple/_expected/umd.js b/test/form/samples/export-all-multiple/_expected/umd.js similarity index 100% rename from test/form/export-all-multiple/_expected/umd.js rename to test/form/samples/export-all-multiple/_expected/umd.js diff --git a/test/form/export-all-multiple/main.js b/test/form/samples/export-all-multiple/main.js similarity index 100% rename from test/form/export-all-multiple/main.js rename to test/form/samples/export-all-multiple/main.js diff --git a/test/form/export-default-2/_config.js b/test/form/samples/export-default-2/_config.js similarity index 100% rename from test/form/export-default-2/_config.js rename to test/form/samples/export-default-2/_config.js diff --git a/test/form/export-default-2/_expected/amd.js b/test/form/samples/export-default-2/_expected/amd.js similarity index 100% rename from test/form/export-default-2/_expected/amd.js rename to test/form/samples/export-default-2/_expected/amd.js diff --git a/test/form/export-default-2/_expected/cjs.js b/test/form/samples/export-default-2/_expected/cjs.js similarity index 100% rename from test/form/export-default-2/_expected/cjs.js rename to test/form/samples/export-default-2/_expected/cjs.js diff --git a/test/form/export-default-2/_expected/es.js b/test/form/samples/export-default-2/_expected/es.js similarity index 100% rename from test/form/export-default-2/_expected/es.js rename to test/form/samples/export-default-2/_expected/es.js diff --git a/test/form/export-default-2/_expected/iife.js b/test/form/samples/export-default-2/_expected/iife.js similarity index 100% rename from test/form/export-default-2/_expected/iife.js rename to test/form/samples/export-default-2/_expected/iife.js diff --git a/test/form/export-default-2/_expected/umd.js b/test/form/samples/export-default-2/_expected/umd.js similarity index 100% rename from test/form/export-default-2/_expected/umd.js rename to test/form/samples/export-default-2/_expected/umd.js diff --git a/test/form/export-default-2/bar.js b/test/form/samples/export-default-2/bar.js similarity index 100% rename from test/form/export-default-2/bar.js rename to test/form/samples/export-default-2/bar.js diff --git a/test/form/export-default-2/main.js b/test/form/samples/export-default-2/main.js similarity index 100% rename from test/form/export-default-2/main.js rename to test/form/samples/export-default-2/main.js diff --git a/test/form/export-default-3/_config.js b/test/form/samples/export-default-3/_config.js similarity index 100% rename from test/form/export-default-3/_config.js rename to test/form/samples/export-default-3/_config.js diff --git a/test/form/export-default-3/_expected/amd.js b/test/form/samples/export-default-3/_expected/amd.js similarity index 100% rename from test/form/export-default-3/_expected/amd.js rename to test/form/samples/export-default-3/_expected/amd.js diff --git a/test/form/export-default-3/_expected/cjs.js b/test/form/samples/export-default-3/_expected/cjs.js similarity index 100% rename from test/form/export-default-3/_expected/cjs.js rename to test/form/samples/export-default-3/_expected/cjs.js diff --git a/test/form/export-default-3/_expected/es.js b/test/form/samples/export-default-3/_expected/es.js similarity index 100% rename from test/form/export-default-3/_expected/es.js rename to test/form/samples/export-default-3/_expected/es.js diff --git a/test/form/export-default-3/_expected/iife.js b/test/form/samples/export-default-3/_expected/iife.js similarity index 100% rename from test/form/export-default-3/_expected/iife.js rename to test/form/samples/export-default-3/_expected/iife.js diff --git a/test/form/export-default-3/_expected/umd.js b/test/form/samples/export-default-3/_expected/umd.js similarity index 100% rename from test/form/export-default-3/_expected/umd.js rename to test/form/samples/export-default-3/_expected/umd.js diff --git a/test/form/export-default-3/bar.js b/test/form/samples/export-default-3/bar.js similarity index 100% rename from test/form/export-default-3/bar.js rename to test/form/samples/export-default-3/bar.js diff --git a/test/form/export-default-3/main.js b/test/form/samples/export-default-3/main.js similarity index 100% rename from test/form/export-default-3/main.js rename to test/form/samples/export-default-3/main.js diff --git a/test/form/export-default-import/_config.js b/test/form/samples/export-default-import/_config.js similarity index 100% rename from test/form/export-default-import/_config.js rename to test/form/samples/export-default-import/_config.js diff --git a/test/form/export-default-import/_expected/amd.js b/test/form/samples/export-default-import/_expected/amd.js similarity index 100% rename from test/form/export-default-import/_expected/amd.js rename to test/form/samples/export-default-import/_expected/amd.js diff --git a/test/form/export-default-import/_expected/cjs.js b/test/form/samples/export-default-import/_expected/cjs.js similarity index 100% rename from test/form/export-default-import/_expected/cjs.js rename to test/form/samples/export-default-import/_expected/cjs.js diff --git a/test/form/export-default-import/_expected/es.js b/test/form/samples/export-default-import/_expected/es.js similarity index 100% rename from test/form/export-default-import/_expected/es.js rename to test/form/samples/export-default-import/_expected/es.js diff --git a/test/form/export-default-import/_expected/iife.js b/test/form/samples/export-default-import/_expected/iife.js similarity index 100% rename from test/form/export-default-import/_expected/iife.js rename to test/form/samples/export-default-import/_expected/iife.js diff --git a/test/form/export-default-import/_expected/umd.js b/test/form/samples/export-default-import/_expected/umd.js similarity index 100% rename from test/form/export-default-import/_expected/umd.js rename to test/form/samples/export-default-import/_expected/umd.js diff --git a/test/form/export-default-import/main.js b/test/form/samples/export-default-import/main.js similarity index 100% rename from test/form/export-default-import/main.js rename to test/form/samples/export-default-import/main.js diff --git a/test/form/export-default/_config.js b/test/form/samples/export-default/_config.js similarity index 100% rename from test/form/export-default/_config.js rename to test/form/samples/export-default/_config.js diff --git a/test/form/export-default/_expected/amd.js b/test/form/samples/export-default/_expected/amd.js similarity index 100% rename from test/form/export-default/_expected/amd.js rename to test/form/samples/export-default/_expected/amd.js diff --git a/test/form/export-default/_expected/cjs.js b/test/form/samples/export-default/_expected/cjs.js similarity index 100% rename from test/form/export-default/_expected/cjs.js rename to test/form/samples/export-default/_expected/cjs.js diff --git a/test/form/export-default/_expected/es.js b/test/form/samples/export-default/_expected/es.js similarity index 100% rename from test/form/export-default/_expected/es.js rename to test/form/samples/export-default/_expected/es.js diff --git a/test/form/export-default/_expected/iife.js b/test/form/samples/export-default/_expected/iife.js similarity index 100% rename from test/form/export-default/_expected/iife.js rename to test/form/samples/export-default/_expected/iife.js diff --git a/test/form/export-default/_expected/umd.js b/test/form/samples/export-default/_expected/umd.js similarity index 100% rename from test/form/export-default/_expected/umd.js rename to test/form/samples/export-default/_expected/umd.js diff --git a/test/form/export-default/main.js b/test/form/samples/export-default/main.js similarity index 100% rename from test/form/export-default/main.js rename to test/form/samples/export-default/main.js diff --git a/test/form/export-multiple-vars/_config.js b/test/form/samples/export-multiple-vars/_config.js similarity index 100% rename from test/form/export-multiple-vars/_config.js rename to test/form/samples/export-multiple-vars/_config.js diff --git a/test/form/export-multiple-vars/_expected/amd.js b/test/form/samples/export-multiple-vars/_expected/amd.js similarity index 100% rename from test/form/export-multiple-vars/_expected/amd.js rename to test/form/samples/export-multiple-vars/_expected/amd.js diff --git a/test/form/export-multiple-vars/_expected/cjs.js b/test/form/samples/export-multiple-vars/_expected/cjs.js similarity index 100% rename from test/form/export-multiple-vars/_expected/cjs.js rename to test/form/samples/export-multiple-vars/_expected/cjs.js diff --git a/test/form/export-multiple-vars/_expected/es.js b/test/form/samples/export-multiple-vars/_expected/es.js similarity index 100% rename from test/form/export-multiple-vars/_expected/es.js rename to test/form/samples/export-multiple-vars/_expected/es.js diff --git a/test/form/export-multiple-vars/_expected/iife.js b/test/form/samples/export-multiple-vars/_expected/iife.js similarity index 100% rename from test/form/export-multiple-vars/_expected/iife.js rename to test/form/samples/export-multiple-vars/_expected/iife.js diff --git a/test/form/export-multiple-vars/_expected/umd.js b/test/form/samples/export-multiple-vars/_expected/umd.js similarity index 100% rename from test/form/export-multiple-vars/_expected/umd.js rename to test/form/samples/export-multiple-vars/_expected/umd.js diff --git a/test/form/export-multiple-vars/bar.js b/test/form/samples/export-multiple-vars/bar.js similarity index 100% rename from test/form/export-multiple-vars/bar.js rename to test/form/samples/export-multiple-vars/bar.js diff --git a/test/form/export-multiple-vars/baz.js b/test/form/samples/export-multiple-vars/baz.js similarity index 100% rename from test/form/export-multiple-vars/baz.js rename to test/form/samples/export-multiple-vars/baz.js diff --git a/test/form/export-multiple-vars/foo.js b/test/form/samples/export-multiple-vars/foo.js similarity index 100% rename from test/form/export-multiple-vars/foo.js rename to test/form/samples/export-multiple-vars/foo.js diff --git a/test/form/export-multiple-vars/main.js b/test/form/samples/export-multiple-vars/main.js similarity index 100% rename from test/form/export-multiple-vars/main.js rename to test/form/samples/export-multiple-vars/main.js diff --git a/test/form/exports-at-end-if-possible/_config.js b/test/form/samples/exports-at-end-if-possible/_config.js similarity index 100% rename from test/form/exports-at-end-if-possible/_config.js rename to test/form/samples/exports-at-end-if-possible/_config.js diff --git a/test/form/exports-at-end-if-possible/_expected/amd.js b/test/form/samples/exports-at-end-if-possible/_expected/amd.js similarity index 100% rename from test/form/exports-at-end-if-possible/_expected/amd.js rename to test/form/samples/exports-at-end-if-possible/_expected/amd.js diff --git a/test/form/exports-at-end-if-possible/_expected/cjs.js b/test/form/samples/exports-at-end-if-possible/_expected/cjs.js similarity index 100% rename from test/form/exports-at-end-if-possible/_expected/cjs.js rename to test/form/samples/exports-at-end-if-possible/_expected/cjs.js diff --git a/test/form/exports-at-end-if-possible/_expected/es.js b/test/form/samples/exports-at-end-if-possible/_expected/es.js similarity index 100% rename from test/form/exports-at-end-if-possible/_expected/es.js rename to test/form/samples/exports-at-end-if-possible/_expected/es.js diff --git a/test/form/exports-at-end-if-possible/_expected/iife.js b/test/form/samples/exports-at-end-if-possible/_expected/iife.js similarity index 100% rename from test/form/exports-at-end-if-possible/_expected/iife.js rename to test/form/samples/exports-at-end-if-possible/_expected/iife.js diff --git a/test/form/exports-at-end-if-possible/_expected/umd.js b/test/form/samples/exports-at-end-if-possible/_expected/umd.js similarity index 100% rename from test/form/exports-at-end-if-possible/_expected/umd.js rename to test/form/samples/exports-at-end-if-possible/_expected/umd.js diff --git a/test/form/exports-at-end-if-possible/main.js b/test/form/samples/exports-at-end-if-possible/main.js similarity index 100% rename from test/form/exports-at-end-if-possible/main.js rename to test/form/samples/exports-at-end-if-possible/main.js diff --git a/test/form/extend-exports/_config.js b/test/form/samples/extend-exports/_config.js similarity index 100% rename from test/form/extend-exports/_config.js rename to test/form/samples/extend-exports/_config.js diff --git a/test/form/extend-exports/_expected/amd.js b/test/form/samples/extend-exports/_expected/amd.js similarity index 100% rename from test/form/extend-exports/_expected/amd.js rename to test/form/samples/extend-exports/_expected/amd.js diff --git a/test/form/extend-exports/_expected/cjs.js b/test/form/samples/extend-exports/_expected/cjs.js similarity index 100% rename from test/form/extend-exports/_expected/cjs.js rename to test/form/samples/extend-exports/_expected/cjs.js diff --git a/test/form/extend-exports/_expected/es.js b/test/form/samples/extend-exports/_expected/es.js similarity index 100% rename from test/form/extend-exports/_expected/es.js rename to test/form/samples/extend-exports/_expected/es.js diff --git a/test/form/extend-exports/_expected/iife.js b/test/form/samples/extend-exports/_expected/iife.js similarity index 100% rename from test/form/extend-exports/_expected/iife.js rename to test/form/samples/extend-exports/_expected/iife.js diff --git a/test/form/extend-exports/_expected/umd.js b/test/form/samples/extend-exports/_expected/umd.js similarity index 100% rename from test/form/extend-exports/_expected/umd.js rename to test/form/samples/extend-exports/_expected/umd.js diff --git a/test/form/extend-exports/main.js b/test/form/samples/extend-exports/main.js similarity index 100% rename from test/form/extend-exports/main.js rename to test/form/samples/extend-exports/main.js diff --git a/test/form/extend-namespaced-exports/_config.js b/test/form/samples/extend-namespaced-exports/_config.js similarity index 100% rename from test/form/extend-namespaced-exports/_config.js rename to test/form/samples/extend-namespaced-exports/_config.js diff --git a/test/form/extend-namespaced-exports/_expected/amd.js b/test/form/samples/extend-namespaced-exports/_expected/amd.js similarity index 100% rename from test/form/extend-namespaced-exports/_expected/amd.js rename to test/form/samples/extend-namespaced-exports/_expected/amd.js diff --git a/test/form/extend-namespaced-exports/_expected/cjs.js b/test/form/samples/extend-namespaced-exports/_expected/cjs.js similarity index 100% rename from test/form/extend-namespaced-exports/_expected/cjs.js rename to test/form/samples/extend-namespaced-exports/_expected/cjs.js diff --git a/test/form/extend-namespaced-exports/_expected/es.js b/test/form/samples/extend-namespaced-exports/_expected/es.js similarity index 100% rename from test/form/extend-namespaced-exports/_expected/es.js rename to test/form/samples/extend-namespaced-exports/_expected/es.js diff --git a/test/form/extend-namespaced-exports/_expected/iife.js b/test/form/samples/extend-namespaced-exports/_expected/iife.js similarity index 100% rename from test/form/extend-namespaced-exports/_expected/iife.js rename to test/form/samples/extend-namespaced-exports/_expected/iife.js diff --git a/test/form/extend-namespaced-exports/_expected/umd.js b/test/form/samples/extend-namespaced-exports/_expected/umd.js similarity index 100% rename from test/form/extend-namespaced-exports/_expected/umd.js rename to test/form/samples/extend-namespaced-exports/_expected/umd.js diff --git a/test/form/extend-namespaced-exports/main.js b/test/form/samples/extend-namespaced-exports/main.js similarity index 100% rename from test/form/extend-namespaced-exports/main.js rename to test/form/samples/extend-namespaced-exports/main.js diff --git a/test/form/external-empty-import-no-global-b/_config.js b/test/form/samples/external-empty-import-no-global-b/_config.js similarity index 100% rename from test/form/external-empty-import-no-global-b/_config.js rename to test/form/samples/external-empty-import-no-global-b/_config.js diff --git a/test/form/external-empty-import-no-global-b/_expected/amd.js b/test/form/samples/external-empty-import-no-global-b/_expected/amd.js similarity index 100% rename from test/form/external-empty-import-no-global-b/_expected/amd.js rename to test/form/samples/external-empty-import-no-global-b/_expected/amd.js diff --git a/test/form/external-empty-import-no-global-b/_expected/cjs.js b/test/form/samples/external-empty-import-no-global-b/_expected/cjs.js similarity index 100% rename from test/form/external-empty-import-no-global-b/_expected/cjs.js rename to test/form/samples/external-empty-import-no-global-b/_expected/cjs.js diff --git a/test/form/external-empty-import-no-global-b/_expected/es.js b/test/form/samples/external-empty-import-no-global-b/_expected/es.js similarity index 100% rename from test/form/external-empty-import-no-global-b/_expected/es.js rename to test/form/samples/external-empty-import-no-global-b/_expected/es.js diff --git a/test/form/external-empty-import-no-global-b/_expected/iife.js b/test/form/samples/external-empty-import-no-global-b/_expected/iife.js similarity index 100% rename from test/form/external-empty-import-no-global-b/_expected/iife.js rename to test/form/samples/external-empty-import-no-global-b/_expected/iife.js diff --git a/test/form/external-empty-import-no-global-b/_expected/umd.js b/test/form/samples/external-empty-import-no-global-b/_expected/umd.js similarity index 100% rename from test/form/external-empty-import-no-global-b/_expected/umd.js rename to test/form/samples/external-empty-import-no-global-b/_expected/umd.js diff --git a/test/form/external-empty-import-no-global-b/main.js b/test/form/samples/external-empty-import-no-global-b/main.js similarity index 100% rename from test/form/external-empty-import-no-global-b/main.js rename to test/form/samples/external-empty-import-no-global-b/main.js diff --git a/test/form/external-empty-import-no-global/_config.js b/test/form/samples/external-empty-import-no-global/_config.js similarity index 100% rename from test/form/external-empty-import-no-global/_config.js rename to test/form/samples/external-empty-import-no-global/_config.js diff --git a/test/form/external-empty-import-no-global/_expected/amd.js b/test/form/samples/external-empty-import-no-global/_expected/amd.js similarity index 100% rename from test/form/external-empty-import-no-global/_expected/amd.js rename to test/form/samples/external-empty-import-no-global/_expected/amd.js diff --git a/test/form/external-empty-import-no-global/_expected/cjs.js b/test/form/samples/external-empty-import-no-global/_expected/cjs.js similarity index 100% rename from test/form/external-empty-import-no-global/_expected/cjs.js rename to test/form/samples/external-empty-import-no-global/_expected/cjs.js diff --git a/test/form/external-empty-import-no-global/_expected/es.js b/test/form/samples/external-empty-import-no-global/_expected/es.js similarity index 100% rename from test/form/external-empty-import-no-global/_expected/es.js rename to test/form/samples/external-empty-import-no-global/_expected/es.js diff --git a/test/form/external-empty-import-no-global/_expected/iife.js b/test/form/samples/external-empty-import-no-global/_expected/iife.js similarity index 100% rename from test/form/external-empty-import-no-global/_expected/iife.js rename to test/form/samples/external-empty-import-no-global/_expected/iife.js diff --git a/test/form/external-empty-import-no-global/_expected/umd.js b/test/form/samples/external-empty-import-no-global/_expected/umd.js similarity index 100% rename from test/form/external-empty-import-no-global/_expected/umd.js rename to test/form/samples/external-empty-import-no-global/_expected/umd.js diff --git a/test/form/external-empty-import-no-global/main.js b/test/form/samples/external-empty-import-no-global/main.js similarity index 100% rename from test/form/external-empty-import-no-global/main.js rename to test/form/samples/external-empty-import-no-global/main.js diff --git a/test/form/external-import-alias-shadow/_config.js b/test/form/samples/external-import-alias-shadow/_config.js similarity index 100% rename from test/form/external-import-alias-shadow/_config.js rename to test/form/samples/external-import-alias-shadow/_config.js diff --git a/test/form/external-import-alias-shadow/_expected/amd.js b/test/form/samples/external-import-alias-shadow/_expected/amd.js similarity index 100% rename from test/form/external-import-alias-shadow/_expected/amd.js rename to test/form/samples/external-import-alias-shadow/_expected/amd.js diff --git a/test/form/external-import-alias-shadow/_expected/cjs.js b/test/form/samples/external-import-alias-shadow/_expected/cjs.js similarity index 100% rename from test/form/external-import-alias-shadow/_expected/cjs.js rename to test/form/samples/external-import-alias-shadow/_expected/cjs.js diff --git a/test/form/external-import-alias-shadow/_expected/es.js b/test/form/samples/external-import-alias-shadow/_expected/es.js similarity index 100% rename from test/form/external-import-alias-shadow/_expected/es.js rename to test/form/samples/external-import-alias-shadow/_expected/es.js diff --git a/test/form/external-import-alias-shadow/_expected/iife.js b/test/form/samples/external-import-alias-shadow/_expected/iife.js similarity index 100% rename from test/form/external-import-alias-shadow/_expected/iife.js rename to test/form/samples/external-import-alias-shadow/_expected/iife.js diff --git a/test/form/external-import-alias-shadow/_expected/umd.js b/test/form/samples/external-import-alias-shadow/_expected/umd.js similarity index 100% rename from test/form/external-import-alias-shadow/_expected/umd.js rename to test/form/samples/external-import-alias-shadow/_expected/umd.js diff --git a/test/form/external-import-alias-shadow/main.js b/test/form/samples/external-import-alias-shadow/main.js similarity index 100% rename from test/form/external-import-alias-shadow/main.js rename to test/form/samples/external-import-alias-shadow/main.js diff --git a/test/form/external-import-alias-shadow/parse.js b/test/form/samples/external-import-alias-shadow/parse.js similarity index 100% rename from test/form/external-import-alias-shadow/parse.js rename to test/form/samples/external-import-alias-shadow/parse.js diff --git a/test/form/external-imports-custom-names-function/_config.js b/test/form/samples/external-imports-custom-names-function/_config.js similarity index 100% rename from test/form/external-imports-custom-names-function/_config.js rename to test/form/samples/external-imports-custom-names-function/_config.js diff --git a/test/form/external-imports-custom-names-function/_expected/amd.js b/test/form/samples/external-imports-custom-names-function/_expected/amd.js similarity index 100% rename from test/form/external-imports-custom-names-function/_expected/amd.js rename to test/form/samples/external-imports-custom-names-function/_expected/amd.js diff --git a/test/form/external-imports-custom-names-function/_expected/cjs.js b/test/form/samples/external-imports-custom-names-function/_expected/cjs.js similarity index 100% rename from test/form/external-imports-custom-names-function/_expected/cjs.js rename to test/form/samples/external-imports-custom-names-function/_expected/cjs.js diff --git a/test/form/external-imports-custom-names-function/_expected/es.js b/test/form/samples/external-imports-custom-names-function/_expected/es.js similarity index 100% rename from test/form/external-imports-custom-names-function/_expected/es.js rename to test/form/samples/external-imports-custom-names-function/_expected/es.js diff --git a/test/form/external-imports-custom-names-function/_expected/iife.js b/test/form/samples/external-imports-custom-names-function/_expected/iife.js similarity index 100% rename from test/form/external-imports-custom-names-function/_expected/iife.js rename to test/form/samples/external-imports-custom-names-function/_expected/iife.js diff --git a/test/form/external-imports-custom-names-function/_expected/umd.js b/test/form/samples/external-imports-custom-names-function/_expected/umd.js similarity index 100% rename from test/form/external-imports-custom-names-function/_expected/umd.js rename to test/form/samples/external-imports-custom-names-function/_expected/umd.js diff --git a/test/form/external-imports-custom-names-function/main.js b/test/form/samples/external-imports-custom-names-function/main.js similarity index 100% rename from test/form/external-imports-custom-names-function/main.js rename to test/form/samples/external-imports-custom-names-function/main.js diff --git a/test/form/external-imports-custom-names/_config.js b/test/form/samples/external-imports-custom-names/_config.js similarity index 100% rename from test/form/external-imports-custom-names/_config.js rename to test/form/samples/external-imports-custom-names/_config.js diff --git a/test/form/external-imports-custom-names/_expected/amd.js b/test/form/samples/external-imports-custom-names/_expected/amd.js similarity index 100% rename from test/form/external-imports-custom-names/_expected/amd.js rename to test/form/samples/external-imports-custom-names/_expected/amd.js diff --git a/test/form/external-imports-custom-names/_expected/cjs.js b/test/form/samples/external-imports-custom-names/_expected/cjs.js similarity index 100% rename from test/form/external-imports-custom-names/_expected/cjs.js rename to test/form/samples/external-imports-custom-names/_expected/cjs.js diff --git a/test/form/external-imports-custom-names/_expected/es.js b/test/form/samples/external-imports-custom-names/_expected/es.js similarity index 100% rename from test/form/external-imports-custom-names/_expected/es.js rename to test/form/samples/external-imports-custom-names/_expected/es.js diff --git a/test/form/external-imports-custom-names/_expected/iife.js b/test/form/samples/external-imports-custom-names/_expected/iife.js similarity index 100% rename from test/form/external-imports-custom-names/_expected/iife.js rename to test/form/samples/external-imports-custom-names/_expected/iife.js diff --git a/test/form/external-imports-custom-names/_expected/umd.js b/test/form/samples/external-imports-custom-names/_expected/umd.js similarity index 100% rename from test/form/external-imports-custom-names/_expected/umd.js rename to test/form/samples/external-imports-custom-names/_expected/umd.js diff --git a/test/form/external-imports-custom-names/main.js b/test/form/samples/external-imports-custom-names/main.js similarity index 100% rename from test/form/external-imports-custom-names/main.js rename to test/form/samples/external-imports-custom-names/main.js diff --git a/test/form/external-imports/_config.js b/test/form/samples/external-imports/_config.js similarity index 100% rename from test/form/external-imports/_config.js rename to test/form/samples/external-imports/_config.js diff --git a/test/form/external-imports/_expected/amd.js b/test/form/samples/external-imports/_expected/amd.js similarity index 100% rename from test/form/external-imports/_expected/amd.js rename to test/form/samples/external-imports/_expected/amd.js diff --git a/test/form/external-imports/_expected/cjs.js b/test/form/samples/external-imports/_expected/cjs.js similarity index 100% rename from test/form/external-imports/_expected/cjs.js rename to test/form/samples/external-imports/_expected/cjs.js diff --git a/test/form/external-imports/_expected/es.js b/test/form/samples/external-imports/_expected/es.js similarity index 100% rename from test/form/external-imports/_expected/es.js rename to test/form/samples/external-imports/_expected/es.js diff --git a/test/form/external-imports/_expected/iife.js b/test/form/samples/external-imports/_expected/iife.js similarity index 100% rename from test/form/external-imports/_expected/iife.js rename to test/form/samples/external-imports/_expected/iife.js diff --git a/test/form/external-imports/_expected/umd.js b/test/form/samples/external-imports/_expected/umd.js similarity index 100% rename from test/form/external-imports/_expected/umd.js rename to test/form/samples/external-imports/_expected/umd.js diff --git a/test/form/external-imports/main.js b/test/form/samples/external-imports/main.js similarity index 100% rename from test/form/external-imports/main.js rename to test/form/samples/external-imports/main.js diff --git a/test/form/for-loop-body-var-declaration/_config.js b/test/form/samples/for-loop-body-var-declaration/_config.js similarity index 100% rename from test/form/for-loop-body-var-declaration/_config.js rename to test/form/samples/for-loop-body-var-declaration/_config.js diff --git a/test/form/for-loop-body-var-declaration/_expected/amd.js b/test/form/samples/for-loop-body-var-declaration/_expected/amd.js similarity index 100% rename from test/form/for-loop-body-var-declaration/_expected/amd.js rename to test/form/samples/for-loop-body-var-declaration/_expected/amd.js diff --git a/test/form/for-loop-body-var-declaration/_expected/cjs.js b/test/form/samples/for-loop-body-var-declaration/_expected/cjs.js similarity index 100% rename from test/form/for-loop-body-var-declaration/_expected/cjs.js rename to test/form/samples/for-loop-body-var-declaration/_expected/cjs.js diff --git a/test/form/for-loop-body-var-declaration/_expected/es.js b/test/form/samples/for-loop-body-var-declaration/_expected/es.js similarity index 100% rename from test/form/for-loop-body-var-declaration/_expected/es.js rename to test/form/samples/for-loop-body-var-declaration/_expected/es.js diff --git a/test/form/for-loop-body-var-declaration/_expected/iife.js b/test/form/samples/for-loop-body-var-declaration/_expected/iife.js similarity index 100% rename from test/form/for-loop-body-var-declaration/_expected/iife.js rename to test/form/samples/for-loop-body-var-declaration/_expected/iife.js diff --git a/test/form/for-loop-body-var-declaration/_expected/umd.js b/test/form/samples/for-loop-body-var-declaration/_expected/umd.js similarity index 100% rename from test/form/for-loop-body-var-declaration/_expected/umd.js rename to test/form/samples/for-loop-body-var-declaration/_expected/umd.js diff --git a/test/form/for-loop-body-var-declaration/main.js b/test/form/samples/for-loop-body-var-declaration/main.js similarity index 100% rename from test/form/for-loop-body-var-declaration/main.js rename to test/form/samples/for-loop-body-var-declaration/main.js diff --git a/test/form/for-loop-with-empty-head/_config.js b/test/form/samples/for-loop-with-empty-head/_config.js similarity index 100% rename from test/form/for-loop-with-empty-head/_config.js rename to test/form/samples/for-loop-with-empty-head/_config.js diff --git a/test/form/for-loop-with-empty-head/_expected/amd.js b/test/form/samples/for-loop-with-empty-head/_expected/amd.js similarity index 100% rename from test/form/for-loop-with-empty-head/_expected/amd.js rename to test/form/samples/for-loop-with-empty-head/_expected/amd.js diff --git a/test/form/for-loop-with-empty-head/_expected/cjs.js b/test/form/samples/for-loop-with-empty-head/_expected/cjs.js similarity index 100% rename from test/form/for-loop-with-empty-head/_expected/cjs.js rename to test/form/samples/for-loop-with-empty-head/_expected/cjs.js diff --git a/test/form/for-loop-with-empty-head/_expected/es.js b/test/form/samples/for-loop-with-empty-head/_expected/es.js similarity index 100% rename from test/form/for-loop-with-empty-head/_expected/es.js rename to test/form/samples/for-loop-with-empty-head/_expected/es.js diff --git a/test/form/for-loop-with-empty-head/_expected/iife.js b/test/form/samples/for-loop-with-empty-head/_expected/iife.js similarity index 100% rename from test/form/for-loop-with-empty-head/_expected/iife.js rename to test/form/samples/for-loop-with-empty-head/_expected/iife.js diff --git a/test/form/for-loop-with-empty-head/_expected/umd.js b/test/form/samples/for-loop-with-empty-head/_expected/umd.js similarity index 100% rename from test/form/for-loop-with-empty-head/_expected/umd.js rename to test/form/samples/for-loop-with-empty-head/_expected/umd.js diff --git a/test/form/for-loop-with-empty-head/main.js b/test/form/samples/for-loop-with-empty-head/main.js similarity index 100% rename from test/form/for-loop-with-empty-head/main.js rename to test/form/samples/for-loop-with-empty-head/main.js diff --git a/test/form/import-external-namespace-and-default/_config.js b/test/form/samples/import-external-namespace-and-default/_config.js similarity index 100% rename from test/form/import-external-namespace-and-default/_config.js rename to test/form/samples/import-external-namespace-and-default/_config.js diff --git a/test/form/import-external-namespace-and-default/_expected/amd.js b/test/form/samples/import-external-namespace-and-default/_expected/amd.js similarity index 100% rename from test/form/import-external-namespace-and-default/_expected/amd.js rename to test/form/samples/import-external-namespace-and-default/_expected/amd.js diff --git a/test/form/import-external-namespace-and-default/_expected/cjs.js b/test/form/samples/import-external-namespace-and-default/_expected/cjs.js similarity index 100% rename from test/form/import-external-namespace-and-default/_expected/cjs.js rename to test/form/samples/import-external-namespace-and-default/_expected/cjs.js diff --git a/test/form/import-external-namespace-and-default/_expected/es.js b/test/form/samples/import-external-namespace-and-default/_expected/es.js similarity index 100% rename from test/form/import-external-namespace-and-default/_expected/es.js rename to test/form/samples/import-external-namespace-and-default/_expected/es.js diff --git a/test/form/import-external-namespace-and-default/_expected/iife.js b/test/form/samples/import-external-namespace-and-default/_expected/iife.js similarity index 100% rename from test/form/import-external-namespace-and-default/_expected/iife.js rename to test/form/samples/import-external-namespace-and-default/_expected/iife.js diff --git a/test/form/import-external-namespace-and-default/_expected/umd.js b/test/form/samples/import-external-namespace-and-default/_expected/umd.js similarity index 100% rename from test/form/import-external-namespace-and-default/_expected/umd.js rename to test/form/samples/import-external-namespace-and-default/_expected/umd.js diff --git a/test/form/import-external-namespace-and-default/main.js b/test/form/samples/import-external-namespace-and-default/main.js similarity index 100% rename from test/form/import-external-namespace-and-default/main.js rename to test/form/samples/import-external-namespace-and-default/main.js diff --git a/test/form/import-external-namespace-and-default/other.js b/test/form/samples/import-external-namespace-and-default/other.js similarity index 100% rename from test/form/import-external-namespace-and-default/other.js rename to test/form/samples/import-external-namespace-and-default/other.js diff --git a/test/form/import-named-exported-global-with-alias/_config.js b/test/form/samples/import-named-exported-global-with-alias/_config.js similarity index 100% rename from test/form/import-named-exported-global-with-alias/_config.js rename to test/form/samples/import-named-exported-global-with-alias/_config.js diff --git a/test/form/import-named-exported-global-with-alias/_expected/amd.js b/test/form/samples/import-named-exported-global-with-alias/_expected/amd.js similarity index 100% rename from test/form/import-named-exported-global-with-alias/_expected/amd.js rename to test/form/samples/import-named-exported-global-with-alias/_expected/amd.js diff --git a/test/form/import-named-exported-global-with-alias/_expected/cjs.js b/test/form/samples/import-named-exported-global-with-alias/_expected/cjs.js similarity index 100% rename from test/form/import-named-exported-global-with-alias/_expected/cjs.js rename to test/form/samples/import-named-exported-global-with-alias/_expected/cjs.js diff --git a/test/form/import-named-exported-global-with-alias/_expected/es.js b/test/form/samples/import-named-exported-global-with-alias/_expected/es.js similarity index 100% rename from test/form/import-named-exported-global-with-alias/_expected/es.js rename to test/form/samples/import-named-exported-global-with-alias/_expected/es.js diff --git a/test/form/import-named-exported-global-with-alias/_expected/iife.js b/test/form/samples/import-named-exported-global-with-alias/_expected/iife.js similarity index 100% rename from test/form/import-named-exported-global-with-alias/_expected/iife.js rename to test/form/samples/import-named-exported-global-with-alias/_expected/iife.js diff --git a/test/form/import-named-exported-global-with-alias/_expected/umd.js b/test/form/samples/import-named-exported-global-with-alias/_expected/umd.js similarity index 100% rename from test/form/import-named-exported-global-with-alias/_expected/umd.js rename to test/form/samples/import-named-exported-global-with-alias/_expected/umd.js diff --git a/test/form/import-named-exported-global-with-alias/browser.js b/test/form/samples/import-named-exported-global-with-alias/browser.js similarity index 100% rename from test/form/import-named-exported-global-with-alias/browser.js rename to test/form/samples/import-named-exported-global-with-alias/browser.js diff --git a/test/form/import-named-exported-global-with-alias/main.js b/test/form/samples/import-named-exported-global-with-alias/main.js similarity index 100% rename from test/form/import-named-exported-global-with-alias/main.js rename to test/form/samples/import-named-exported-global-with-alias/main.js diff --git a/test/form/includes-all-namespace-declarations/_config.js b/test/form/samples/includes-all-namespace-declarations/_config.js similarity index 100% rename from test/form/includes-all-namespace-declarations/_config.js rename to test/form/samples/includes-all-namespace-declarations/_config.js diff --git a/test/form/includes-all-namespace-declarations/_expected/amd.js b/test/form/samples/includes-all-namespace-declarations/_expected/amd.js similarity index 100% rename from test/form/includes-all-namespace-declarations/_expected/amd.js rename to test/form/samples/includes-all-namespace-declarations/_expected/amd.js diff --git a/test/form/includes-all-namespace-declarations/_expected/cjs.js b/test/form/samples/includes-all-namespace-declarations/_expected/cjs.js similarity index 100% rename from test/form/includes-all-namespace-declarations/_expected/cjs.js rename to test/form/samples/includes-all-namespace-declarations/_expected/cjs.js diff --git a/test/form/includes-all-namespace-declarations/_expected/es.js b/test/form/samples/includes-all-namespace-declarations/_expected/es.js similarity index 100% rename from test/form/includes-all-namespace-declarations/_expected/es.js rename to test/form/samples/includes-all-namespace-declarations/_expected/es.js diff --git a/test/form/includes-all-namespace-declarations/_expected/iife.js b/test/form/samples/includes-all-namespace-declarations/_expected/iife.js similarity index 100% rename from test/form/includes-all-namespace-declarations/_expected/iife.js rename to test/form/samples/includes-all-namespace-declarations/_expected/iife.js diff --git a/test/form/includes-all-namespace-declarations/_expected/umd.js b/test/form/samples/includes-all-namespace-declarations/_expected/umd.js similarity index 100% rename from test/form/includes-all-namespace-declarations/_expected/umd.js rename to test/form/samples/includes-all-namespace-declarations/_expected/umd.js diff --git a/test/form/includes-all-namespace-declarations/indirection.js b/test/form/samples/includes-all-namespace-declarations/indirection.js similarity index 100% rename from test/form/includes-all-namespace-declarations/indirection.js rename to test/form/samples/includes-all-namespace-declarations/indirection.js diff --git a/test/form/includes-all-namespace-declarations/main.js b/test/form/samples/includes-all-namespace-declarations/main.js similarity index 100% rename from test/form/includes-all-namespace-declarations/main.js rename to test/form/samples/includes-all-namespace-declarations/main.js diff --git a/test/form/includes-all-namespace-declarations/unused.js b/test/form/samples/includes-all-namespace-declarations/unused.js similarity index 100% rename from test/form/includes-all-namespace-declarations/unused.js rename to test/form/samples/includes-all-namespace-declarations/unused.js diff --git a/test/form/indent-false/_config.js b/test/form/samples/indent-false/_config.js similarity index 100% rename from test/form/indent-false/_config.js rename to test/form/samples/indent-false/_config.js diff --git a/test/form/indent-false/_expected/amd.js b/test/form/samples/indent-false/_expected/amd.js similarity index 100% rename from test/form/indent-false/_expected/amd.js rename to test/form/samples/indent-false/_expected/amd.js diff --git a/test/form/indent-false/_expected/cjs.js b/test/form/samples/indent-false/_expected/cjs.js similarity index 100% rename from test/form/indent-false/_expected/cjs.js rename to test/form/samples/indent-false/_expected/cjs.js diff --git a/test/form/indent-false/_expected/es.js b/test/form/samples/indent-false/_expected/es.js similarity index 100% rename from test/form/indent-false/_expected/es.js rename to test/form/samples/indent-false/_expected/es.js diff --git a/test/form/indent-false/_expected/iife.js b/test/form/samples/indent-false/_expected/iife.js similarity index 100% rename from test/form/indent-false/_expected/iife.js rename to test/form/samples/indent-false/_expected/iife.js diff --git a/test/form/indent-false/_expected/umd.js b/test/form/samples/indent-false/_expected/umd.js similarity index 100% rename from test/form/indent-false/_expected/umd.js rename to test/form/samples/indent-false/_expected/umd.js diff --git a/test/form/indent-false/main.js b/test/form/samples/indent-false/main.js similarity index 100% rename from test/form/indent-false/main.js rename to test/form/samples/indent-false/main.js diff --git a/test/form/indent-spaces/_config.js b/test/form/samples/indent-spaces/_config.js similarity index 100% rename from test/form/indent-spaces/_config.js rename to test/form/samples/indent-spaces/_config.js diff --git a/test/form/indent-spaces/_expected/amd.js b/test/form/samples/indent-spaces/_expected/amd.js similarity index 100% rename from test/form/indent-spaces/_expected/amd.js rename to test/form/samples/indent-spaces/_expected/amd.js diff --git a/test/form/indent-spaces/_expected/cjs.js b/test/form/samples/indent-spaces/_expected/cjs.js similarity index 100% rename from test/form/indent-spaces/_expected/cjs.js rename to test/form/samples/indent-spaces/_expected/cjs.js diff --git a/test/form/indent-spaces/_expected/es.js b/test/form/samples/indent-spaces/_expected/es.js similarity index 100% rename from test/form/indent-spaces/_expected/es.js rename to test/form/samples/indent-spaces/_expected/es.js diff --git a/test/form/indent-spaces/_expected/iife.js b/test/form/samples/indent-spaces/_expected/iife.js similarity index 100% rename from test/form/indent-spaces/_expected/iife.js rename to test/form/samples/indent-spaces/_expected/iife.js diff --git a/test/form/indent-spaces/_expected/umd.js b/test/form/samples/indent-spaces/_expected/umd.js similarity index 100% rename from test/form/indent-spaces/_expected/umd.js rename to test/form/samples/indent-spaces/_expected/umd.js diff --git a/test/form/indent-spaces/main.js b/test/form/samples/indent-spaces/main.js similarity index 100% rename from test/form/indent-spaces/main.js rename to test/form/samples/indent-spaces/main.js diff --git a/test/form/indent-true-spaces/_config.js b/test/form/samples/indent-true-spaces/_config.js similarity index 100% rename from test/form/indent-true-spaces/_config.js rename to test/form/samples/indent-true-spaces/_config.js diff --git a/test/form/indent-true-spaces/_expected/amd.js b/test/form/samples/indent-true-spaces/_expected/amd.js similarity index 100% rename from test/form/indent-true-spaces/_expected/amd.js rename to test/form/samples/indent-true-spaces/_expected/amd.js diff --git a/test/form/indent-true-spaces/_expected/cjs.js b/test/form/samples/indent-true-spaces/_expected/cjs.js similarity index 100% rename from test/form/indent-true-spaces/_expected/cjs.js rename to test/form/samples/indent-true-spaces/_expected/cjs.js diff --git a/test/form/indent-true-spaces/_expected/es.js b/test/form/samples/indent-true-spaces/_expected/es.js similarity index 100% rename from test/form/indent-true-spaces/_expected/es.js rename to test/form/samples/indent-true-spaces/_expected/es.js diff --git a/test/form/indent-true-spaces/_expected/iife.js b/test/form/samples/indent-true-spaces/_expected/iife.js similarity index 100% rename from test/form/indent-true-spaces/_expected/iife.js rename to test/form/samples/indent-true-spaces/_expected/iife.js diff --git a/test/form/indent-true-spaces/_expected/umd.js b/test/form/samples/indent-true-spaces/_expected/umd.js similarity index 100% rename from test/form/indent-true-spaces/_expected/umd.js rename to test/form/samples/indent-true-spaces/_expected/umd.js diff --git a/test/form/indent-true-spaces/main.js b/test/form/samples/indent-true-spaces/main.js similarity index 100% rename from test/form/indent-true-spaces/main.js rename to test/form/samples/indent-true-spaces/main.js diff --git a/test/form/indent-true/_config.js b/test/form/samples/indent-true/_config.js similarity index 100% rename from test/form/indent-true/_config.js rename to test/form/samples/indent-true/_config.js diff --git a/test/form/indent-true/_expected/amd.js b/test/form/samples/indent-true/_expected/amd.js similarity index 100% rename from test/form/indent-true/_expected/amd.js rename to test/form/samples/indent-true/_expected/amd.js diff --git a/test/form/indent-true/_expected/cjs.js b/test/form/samples/indent-true/_expected/cjs.js similarity index 100% rename from test/form/indent-true/_expected/cjs.js rename to test/form/samples/indent-true/_expected/cjs.js diff --git a/test/form/indent-true/_expected/es.js b/test/form/samples/indent-true/_expected/es.js similarity index 100% rename from test/form/indent-true/_expected/es.js rename to test/form/samples/indent-true/_expected/es.js diff --git a/test/form/indent-true/_expected/iife.js b/test/form/samples/indent-true/_expected/iife.js similarity index 100% rename from test/form/indent-true/_expected/iife.js rename to test/form/samples/indent-true/_expected/iife.js diff --git a/test/form/indent-true/_expected/umd.js b/test/form/samples/indent-true/_expected/umd.js similarity index 100% rename from test/form/indent-true/_expected/umd.js rename to test/form/samples/indent-true/_expected/umd.js diff --git a/test/form/indent-true/main.js b/test/form/samples/indent-true/main.js similarity index 100% rename from test/form/indent-true/main.js rename to test/form/samples/indent-true/main.js diff --git a/test/form/internal-conflict-resolution/_config.js b/test/form/samples/internal-conflict-resolution/_config.js similarity index 100% rename from test/form/internal-conflict-resolution/_config.js rename to test/form/samples/internal-conflict-resolution/_config.js diff --git a/test/form/internal-conflict-resolution/_expected/amd.js b/test/form/samples/internal-conflict-resolution/_expected/amd.js similarity index 100% rename from test/form/internal-conflict-resolution/_expected/amd.js rename to test/form/samples/internal-conflict-resolution/_expected/amd.js diff --git a/test/form/internal-conflict-resolution/_expected/cjs.js b/test/form/samples/internal-conflict-resolution/_expected/cjs.js similarity index 100% rename from test/form/internal-conflict-resolution/_expected/cjs.js rename to test/form/samples/internal-conflict-resolution/_expected/cjs.js diff --git a/test/form/internal-conflict-resolution/_expected/es.js b/test/form/samples/internal-conflict-resolution/_expected/es.js similarity index 100% rename from test/form/internal-conflict-resolution/_expected/es.js rename to test/form/samples/internal-conflict-resolution/_expected/es.js diff --git a/test/form/internal-conflict-resolution/_expected/iife.js b/test/form/samples/internal-conflict-resolution/_expected/iife.js similarity index 100% rename from test/form/internal-conflict-resolution/_expected/iife.js rename to test/form/samples/internal-conflict-resolution/_expected/iife.js diff --git a/test/form/internal-conflict-resolution/_expected/umd.js b/test/form/samples/internal-conflict-resolution/_expected/umd.js similarity index 100% rename from test/form/internal-conflict-resolution/_expected/umd.js rename to test/form/samples/internal-conflict-resolution/_expected/umd.js diff --git a/test/form/internal-conflict-resolution/bar.js b/test/form/samples/internal-conflict-resolution/bar.js similarity index 100% rename from test/form/internal-conflict-resolution/bar.js rename to test/form/samples/internal-conflict-resolution/bar.js diff --git a/test/form/internal-conflict-resolution/foo.js b/test/form/samples/internal-conflict-resolution/foo.js similarity index 100% rename from test/form/internal-conflict-resolution/foo.js rename to test/form/samples/internal-conflict-resolution/foo.js diff --git a/test/form/internal-conflict-resolution/main.js b/test/form/samples/internal-conflict-resolution/main.js similarity index 100% rename from test/form/internal-conflict-resolution/main.js rename to test/form/samples/internal-conflict-resolution/main.js diff --git a/test/form/interop-false/_config.js b/test/form/samples/interop-false/_config.js similarity index 100% rename from test/form/interop-false/_config.js rename to test/form/samples/interop-false/_config.js diff --git a/test/form/interop-false/_expected/amd.js b/test/form/samples/interop-false/_expected/amd.js similarity index 100% rename from test/form/interop-false/_expected/amd.js rename to test/form/samples/interop-false/_expected/amd.js diff --git a/test/form/interop-false/_expected/cjs.js b/test/form/samples/interop-false/_expected/cjs.js similarity index 100% rename from test/form/interop-false/_expected/cjs.js rename to test/form/samples/interop-false/_expected/cjs.js diff --git a/test/form/interop-false/_expected/es.js b/test/form/samples/interop-false/_expected/es.js similarity index 100% rename from test/form/interop-false/_expected/es.js rename to test/form/samples/interop-false/_expected/es.js diff --git a/test/form/interop-false/_expected/iife.js b/test/form/samples/interop-false/_expected/iife.js similarity index 100% rename from test/form/interop-false/_expected/iife.js rename to test/form/samples/interop-false/_expected/iife.js diff --git a/test/form/interop-false/_expected/umd.js b/test/form/samples/interop-false/_expected/umd.js similarity index 100% rename from test/form/interop-false/_expected/umd.js rename to test/form/samples/interop-false/_expected/umd.js diff --git a/test/form/interop-false/main.js b/test/form/samples/interop-false/main.js similarity index 100% rename from test/form/interop-false/main.js rename to test/form/samples/interop-false/main.js diff --git a/test/form/intro-and-outro/_config.js b/test/form/samples/intro-and-outro/_config.js similarity index 100% rename from test/form/intro-and-outro/_config.js rename to test/form/samples/intro-and-outro/_config.js diff --git a/test/form/intro-and-outro/_expected/amd.js b/test/form/samples/intro-and-outro/_expected/amd.js similarity index 100% rename from test/form/intro-and-outro/_expected/amd.js rename to test/form/samples/intro-and-outro/_expected/amd.js diff --git a/test/form/intro-and-outro/_expected/cjs.js b/test/form/samples/intro-and-outro/_expected/cjs.js similarity index 100% rename from test/form/intro-and-outro/_expected/cjs.js rename to test/form/samples/intro-and-outro/_expected/cjs.js diff --git a/test/form/intro-and-outro/_expected/es.js b/test/form/samples/intro-and-outro/_expected/es.js similarity index 100% rename from test/form/intro-and-outro/_expected/es.js rename to test/form/samples/intro-and-outro/_expected/es.js diff --git a/test/form/intro-and-outro/_expected/iife.js b/test/form/samples/intro-and-outro/_expected/iife.js similarity index 100% rename from test/form/intro-and-outro/_expected/iife.js rename to test/form/samples/intro-and-outro/_expected/iife.js diff --git a/test/form/intro-and-outro/_expected/umd.js b/test/form/samples/intro-and-outro/_expected/umd.js similarity index 100% rename from test/form/intro-and-outro/_expected/umd.js rename to test/form/samples/intro-and-outro/_expected/umd.js diff --git a/test/form/intro-and-outro/main.js b/test/form/samples/intro-and-outro/main.js similarity index 100% rename from test/form/intro-and-outro/main.js rename to test/form/samples/intro-and-outro/main.js diff --git a/test/form/legacy-getter/_config.js b/test/form/samples/legacy-getter/_config.js similarity index 100% rename from test/form/legacy-getter/_config.js rename to test/form/samples/legacy-getter/_config.js diff --git a/test/form/legacy-getter/_expected/amd.js b/test/form/samples/legacy-getter/_expected/amd.js similarity index 100% rename from test/form/legacy-getter/_expected/amd.js rename to test/form/samples/legacy-getter/_expected/amd.js diff --git a/test/form/legacy-getter/_expected/cjs.js b/test/form/samples/legacy-getter/_expected/cjs.js similarity index 100% rename from test/form/legacy-getter/_expected/cjs.js rename to test/form/samples/legacy-getter/_expected/cjs.js diff --git a/test/form/legacy-getter/_expected/es.js b/test/form/samples/legacy-getter/_expected/es.js similarity index 100% rename from test/form/legacy-getter/_expected/es.js rename to test/form/samples/legacy-getter/_expected/es.js diff --git a/test/form/legacy-getter/_expected/iife.js b/test/form/samples/legacy-getter/_expected/iife.js similarity index 100% rename from test/form/legacy-getter/_expected/iife.js rename to test/form/samples/legacy-getter/_expected/iife.js diff --git a/test/form/legacy-getter/_expected/umd.js b/test/form/samples/legacy-getter/_expected/umd.js similarity index 100% rename from test/form/legacy-getter/_expected/umd.js rename to test/form/samples/legacy-getter/_expected/umd.js diff --git a/test/form/legacy-getter/browserStuff.js b/test/form/samples/legacy-getter/browserStuff.js similarity index 100% rename from test/form/legacy-getter/browserStuff.js rename to test/form/samples/legacy-getter/browserStuff.js diff --git a/test/form/legacy-getter/main.js b/test/form/samples/legacy-getter/main.js similarity index 100% rename from test/form/legacy-getter/main.js rename to test/form/samples/legacy-getter/main.js diff --git a/test/form/legacy-reified-namespace/_config.js b/test/form/samples/legacy-reified-namespace/_config.js similarity index 100% rename from test/form/legacy-reified-namespace/_config.js rename to test/form/samples/legacy-reified-namespace/_config.js diff --git a/test/form/legacy-reified-namespace/_expected/amd.js b/test/form/samples/legacy-reified-namespace/_expected/amd.js similarity index 100% rename from test/form/legacy-reified-namespace/_expected/amd.js rename to test/form/samples/legacy-reified-namespace/_expected/amd.js diff --git a/test/form/legacy-reified-namespace/_expected/cjs.js b/test/form/samples/legacy-reified-namespace/_expected/cjs.js similarity index 100% rename from test/form/legacy-reified-namespace/_expected/cjs.js rename to test/form/samples/legacy-reified-namespace/_expected/cjs.js diff --git a/test/form/legacy-reified-namespace/_expected/es.js b/test/form/samples/legacy-reified-namespace/_expected/es.js similarity index 100% rename from test/form/legacy-reified-namespace/_expected/es.js rename to test/form/samples/legacy-reified-namespace/_expected/es.js diff --git a/test/form/legacy-reified-namespace/_expected/iife.js b/test/form/samples/legacy-reified-namespace/_expected/iife.js similarity index 100% rename from test/form/legacy-reified-namespace/_expected/iife.js rename to test/form/samples/legacy-reified-namespace/_expected/iife.js diff --git a/test/form/legacy-reified-namespace/_expected/umd.js b/test/form/samples/legacy-reified-namespace/_expected/umd.js similarity index 100% rename from test/form/legacy-reified-namespace/_expected/umd.js rename to test/form/samples/legacy-reified-namespace/_expected/umd.js diff --git a/test/form/legacy-reified-namespace/main.js b/test/form/samples/legacy-reified-namespace/main.js similarity index 100% rename from test/form/legacy-reified-namespace/main.js rename to test/form/samples/legacy-reified-namespace/main.js diff --git a/test/form/legacy-reified-namespace/namespace.js b/test/form/samples/legacy-reified-namespace/namespace.js similarity index 100% rename from test/form/legacy-reified-namespace/namespace.js rename to test/form/samples/legacy-reified-namespace/namespace.js diff --git a/test/form/legacy/_config.js b/test/form/samples/legacy/_config.js similarity index 100% rename from test/form/legacy/_config.js rename to test/form/samples/legacy/_config.js diff --git a/test/form/legacy/_expected/amd.js b/test/form/samples/legacy/_expected/amd.js similarity index 100% rename from test/form/legacy/_expected/amd.js rename to test/form/samples/legacy/_expected/amd.js diff --git a/test/form/legacy/_expected/cjs.js b/test/form/samples/legacy/_expected/cjs.js similarity index 100% rename from test/form/legacy/_expected/cjs.js rename to test/form/samples/legacy/_expected/cjs.js diff --git a/test/form/legacy/_expected/es.js b/test/form/samples/legacy/_expected/es.js similarity index 100% rename from test/form/legacy/_expected/es.js rename to test/form/samples/legacy/_expected/es.js diff --git a/test/form/legacy/_expected/iife.js b/test/form/samples/legacy/_expected/iife.js similarity index 100% rename from test/form/legacy/_expected/iife.js rename to test/form/samples/legacy/_expected/iife.js diff --git a/test/form/legacy/_expected/umd.js b/test/form/samples/legacy/_expected/umd.js similarity index 100% rename from test/form/legacy/_expected/umd.js rename to test/form/samples/legacy/_expected/umd.js diff --git a/test/form/legacy/main.js b/test/form/samples/legacy/main.js similarity index 100% rename from test/form/legacy/main.js rename to test/form/samples/legacy/main.js diff --git a/test/form/legacy/namespace.js b/test/form/samples/legacy/namespace.js similarity index 100% rename from test/form/legacy/namespace.js rename to test/form/samples/legacy/namespace.js diff --git a/test/form/module-name-scoped-package/_config.js b/test/form/samples/module-name-scoped-package/_config.js similarity index 100% rename from test/form/module-name-scoped-package/_config.js rename to test/form/samples/module-name-scoped-package/_config.js diff --git a/test/form/module-name-scoped-package/_expected/amd.js b/test/form/samples/module-name-scoped-package/_expected/amd.js similarity index 100% rename from test/form/module-name-scoped-package/_expected/amd.js rename to test/form/samples/module-name-scoped-package/_expected/amd.js diff --git a/test/form/module-name-scoped-package/_expected/cjs.js b/test/form/samples/module-name-scoped-package/_expected/cjs.js similarity index 100% rename from test/form/module-name-scoped-package/_expected/cjs.js rename to test/form/samples/module-name-scoped-package/_expected/cjs.js diff --git a/test/form/module-name-scoped-package/_expected/es.js b/test/form/samples/module-name-scoped-package/_expected/es.js similarity index 100% rename from test/form/module-name-scoped-package/_expected/es.js rename to test/form/samples/module-name-scoped-package/_expected/es.js diff --git a/test/form/module-name-scoped-package/_expected/iife.js b/test/form/samples/module-name-scoped-package/_expected/iife.js similarity index 100% rename from test/form/module-name-scoped-package/_expected/iife.js rename to test/form/samples/module-name-scoped-package/_expected/iife.js diff --git a/test/form/module-name-scoped-package/_expected/umd.js b/test/form/samples/module-name-scoped-package/_expected/umd.js similarity index 100% rename from test/form/module-name-scoped-package/_expected/umd.js rename to test/form/samples/module-name-scoped-package/_expected/umd.js diff --git a/test/form/module-name-scoped-package/main.js b/test/form/samples/module-name-scoped-package/main.js similarity index 100% rename from test/form/module-name-scoped-package/main.js rename to test/form/samples/module-name-scoped-package/main.js diff --git a/test/form/module-name-wat/_config.js b/test/form/samples/module-name-wat/_config.js similarity index 100% rename from test/form/module-name-wat/_config.js rename to test/form/samples/module-name-wat/_config.js diff --git a/test/form/module-name-wat/_expected/amd.js b/test/form/samples/module-name-wat/_expected/amd.js similarity index 100% rename from test/form/module-name-wat/_expected/amd.js rename to test/form/samples/module-name-wat/_expected/amd.js diff --git a/test/form/module-name-wat/_expected/cjs.js b/test/form/samples/module-name-wat/_expected/cjs.js similarity index 100% rename from test/form/module-name-wat/_expected/cjs.js rename to test/form/samples/module-name-wat/_expected/cjs.js diff --git a/test/form/module-name-wat/_expected/es.js b/test/form/samples/module-name-wat/_expected/es.js similarity index 100% rename from test/form/module-name-wat/_expected/es.js rename to test/form/samples/module-name-wat/_expected/es.js diff --git a/test/form/module-name-wat/_expected/iife.js b/test/form/samples/module-name-wat/_expected/iife.js similarity index 100% rename from test/form/module-name-wat/_expected/iife.js rename to test/form/samples/module-name-wat/_expected/iife.js diff --git a/test/form/module-name-wat/_expected/umd.js b/test/form/samples/module-name-wat/_expected/umd.js similarity index 100% rename from test/form/module-name-wat/_expected/umd.js rename to test/form/samples/module-name-wat/_expected/umd.js diff --git a/test/form/module-name-wat/main.js b/test/form/samples/module-name-wat/main.js similarity index 100% rename from test/form/module-name-wat/main.js rename to test/form/samples/module-name-wat/main.js diff --git a/test/form/module-name-with-dashes/_config.js b/test/form/samples/module-name-with-dashes/_config.js similarity index 100% rename from test/form/module-name-with-dashes/_config.js rename to test/form/samples/module-name-with-dashes/_config.js diff --git a/test/form/module-name-with-dashes/_expected/amd.js b/test/form/samples/module-name-with-dashes/_expected/amd.js similarity index 100% rename from test/form/module-name-with-dashes/_expected/amd.js rename to test/form/samples/module-name-with-dashes/_expected/amd.js diff --git a/test/form/module-name-with-dashes/_expected/cjs.js b/test/form/samples/module-name-with-dashes/_expected/cjs.js similarity index 100% rename from test/form/module-name-with-dashes/_expected/cjs.js rename to test/form/samples/module-name-with-dashes/_expected/cjs.js diff --git a/test/form/module-name-with-dashes/_expected/es.js b/test/form/samples/module-name-with-dashes/_expected/es.js similarity index 100% rename from test/form/module-name-with-dashes/_expected/es.js rename to test/form/samples/module-name-with-dashes/_expected/es.js diff --git a/test/form/module-name-with-dashes/_expected/iife.js b/test/form/samples/module-name-with-dashes/_expected/iife.js similarity index 100% rename from test/form/module-name-with-dashes/_expected/iife.js rename to test/form/samples/module-name-with-dashes/_expected/iife.js diff --git a/test/form/module-name-with-dashes/_expected/umd.js b/test/form/samples/module-name-with-dashes/_expected/umd.js similarity index 100% rename from test/form/module-name-with-dashes/_expected/umd.js rename to test/form/samples/module-name-with-dashes/_expected/umd.js diff --git a/test/form/module-name-with-dashes/main.js b/test/form/samples/module-name-with-dashes/main.js similarity index 100% rename from test/form/module-name-with-dashes/main.js rename to test/form/samples/module-name-with-dashes/main.js diff --git a/test/form/multiple-exports/_config.js b/test/form/samples/multiple-exports/_config.js similarity index 100% rename from test/form/multiple-exports/_config.js rename to test/form/samples/multiple-exports/_config.js diff --git a/test/form/multiple-exports/_expected/amd.js b/test/form/samples/multiple-exports/_expected/amd.js similarity index 100% rename from test/form/multiple-exports/_expected/amd.js rename to test/form/samples/multiple-exports/_expected/amd.js diff --git a/test/form/multiple-exports/_expected/cjs.js b/test/form/samples/multiple-exports/_expected/cjs.js similarity index 100% rename from test/form/multiple-exports/_expected/cjs.js rename to test/form/samples/multiple-exports/_expected/cjs.js diff --git a/test/form/multiple-exports/_expected/es.js b/test/form/samples/multiple-exports/_expected/es.js similarity index 100% rename from test/form/multiple-exports/_expected/es.js rename to test/form/samples/multiple-exports/_expected/es.js diff --git a/test/form/multiple-exports/_expected/iife.js b/test/form/samples/multiple-exports/_expected/iife.js similarity index 100% rename from test/form/multiple-exports/_expected/iife.js rename to test/form/samples/multiple-exports/_expected/iife.js diff --git a/test/form/multiple-exports/_expected/umd.js b/test/form/samples/multiple-exports/_expected/umd.js similarity index 100% rename from test/form/multiple-exports/_expected/umd.js rename to test/form/samples/multiple-exports/_expected/umd.js diff --git a/test/form/multiple-exports/main.js b/test/form/samples/multiple-exports/main.js similarity index 100% rename from test/form/multiple-exports/main.js rename to test/form/samples/multiple-exports/main.js diff --git a/test/form/namespace-optimization-b/_config.js b/test/form/samples/namespace-optimization-b/_config.js similarity index 100% rename from test/form/namespace-optimization-b/_config.js rename to test/form/samples/namespace-optimization-b/_config.js diff --git a/test/form/namespace-optimization-b/_expected/amd.js b/test/form/samples/namespace-optimization-b/_expected/amd.js similarity index 100% rename from test/form/namespace-optimization-b/_expected/amd.js rename to test/form/samples/namespace-optimization-b/_expected/amd.js diff --git a/test/form/namespace-optimization-b/_expected/cjs.js b/test/form/samples/namespace-optimization-b/_expected/cjs.js similarity index 100% rename from test/form/namespace-optimization-b/_expected/cjs.js rename to test/form/samples/namespace-optimization-b/_expected/cjs.js diff --git a/test/form/namespace-optimization-b/_expected/es.js b/test/form/samples/namespace-optimization-b/_expected/es.js similarity index 100% rename from test/form/namespace-optimization-b/_expected/es.js rename to test/form/samples/namespace-optimization-b/_expected/es.js diff --git a/test/form/namespace-optimization-b/_expected/iife.js b/test/form/samples/namespace-optimization-b/_expected/iife.js similarity index 100% rename from test/form/namespace-optimization-b/_expected/iife.js rename to test/form/samples/namespace-optimization-b/_expected/iife.js diff --git a/test/form/namespace-optimization-b/_expected/umd.js b/test/form/samples/namespace-optimization-b/_expected/umd.js similarity index 100% rename from test/form/namespace-optimization-b/_expected/umd.js rename to test/form/samples/namespace-optimization-b/_expected/umd.js diff --git a/test/form/namespace-optimization-b/foo.js b/test/form/samples/namespace-optimization-b/foo.js similarity index 100% rename from test/form/namespace-optimization-b/foo.js rename to test/form/samples/namespace-optimization-b/foo.js diff --git a/test/form/namespace-optimization-b/main.js b/test/form/samples/namespace-optimization-b/main.js similarity index 100% rename from test/form/namespace-optimization-b/main.js rename to test/form/samples/namespace-optimization-b/main.js diff --git a/test/form/namespace-optimization-computed-string/_config.js b/test/form/samples/namespace-optimization-computed-string/_config.js similarity index 100% rename from test/form/namespace-optimization-computed-string/_config.js rename to test/form/samples/namespace-optimization-computed-string/_config.js diff --git a/test/form/namespace-optimization-computed-string/_expected/amd.js b/test/form/samples/namespace-optimization-computed-string/_expected/amd.js similarity index 100% rename from test/form/namespace-optimization-computed-string/_expected/amd.js rename to test/form/samples/namespace-optimization-computed-string/_expected/amd.js diff --git a/test/form/namespace-optimization-computed-string/_expected/cjs.js b/test/form/samples/namespace-optimization-computed-string/_expected/cjs.js similarity index 100% rename from test/form/namespace-optimization-computed-string/_expected/cjs.js rename to test/form/samples/namespace-optimization-computed-string/_expected/cjs.js diff --git a/test/form/namespace-optimization-computed-string/_expected/es.js b/test/form/samples/namespace-optimization-computed-string/_expected/es.js similarity index 100% rename from test/form/namespace-optimization-computed-string/_expected/es.js rename to test/form/samples/namespace-optimization-computed-string/_expected/es.js diff --git a/test/form/namespace-optimization-computed-string/_expected/iife.js b/test/form/samples/namespace-optimization-computed-string/_expected/iife.js similarity index 100% rename from test/form/namespace-optimization-computed-string/_expected/iife.js rename to test/form/samples/namespace-optimization-computed-string/_expected/iife.js diff --git a/test/form/namespace-optimization-computed-string/_expected/umd.js b/test/form/samples/namespace-optimization-computed-string/_expected/umd.js similarity index 100% rename from test/form/namespace-optimization-computed-string/_expected/umd.js rename to test/form/samples/namespace-optimization-computed-string/_expected/umd.js diff --git a/test/form/namespace-optimization-computed-string/bar.js b/test/form/samples/namespace-optimization-computed-string/bar.js similarity index 100% rename from test/form/namespace-optimization-computed-string/bar.js rename to test/form/samples/namespace-optimization-computed-string/bar.js diff --git a/test/form/namespace-optimization-computed-string/foo.js b/test/form/samples/namespace-optimization-computed-string/foo.js similarity index 100% rename from test/form/namespace-optimization-computed-string/foo.js rename to test/form/samples/namespace-optimization-computed-string/foo.js diff --git a/test/form/namespace-optimization-computed-string/main.js b/test/form/samples/namespace-optimization-computed-string/main.js similarity index 100% rename from test/form/namespace-optimization-computed-string/main.js rename to test/form/samples/namespace-optimization-computed-string/main.js diff --git a/test/form/namespace-optimization-computed-string/quux.js b/test/form/samples/namespace-optimization-computed-string/quux.js similarity index 100% rename from test/form/namespace-optimization-computed-string/quux.js rename to test/form/samples/namespace-optimization-computed-string/quux.js diff --git a/test/form/namespace-optimization/_config.js b/test/form/samples/namespace-optimization/_config.js similarity index 100% rename from test/form/namespace-optimization/_config.js rename to test/form/samples/namespace-optimization/_config.js diff --git a/test/form/namespace-optimization/_expected/amd.js b/test/form/samples/namespace-optimization/_expected/amd.js similarity index 100% rename from test/form/namespace-optimization/_expected/amd.js rename to test/form/samples/namespace-optimization/_expected/amd.js diff --git a/test/form/namespace-optimization/_expected/cjs.js b/test/form/samples/namespace-optimization/_expected/cjs.js similarity index 100% rename from test/form/namespace-optimization/_expected/cjs.js rename to test/form/samples/namespace-optimization/_expected/cjs.js diff --git a/test/form/namespace-optimization/_expected/es.js b/test/form/samples/namespace-optimization/_expected/es.js similarity index 100% rename from test/form/namespace-optimization/_expected/es.js rename to test/form/samples/namespace-optimization/_expected/es.js diff --git a/test/form/namespace-optimization/_expected/iife.js b/test/form/samples/namespace-optimization/_expected/iife.js similarity index 100% rename from test/form/namespace-optimization/_expected/iife.js rename to test/form/samples/namespace-optimization/_expected/iife.js diff --git a/test/form/namespace-optimization/_expected/umd.js b/test/form/samples/namespace-optimization/_expected/umd.js similarity index 100% rename from test/form/namespace-optimization/_expected/umd.js rename to test/form/samples/namespace-optimization/_expected/umd.js diff --git a/test/form/namespace-optimization/bar.js b/test/form/samples/namespace-optimization/bar.js similarity index 100% rename from test/form/namespace-optimization/bar.js rename to test/form/samples/namespace-optimization/bar.js diff --git a/test/form/namespace-optimization/foo.js b/test/form/samples/namespace-optimization/foo.js similarity index 100% rename from test/form/namespace-optimization/foo.js rename to test/form/samples/namespace-optimization/foo.js diff --git a/test/form/namespace-optimization/main.js b/test/form/samples/namespace-optimization/main.js similarity index 100% rename from test/form/namespace-optimization/main.js rename to test/form/samples/namespace-optimization/main.js diff --git a/test/form/namespace-optimization/quux.js b/test/form/samples/namespace-optimization/quux.js similarity index 100% rename from test/form/namespace-optimization/quux.js rename to test/form/samples/namespace-optimization/quux.js diff --git a/test/form/namespaced-default-exports/_config.js b/test/form/samples/namespaced-default-exports/_config.js similarity index 100% rename from test/form/namespaced-default-exports/_config.js rename to test/form/samples/namespaced-default-exports/_config.js diff --git a/test/form/namespaced-default-exports/_expected/amd.js b/test/form/samples/namespaced-default-exports/_expected/amd.js similarity index 100% rename from test/form/namespaced-default-exports/_expected/amd.js rename to test/form/samples/namespaced-default-exports/_expected/amd.js diff --git a/test/form/namespaced-default-exports/_expected/cjs.js b/test/form/samples/namespaced-default-exports/_expected/cjs.js similarity index 100% rename from test/form/namespaced-default-exports/_expected/cjs.js rename to test/form/samples/namespaced-default-exports/_expected/cjs.js diff --git a/test/form/namespaced-default-exports/_expected/es.js b/test/form/samples/namespaced-default-exports/_expected/es.js similarity index 100% rename from test/form/namespaced-default-exports/_expected/es.js rename to test/form/samples/namespaced-default-exports/_expected/es.js diff --git a/test/form/namespaced-default-exports/_expected/iife.js b/test/form/samples/namespaced-default-exports/_expected/iife.js similarity index 100% rename from test/form/namespaced-default-exports/_expected/iife.js rename to test/form/samples/namespaced-default-exports/_expected/iife.js diff --git a/test/form/namespaced-default-exports/_expected/umd.js b/test/form/samples/namespaced-default-exports/_expected/umd.js similarity index 100% rename from test/form/namespaced-default-exports/_expected/umd.js rename to test/form/samples/namespaced-default-exports/_expected/umd.js diff --git a/test/form/namespaced-default-exports/main.js b/test/form/samples/namespaced-default-exports/main.js similarity index 100% rename from test/form/namespaced-default-exports/main.js rename to test/form/samples/namespaced-default-exports/main.js diff --git a/test/form/namespaced-named-exports/_config.js b/test/form/samples/namespaced-named-exports/_config.js similarity index 100% rename from test/form/namespaced-named-exports/_config.js rename to test/form/samples/namespaced-named-exports/_config.js diff --git a/test/form/namespaced-named-exports/_expected/amd.js b/test/form/samples/namespaced-named-exports/_expected/amd.js similarity index 100% rename from test/form/namespaced-named-exports/_expected/amd.js rename to test/form/samples/namespaced-named-exports/_expected/amd.js diff --git a/test/form/namespaced-named-exports/_expected/cjs.js b/test/form/samples/namespaced-named-exports/_expected/cjs.js similarity index 100% rename from test/form/namespaced-named-exports/_expected/cjs.js rename to test/form/samples/namespaced-named-exports/_expected/cjs.js diff --git a/test/form/namespaced-named-exports/_expected/es.js b/test/form/samples/namespaced-named-exports/_expected/es.js similarity index 100% rename from test/form/namespaced-named-exports/_expected/es.js rename to test/form/samples/namespaced-named-exports/_expected/es.js diff --git a/test/form/namespaced-named-exports/_expected/iife.js b/test/form/samples/namespaced-named-exports/_expected/iife.js similarity index 100% rename from test/form/namespaced-named-exports/_expected/iife.js rename to test/form/samples/namespaced-named-exports/_expected/iife.js diff --git a/test/form/namespaced-named-exports/_expected/umd.js b/test/form/samples/namespaced-named-exports/_expected/umd.js similarity index 100% rename from test/form/namespaced-named-exports/_expected/umd.js rename to test/form/samples/namespaced-named-exports/_expected/umd.js diff --git a/test/form/namespaced-named-exports/main.js b/test/form/samples/namespaced-named-exports/main.js similarity index 100% rename from test/form/namespaced-named-exports/main.js rename to test/form/samples/namespaced-named-exports/main.js diff --git a/test/form/no-imports-or-exports/_config.js b/test/form/samples/no-imports-or-exports/_config.js similarity index 100% rename from test/form/no-imports-or-exports/_config.js rename to test/form/samples/no-imports-or-exports/_config.js diff --git a/test/form/no-imports-or-exports/_expected/amd.js b/test/form/samples/no-imports-or-exports/_expected/amd.js similarity index 100% rename from test/form/no-imports-or-exports/_expected/amd.js rename to test/form/samples/no-imports-or-exports/_expected/amd.js diff --git a/test/form/no-imports-or-exports/_expected/cjs.js b/test/form/samples/no-imports-or-exports/_expected/cjs.js similarity index 100% rename from test/form/no-imports-or-exports/_expected/cjs.js rename to test/form/samples/no-imports-or-exports/_expected/cjs.js diff --git a/test/form/no-imports-or-exports/_expected/es.js b/test/form/samples/no-imports-or-exports/_expected/es.js similarity index 100% rename from test/form/no-imports-or-exports/_expected/es.js rename to test/form/samples/no-imports-or-exports/_expected/es.js diff --git a/test/form/no-imports-or-exports/_expected/iife.js b/test/form/samples/no-imports-or-exports/_expected/iife.js similarity index 100% rename from test/form/no-imports-or-exports/_expected/iife.js rename to test/form/samples/no-imports-or-exports/_expected/iife.js diff --git a/test/form/no-imports-or-exports/_expected/umd.js b/test/form/samples/no-imports-or-exports/_expected/umd.js similarity index 100% rename from test/form/no-imports-or-exports/_expected/umd.js rename to test/form/samples/no-imports-or-exports/_expected/umd.js diff --git a/test/form/no-imports-or-exports/main.js b/test/form/samples/no-imports-or-exports/main.js similarity index 100% rename from test/form/no-imports-or-exports/main.js rename to test/form/samples/no-imports-or-exports/main.js diff --git a/test/form/no-treeshake-conflict/_config.js b/test/form/samples/no-treeshake-conflict/_config.js similarity index 100% rename from test/form/no-treeshake-conflict/_config.js rename to test/form/samples/no-treeshake-conflict/_config.js diff --git a/test/form/no-treeshake-conflict/_expected/amd.js b/test/form/samples/no-treeshake-conflict/_expected/amd.js similarity index 100% rename from test/form/no-treeshake-conflict/_expected/amd.js rename to test/form/samples/no-treeshake-conflict/_expected/amd.js diff --git a/test/form/no-treeshake-conflict/_expected/cjs.js b/test/form/samples/no-treeshake-conflict/_expected/cjs.js similarity index 100% rename from test/form/no-treeshake-conflict/_expected/cjs.js rename to test/form/samples/no-treeshake-conflict/_expected/cjs.js diff --git a/test/form/no-treeshake-conflict/_expected/es.js b/test/form/samples/no-treeshake-conflict/_expected/es.js similarity index 100% rename from test/form/no-treeshake-conflict/_expected/es.js rename to test/form/samples/no-treeshake-conflict/_expected/es.js diff --git a/test/form/no-treeshake-conflict/_expected/es6.js b/test/form/samples/no-treeshake-conflict/_expected/es6.js similarity index 100% rename from test/form/no-treeshake-conflict/_expected/es6.js rename to test/form/samples/no-treeshake-conflict/_expected/es6.js diff --git a/test/form/no-treeshake-conflict/_expected/iife.js b/test/form/samples/no-treeshake-conflict/_expected/iife.js similarity index 100% rename from test/form/no-treeshake-conflict/_expected/iife.js rename to test/form/samples/no-treeshake-conflict/_expected/iife.js diff --git a/test/form/no-treeshake-conflict/_expected/umd.js b/test/form/samples/no-treeshake-conflict/_expected/umd.js similarity index 100% rename from test/form/no-treeshake-conflict/_expected/umd.js rename to test/form/samples/no-treeshake-conflict/_expected/umd.js diff --git a/test/form/no-treeshake-conflict/main.js b/test/form/samples/no-treeshake-conflict/main.js similarity index 100% rename from test/form/no-treeshake-conflict/main.js rename to test/form/samples/no-treeshake-conflict/main.js diff --git a/test/form/no-treeshake-conflict/other.js b/test/form/samples/no-treeshake-conflict/other.js similarity index 100% rename from test/form/no-treeshake-conflict/other.js rename to test/form/samples/no-treeshake-conflict/other.js diff --git a/test/form/no-treeshake/_config.js b/test/form/samples/no-treeshake/_config.js similarity index 100% rename from test/form/no-treeshake/_config.js rename to test/form/samples/no-treeshake/_config.js diff --git a/test/form/no-treeshake/_expected/amd.js b/test/form/samples/no-treeshake/_expected/amd.js similarity index 100% rename from test/form/no-treeshake/_expected/amd.js rename to test/form/samples/no-treeshake/_expected/amd.js diff --git a/test/form/no-treeshake/_expected/cjs.js b/test/form/samples/no-treeshake/_expected/cjs.js similarity index 100% rename from test/form/no-treeshake/_expected/cjs.js rename to test/form/samples/no-treeshake/_expected/cjs.js diff --git a/test/form/no-treeshake/_expected/es.js b/test/form/samples/no-treeshake/_expected/es.js similarity index 100% rename from test/form/no-treeshake/_expected/es.js rename to test/form/samples/no-treeshake/_expected/es.js diff --git a/test/form/no-treeshake/_expected/iife.js b/test/form/samples/no-treeshake/_expected/iife.js similarity index 100% rename from test/form/no-treeshake/_expected/iife.js rename to test/form/samples/no-treeshake/_expected/iife.js diff --git a/test/form/no-treeshake/_expected/umd.js b/test/form/samples/no-treeshake/_expected/umd.js similarity index 100% rename from test/form/no-treeshake/_expected/umd.js rename to test/form/samples/no-treeshake/_expected/umd.js diff --git a/test/form/no-treeshake/foo.js b/test/form/samples/no-treeshake/foo.js similarity index 100% rename from test/form/no-treeshake/foo.js rename to test/form/samples/no-treeshake/foo.js diff --git a/test/form/no-treeshake/main.js b/test/form/samples/no-treeshake/main.js similarity index 100% rename from test/form/no-treeshake/main.js rename to test/form/samples/no-treeshake/main.js diff --git a/test/form/no-treeshake/quux.js b/test/form/samples/no-treeshake/quux.js similarity index 100% rename from test/form/no-treeshake/quux.js rename to test/form/samples/no-treeshake/quux.js diff --git a/test/form/non-empty-block-statement/_config.js b/test/form/samples/non-empty-block-statement/_config.js similarity index 100% rename from test/form/non-empty-block-statement/_config.js rename to test/form/samples/non-empty-block-statement/_config.js diff --git a/test/form/non-empty-block-statement/_expected/amd.js b/test/form/samples/non-empty-block-statement/_expected/amd.js similarity index 100% rename from test/form/non-empty-block-statement/_expected/amd.js rename to test/form/samples/non-empty-block-statement/_expected/amd.js diff --git a/test/form/non-empty-block-statement/_expected/cjs.js b/test/form/samples/non-empty-block-statement/_expected/cjs.js similarity index 100% rename from test/form/non-empty-block-statement/_expected/cjs.js rename to test/form/samples/non-empty-block-statement/_expected/cjs.js diff --git a/test/form/non-empty-block-statement/_expected/es.js b/test/form/samples/non-empty-block-statement/_expected/es.js similarity index 100% rename from test/form/non-empty-block-statement/_expected/es.js rename to test/form/samples/non-empty-block-statement/_expected/es.js diff --git a/test/form/non-empty-block-statement/_expected/iife.js b/test/form/samples/non-empty-block-statement/_expected/iife.js similarity index 100% rename from test/form/non-empty-block-statement/_expected/iife.js rename to test/form/samples/non-empty-block-statement/_expected/iife.js diff --git a/test/form/non-empty-block-statement/_expected/umd.js b/test/form/samples/non-empty-block-statement/_expected/umd.js similarity index 100% rename from test/form/non-empty-block-statement/_expected/umd.js rename to test/form/samples/non-empty-block-statement/_expected/umd.js diff --git a/test/form/non-empty-block-statement/main.js b/test/form/samples/non-empty-block-statement/main.js similarity index 100% rename from test/form/non-empty-block-statement/main.js rename to test/form/samples/non-empty-block-statement/main.js diff --git a/test/form/object-destructuring-default-values/_config.js b/test/form/samples/object-destructuring-default-values/_config.js similarity index 100% rename from test/form/object-destructuring-default-values/_config.js rename to test/form/samples/object-destructuring-default-values/_config.js diff --git a/test/form/object-destructuring-default-values/_expected/amd.js b/test/form/samples/object-destructuring-default-values/_expected/amd.js similarity index 100% rename from test/form/object-destructuring-default-values/_expected/amd.js rename to test/form/samples/object-destructuring-default-values/_expected/amd.js diff --git a/test/form/object-destructuring-default-values/_expected/cjs.js b/test/form/samples/object-destructuring-default-values/_expected/cjs.js similarity index 100% rename from test/form/object-destructuring-default-values/_expected/cjs.js rename to test/form/samples/object-destructuring-default-values/_expected/cjs.js diff --git a/test/form/object-destructuring-default-values/_expected/es.js b/test/form/samples/object-destructuring-default-values/_expected/es.js similarity index 100% rename from test/form/object-destructuring-default-values/_expected/es.js rename to test/form/samples/object-destructuring-default-values/_expected/es.js diff --git a/test/form/object-destructuring-default-values/_expected/iife.js b/test/form/samples/object-destructuring-default-values/_expected/iife.js similarity index 100% rename from test/form/object-destructuring-default-values/_expected/iife.js rename to test/form/samples/object-destructuring-default-values/_expected/iife.js diff --git a/test/form/object-destructuring-default-values/_expected/umd.js b/test/form/samples/object-destructuring-default-values/_expected/umd.js similarity index 100% rename from test/form/object-destructuring-default-values/_expected/umd.js rename to test/form/samples/object-destructuring-default-values/_expected/umd.js diff --git a/test/form/object-destructuring-default-values/main.js b/test/form/samples/object-destructuring-default-values/main.js similarity index 100% rename from test/form/object-destructuring-default-values/main.js rename to test/form/samples/object-destructuring-default-values/main.js diff --git a/test/form/paths-function/_config.js b/test/form/samples/paths-function/_config.js similarity index 100% rename from test/form/paths-function/_config.js rename to test/form/samples/paths-function/_config.js diff --git a/test/form/paths-function/_expected/amd.js b/test/form/samples/paths-function/_expected/amd.js similarity index 100% rename from test/form/paths-function/_expected/amd.js rename to test/form/samples/paths-function/_expected/amd.js diff --git a/test/form/paths-function/_expected/cjs.js b/test/form/samples/paths-function/_expected/cjs.js similarity index 100% rename from test/form/paths-function/_expected/cjs.js rename to test/form/samples/paths-function/_expected/cjs.js diff --git a/test/form/paths-function/_expected/es.js b/test/form/samples/paths-function/_expected/es.js similarity index 100% rename from test/form/paths-function/_expected/es.js rename to test/form/samples/paths-function/_expected/es.js diff --git a/test/form/paths-function/_expected/iife.js b/test/form/samples/paths-function/_expected/iife.js similarity index 100% rename from test/form/paths-function/_expected/iife.js rename to test/form/samples/paths-function/_expected/iife.js diff --git a/test/form/paths-function/_expected/umd.js b/test/form/samples/paths-function/_expected/umd.js similarity index 100% rename from test/form/paths-function/_expected/umd.js rename to test/form/samples/paths-function/_expected/umd.js diff --git a/test/form/paths-function/main.js b/test/form/samples/paths-function/main.js similarity index 100% rename from test/form/paths-function/main.js rename to test/form/samples/paths-function/main.js diff --git a/test/form/paths-relative/_config.js b/test/form/samples/paths-relative/_config.js similarity index 100% rename from test/form/paths-relative/_config.js rename to test/form/samples/paths-relative/_config.js diff --git a/test/form/paths-relative/_expected/amd.js b/test/form/samples/paths-relative/_expected/amd.js similarity index 100% rename from test/form/paths-relative/_expected/amd.js rename to test/form/samples/paths-relative/_expected/amd.js diff --git a/test/form/paths-relative/_expected/cjs.js b/test/form/samples/paths-relative/_expected/cjs.js similarity index 100% rename from test/form/paths-relative/_expected/cjs.js rename to test/form/samples/paths-relative/_expected/cjs.js diff --git a/test/form/paths-relative/_expected/es.js b/test/form/samples/paths-relative/_expected/es.js similarity index 100% rename from test/form/paths-relative/_expected/es.js rename to test/form/samples/paths-relative/_expected/es.js diff --git a/test/form/paths-relative/_expected/iife.js b/test/form/samples/paths-relative/_expected/iife.js similarity index 100% rename from test/form/paths-relative/_expected/iife.js rename to test/form/samples/paths-relative/_expected/iife.js diff --git a/test/form/paths-relative/_expected/umd.js b/test/form/samples/paths-relative/_expected/umd.js similarity index 100% rename from test/form/paths-relative/_expected/umd.js rename to test/form/samples/paths-relative/_expected/umd.js diff --git a/test/form/paths-relative/main.js b/test/form/samples/paths-relative/main.js similarity index 100% rename from test/form/paths-relative/main.js rename to test/form/samples/paths-relative/main.js diff --git a/test/form/paths/_config.js b/test/form/samples/paths/_config.js similarity index 100% rename from test/form/paths/_config.js rename to test/form/samples/paths/_config.js diff --git a/test/form/paths/_expected/amd.js b/test/form/samples/paths/_expected/amd.js similarity index 100% rename from test/form/paths/_expected/amd.js rename to test/form/samples/paths/_expected/amd.js diff --git a/test/form/paths/_expected/cjs.js b/test/form/samples/paths/_expected/cjs.js similarity index 100% rename from test/form/paths/_expected/cjs.js rename to test/form/samples/paths/_expected/cjs.js diff --git a/test/form/paths/_expected/es.js b/test/form/samples/paths/_expected/es.js similarity index 100% rename from test/form/paths/_expected/es.js rename to test/form/samples/paths/_expected/es.js diff --git a/test/form/paths/_expected/iife.js b/test/form/samples/paths/_expected/iife.js similarity index 100% rename from test/form/paths/_expected/iife.js rename to test/form/samples/paths/_expected/iife.js diff --git a/test/form/paths/_expected/umd.js b/test/form/samples/paths/_expected/umd.js similarity index 100% rename from test/form/paths/_expected/umd.js rename to test/form/samples/paths/_expected/umd.js diff --git a/test/form/paths/main.js b/test/form/samples/paths/main.js similarity index 100% rename from test/form/paths/main.js rename to test/form/samples/paths/main.js diff --git a/test/form/prefer-const/_config.js b/test/form/samples/prefer-const/_config.js similarity index 100% rename from test/form/prefer-const/_config.js rename to test/form/samples/prefer-const/_config.js diff --git a/test/form/prefer-const/_expected/amd.js b/test/form/samples/prefer-const/_expected/amd.js similarity index 100% rename from test/form/prefer-const/_expected/amd.js rename to test/form/samples/prefer-const/_expected/amd.js diff --git a/test/form/prefer-const/_expected/cjs.js b/test/form/samples/prefer-const/_expected/cjs.js similarity index 100% rename from test/form/prefer-const/_expected/cjs.js rename to test/form/samples/prefer-const/_expected/cjs.js diff --git a/test/form/prefer-const/_expected/es.js b/test/form/samples/prefer-const/_expected/es.js similarity index 100% rename from test/form/prefer-const/_expected/es.js rename to test/form/samples/prefer-const/_expected/es.js diff --git a/test/form/prefer-const/_expected/iife.js b/test/form/samples/prefer-const/_expected/iife.js similarity index 100% rename from test/form/prefer-const/_expected/iife.js rename to test/form/samples/prefer-const/_expected/iife.js diff --git a/test/form/prefer-const/_expected/umd.js b/test/form/samples/prefer-const/_expected/umd.js similarity index 100% rename from test/form/prefer-const/_expected/umd.js rename to test/form/samples/prefer-const/_expected/umd.js diff --git a/test/form/prefer-const/main.js b/test/form/samples/prefer-const/main.js similarity index 100% rename from test/form/prefer-const/main.js rename to test/form/samples/prefer-const/main.js diff --git a/test/form/prefer-const/namespace.js b/test/form/samples/prefer-const/namespace.js similarity index 100% rename from test/form/prefer-const/namespace.js rename to test/form/samples/prefer-const/namespace.js diff --git a/test/form/preserve-debugger/_config.js b/test/form/samples/preserve-debugger/_config.js similarity index 100% rename from test/form/preserve-debugger/_config.js rename to test/form/samples/preserve-debugger/_config.js diff --git a/test/form/preserve-debugger/_expected/amd.js b/test/form/samples/preserve-debugger/_expected/amd.js similarity index 100% rename from test/form/preserve-debugger/_expected/amd.js rename to test/form/samples/preserve-debugger/_expected/amd.js diff --git a/test/form/preserve-debugger/_expected/cjs.js b/test/form/samples/preserve-debugger/_expected/cjs.js similarity index 100% rename from test/form/preserve-debugger/_expected/cjs.js rename to test/form/samples/preserve-debugger/_expected/cjs.js diff --git a/test/form/preserve-debugger/_expected/es.js b/test/form/samples/preserve-debugger/_expected/es.js similarity index 100% rename from test/form/preserve-debugger/_expected/es.js rename to test/form/samples/preserve-debugger/_expected/es.js diff --git a/test/form/preserve-debugger/_expected/iife.js b/test/form/samples/preserve-debugger/_expected/iife.js similarity index 100% rename from test/form/preserve-debugger/_expected/iife.js rename to test/form/samples/preserve-debugger/_expected/iife.js diff --git a/test/form/preserve-debugger/_expected/umd.js b/test/form/samples/preserve-debugger/_expected/umd.js similarity index 100% rename from test/form/preserve-debugger/_expected/umd.js rename to test/form/samples/preserve-debugger/_expected/umd.js diff --git a/test/form/preserve-debugger/main.js b/test/form/samples/preserve-debugger/main.js similarity index 100% rename from test/form/preserve-debugger/main.js rename to test/form/samples/preserve-debugger/main.js diff --git a/test/form/preserves-comments-after-imports/_config.js b/test/form/samples/preserves-comments-after-imports/_config.js similarity index 100% rename from test/form/preserves-comments-after-imports/_config.js rename to test/form/samples/preserves-comments-after-imports/_config.js diff --git a/test/form/preserves-comments-after-imports/_expected/amd.js b/test/form/samples/preserves-comments-after-imports/_expected/amd.js similarity index 100% rename from test/form/preserves-comments-after-imports/_expected/amd.js rename to test/form/samples/preserves-comments-after-imports/_expected/amd.js diff --git a/test/form/preserves-comments-after-imports/_expected/cjs.js b/test/form/samples/preserves-comments-after-imports/_expected/cjs.js similarity index 100% rename from test/form/preserves-comments-after-imports/_expected/cjs.js rename to test/form/samples/preserves-comments-after-imports/_expected/cjs.js diff --git a/test/form/preserves-comments-after-imports/_expected/es.js b/test/form/samples/preserves-comments-after-imports/_expected/es.js similarity index 100% rename from test/form/preserves-comments-after-imports/_expected/es.js rename to test/form/samples/preserves-comments-after-imports/_expected/es.js diff --git a/test/form/preserves-comments-after-imports/_expected/iife.js b/test/form/samples/preserves-comments-after-imports/_expected/iife.js similarity index 100% rename from test/form/preserves-comments-after-imports/_expected/iife.js rename to test/form/samples/preserves-comments-after-imports/_expected/iife.js diff --git a/test/form/preserves-comments-after-imports/_expected/umd.js b/test/form/samples/preserves-comments-after-imports/_expected/umd.js similarity index 100% rename from test/form/preserves-comments-after-imports/_expected/umd.js rename to test/form/samples/preserves-comments-after-imports/_expected/umd.js diff --git a/test/form/preserves-comments-after-imports/main.js b/test/form/samples/preserves-comments-after-imports/main.js similarity index 100% rename from test/form/preserves-comments-after-imports/main.js rename to test/form/samples/preserves-comments-after-imports/main.js diff --git a/test/form/preserves-comments-after-imports/number.js b/test/form/samples/preserves-comments-after-imports/number.js similarity index 100% rename from test/form/preserves-comments-after-imports/number.js rename to test/form/samples/preserves-comments-after-imports/number.js diff --git a/test/form/prune-pure-unused-import-array/_config.js b/test/form/samples/prune-pure-unused-import-array/_config.js similarity index 100% rename from test/form/prune-pure-unused-import-array/_config.js rename to test/form/samples/prune-pure-unused-import-array/_config.js diff --git a/test/form/prune-pure-unused-import-array/_expected/amd.js b/test/form/samples/prune-pure-unused-import-array/_expected/amd.js similarity index 100% rename from test/form/prune-pure-unused-import-array/_expected/amd.js rename to test/form/samples/prune-pure-unused-import-array/_expected/amd.js diff --git a/test/form/prune-pure-unused-import-array/_expected/cjs.js b/test/form/samples/prune-pure-unused-import-array/_expected/cjs.js similarity index 100% rename from test/form/prune-pure-unused-import-array/_expected/cjs.js rename to test/form/samples/prune-pure-unused-import-array/_expected/cjs.js diff --git a/test/form/prune-pure-unused-import-array/_expected/es.js b/test/form/samples/prune-pure-unused-import-array/_expected/es.js similarity index 100% rename from test/form/prune-pure-unused-import-array/_expected/es.js rename to test/form/samples/prune-pure-unused-import-array/_expected/es.js diff --git a/test/form/prune-pure-unused-import-array/_expected/iife.js b/test/form/samples/prune-pure-unused-import-array/_expected/iife.js similarity index 100% rename from test/form/prune-pure-unused-import-array/_expected/iife.js rename to test/form/samples/prune-pure-unused-import-array/_expected/iife.js diff --git a/test/form/prune-pure-unused-import-array/_expected/umd.js b/test/form/samples/prune-pure-unused-import-array/_expected/umd.js similarity index 100% rename from test/form/prune-pure-unused-import-array/_expected/umd.js rename to test/form/samples/prune-pure-unused-import-array/_expected/umd.js diff --git a/test/form/prune-pure-unused-import-array/main.js b/test/form/samples/prune-pure-unused-import-array/main.js similarity index 100% rename from test/form/prune-pure-unused-import-array/main.js rename to test/form/samples/prune-pure-unused-import-array/main.js diff --git a/test/form/prune-pure-unused-import-function/_config.js b/test/form/samples/prune-pure-unused-import-function/_config.js similarity index 100% rename from test/form/prune-pure-unused-import-function/_config.js rename to test/form/samples/prune-pure-unused-import-function/_config.js diff --git a/test/form/prune-pure-unused-import-function/_expected/amd.js b/test/form/samples/prune-pure-unused-import-function/_expected/amd.js similarity index 100% rename from test/form/prune-pure-unused-import-function/_expected/amd.js rename to test/form/samples/prune-pure-unused-import-function/_expected/amd.js diff --git a/test/form/prune-pure-unused-import-function/_expected/cjs.js b/test/form/samples/prune-pure-unused-import-function/_expected/cjs.js similarity index 100% rename from test/form/prune-pure-unused-import-function/_expected/cjs.js rename to test/form/samples/prune-pure-unused-import-function/_expected/cjs.js diff --git a/test/form/prune-pure-unused-import-function/_expected/es.js b/test/form/samples/prune-pure-unused-import-function/_expected/es.js similarity index 100% rename from test/form/prune-pure-unused-import-function/_expected/es.js rename to test/form/samples/prune-pure-unused-import-function/_expected/es.js diff --git a/test/form/prune-pure-unused-import-function/_expected/iife.js b/test/form/samples/prune-pure-unused-import-function/_expected/iife.js similarity index 100% rename from test/form/prune-pure-unused-import-function/_expected/iife.js rename to test/form/samples/prune-pure-unused-import-function/_expected/iife.js diff --git a/test/form/prune-pure-unused-import-function/_expected/umd.js b/test/form/samples/prune-pure-unused-import-function/_expected/umd.js similarity index 100% rename from test/form/prune-pure-unused-import-function/_expected/umd.js rename to test/form/samples/prune-pure-unused-import-function/_expected/umd.js diff --git a/test/form/prune-pure-unused-import-function/main.js b/test/form/samples/prune-pure-unused-import-function/main.js similarity index 100% rename from test/form/prune-pure-unused-import-function/main.js rename to test/form/samples/prune-pure-unused-import-function/main.js diff --git a/test/form/prune-pure-unused-import/_config.js b/test/form/samples/prune-pure-unused-import/_config.js similarity index 100% rename from test/form/prune-pure-unused-import/_config.js rename to test/form/samples/prune-pure-unused-import/_config.js diff --git a/test/form/prune-pure-unused-import/_expected/amd.js b/test/form/samples/prune-pure-unused-import/_expected/amd.js similarity index 100% rename from test/form/prune-pure-unused-import/_expected/amd.js rename to test/form/samples/prune-pure-unused-import/_expected/amd.js diff --git a/test/form/prune-pure-unused-import/_expected/cjs.js b/test/form/samples/prune-pure-unused-import/_expected/cjs.js similarity index 100% rename from test/form/prune-pure-unused-import/_expected/cjs.js rename to test/form/samples/prune-pure-unused-import/_expected/cjs.js diff --git a/test/form/prune-pure-unused-import/_expected/es.js b/test/form/samples/prune-pure-unused-import/_expected/es.js similarity index 100% rename from test/form/prune-pure-unused-import/_expected/es.js rename to test/form/samples/prune-pure-unused-import/_expected/es.js diff --git a/test/form/prune-pure-unused-import/_expected/iife.js b/test/form/samples/prune-pure-unused-import/_expected/iife.js similarity index 100% rename from test/form/prune-pure-unused-import/_expected/iife.js rename to test/form/samples/prune-pure-unused-import/_expected/iife.js diff --git a/test/form/prune-pure-unused-import/_expected/umd.js b/test/form/samples/prune-pure-unused-import/_expected/umd.js similarity index 100% rename from test/form/prune-pure-unused-import/_expected/umd.js rename to test/form/samples/prune-pure-unused-import/_expected/umd.js diff --git a/test/form/prune-pure-unused-import/main.js b/test/form/samples/prune-pure-unused-import/main.js similarity index 100% rename from test/form/prune-pure-unused-import/main.js rename to test/form/samples/prune-pure-unused-import/main.js diff --git a/test/form/reexports-from-external/_config.js b/test/form/samples/reexports-from-external/_config.js similarity index 100% rename from test/form/reexports-from-external/_config.js rename to test/form/samples/reexports-from-external/_config.js diff --git a/test/form/reexports-from-external/_expected/amd.js b/test/form/samples/reexports-from-external/_expected/amd.js similarity index 100% rename from test/form/reexports-from-external/_expected/amd.js rename to test/form/samples/reexports-from-external/_expected/amd.js diff --git a/test/form/reexports-from-external/_expected/cjs.js b/test/form/samples/reexports-from-external/_expected/cjs.js similarity index 100% rename from test/form/reexports-from-external/_expected/cjs.js rename to test/form/samples/reexports-from-external/_expected/cjs.js diff --git a/test/form/reexports-from-external/_expected/es.js b/test/form/samples/reexports-from-external/_expected/es.js similarity index 100% rename from test/form/reexports-from-external/_expected/es.js rename to test/form/samples/reexports-from-external/_expected/es.js diff --git a/test/form/reexports-from-external/_expected/iife.js b/test/form/samples/reexports-from-external/_expected/iife.js similarity index 100% rename from test/form/reexports-from-external/_expected/iife.js rename to test/form/samples/reexports-from-external/_expected/iife.js diff --git a/test/form/reexports-from-external/_expected/umd.js b/test/form/samples/reexports-from-external/_expected/umd.js similarity index 100% rename from test/form/reexports-from-external/_expected/umd.js rename to test/form/samples/reexports-from-external/_expected/umd.js diff --git a/test/form/reexports-from-external/main.js b/test/form/samples/reexports-from-external/main.js similarity index 100% rename from test/form/reexports-from-external/main.js rename to test/form/samples/reexports-from-external/main.js diff --git a/test/form/relative-external-with-global/_config.js b/test/form/samples/relative-external-with-global/_config.js similarity index 100% rename from test/form/relative-external-with-global/_config.js rename to test/form/samples/relative-external-with-global/_config.js diff --git a/test/form/relative-external-with-global/_expected/amd.js b/test/form/samples/relative-external-with-global/_expected/amd.js similarity index 100% rename from test/form/relative-external-with-global/_expected/amd.js rename to test/form/samples/relative-external-with-global/_expected/amd.js diff --git a/test/form/relative-external-with-global/_expected/cjs.js b/test/form/samples/relative-external-with-global/_expected/cjs.js similarity index 100% rename from test/form/relative-external-with-global/_expected/cjs.js rename to test/form/samples/relative-external-with-global/_expected/cjs.js diff --git a/test/form/relative-external-with-global/_expected/es.js b/test/form/samples/relative-external-with-global/_expected/es.js similarity index 100% rename from test/form/relative-external-with-global/_expected/es.js rename to test/form/samples/relative-external-with-global/_expected/es.js diff --git a/test/form/relative-external-with-global/_expected/iife.js b/test/form/samples/relative-external-with-global/_expected/iife.js similarity index 100% rename from test/form/relative-external-with-global/_expected/iife.js rename to test/form/samples/relative-external-with-global/_expected/iife.js diff --git a/test/form/relative-external-with-global/_expected/umd.js b/test/form/samples/relative-external-with-global/_expected/umd.js similarity index 100% rename from test/form/relative-external-with-global/_expected/umd.js rename to test/form/samples/relative-external-with-global/_expected/umd.js diff --git a/test/form/relative-external-with-global/main.js b/test/form/samples/relative-external-with-global/main.js similarity index 100% rename from test/form/relative-external-with-global/main.js rename to test/form/samples/relative-external-with-global/main.js diff --git a/test/form/removes-existing-sourcemap-comments/_config.js b/test/form/samples/removes-existing-sourcemap-comments/_config.js similarity index 100% rename from test/form/removes-existing-sourcemap-comments/_config.js rename to test/form/samples/removes-existing-sourcemap-comments/_config.js diff --git a/test/form/removes-existing-sourcemap-comments/_expected/amd.js b/test/form/samples/removes-existing-sourcemap-comments/_expected/amd.js similarity index 100% rename from test/form/removes-existing-sourcemap-comments/_expected/amd.js rename to test/form/samples/removes-existing-sourcemap-comments/_expected/amd.js diff --git a/test/form/removes-existing-sourcemap-comments/_expected/cjs.js b/test/form/samples/removes-existing-sourcemap-comments/_expected/cjs.js similarity index 100% rename from test/form/removes-existing-sourcemap-comments/_expected/cjs.js rename to test/form/samples/removes-existing-sourcemap-comments/_expected/cjs.js diff --git a/test/form/removes-existing-sourcemap-comments/_expected/es.js b/test/form/samples/removes-existing-sourcemap-comments/_expected/es.js similarity index 100% rename from test/form/removes-existing-sourcemap-comments/_expected/es.js rename to test/form/samples/removes-existing-sourcemap-comments/_expected/es.js diff --git a/test/form/removes-existing-sourcemap-comments/_expected/iife.js b/test/form/samples/removes-existing-sourcemap-comments/_expected/iife.js similarity index 100% rename from test/form/removes-existing-sourcemap-comments/_expected/iife.js rename to test/form/samples/removes-existing-sourcemap-comments/_expected/iife.js diff --git a/test/form/removes-existing-sourcemap-comments/_expected/umd.js b/test/form/samples/removes-existing-sourcemap-comments/_expected/umd.js similarity index 100% rename from test/form/removes-existing-sourcemap-comments/_expected/umd.js rename to test/form/samples/removes-existing-sourcemap-comments/_expected/umd.js diff --git a/test/form/removes-existing-sourcemap-comments/foo.js b/test/form/samples/removes-existing-sourcemap-comments/foo.js similarity index 100% rename from test/form/removes-existing-sourcemap-comments/foo.js rename to test/form/samples/removes-existing-sourcemap-comments/foo.js diff --git a/test/form/removes-existing-sourcemap-comments/main.js b/test/form/samples/removes-existing-sourcemap-comments/main.js similarity index 100% rename from test/form/removes-existing-sourcemap-comments/main.js rename to test/form/samples/removes-existing-sourcemap-comments/main.js diff --git a/test/form/self-calling-function-with-effects/_config.js b/test/form/samples/self-calling-function-with-effects/_config.js similarity index 100% rename from test/form/self-calling-function-with-effects/_config.js rename to test/form/samples/self-calling-function-with-effects/_config.js diff --git a/test/form/self-calling-function-with-effects/_expected/amd.js b/test/form/samples/self-calling-function-with-effects/_expected/amd.js similarity index 100% rename from test/form/self-calling-function-with-effects/_expected/amd.js rename to test/form/samples/self-calling-function-with-effects/_expected/amd.js diff --git a/test/form/self-calling-function-with-effects/_expected/cjs.js b/test/form/samples/self-calling-function-with-effects/_expected/cjs.js similarity index 100% rename from test/form/self-calling-function-with-effects/_expected/cjs.js rename to test/form/samples/self-calling-function-with-effects/_expected/cjs.js diff --git a/test/form/self-calling-function-with-effects/_expected/es.js b/test/form/samples/self-calling-function-with-effects/_expected/es.js similarity index 100% rename from test/form/self-calling-function-with-effects/_expected/es.js rename to test/form/samples/self-calling-function-with-effects/_expected/es.js diff --git a/test/form/self-calling-function-with-effects/_expected/iife.js b/test/form/samples/self-calling-function-with-effects/_expected/iife.js similarity index 100% rename from test/form/self-calling-function-with-effects/_expected/iife.js rename to test/form/samples/self-calling-function-with-effects/_expected/iife.js diff --git a/test/form/self-calling-function-with-effects/_expected/umd.js b/test/form/samples/self-calling-function-with-effects/_expected/umd.js similarity index 100% rename from test/form/self-calling-function-with-effects/_expected/umd.js rename to test/form/samples/self-calling-function-with-effects/_expected/umd.js diff --git a/test/form/self-calling-function-with-effects/main.js b/test/form/samples/self-calling-function-with-effects/main.js similarity index 100% rename from test/form/self-calling-function-with-effects/main.js rename to test/form/samples/self-calling-function-with-effects/main.js diff --git a/test/form/self-calling-function/_config.js b/test/form/samples/self-calling-function/_config.js similarity index 100% rename from test/form/self-calling-function/_config.js rename to test/form/samples/self-calling-function/_config.js diff --git a/test/form/self-calling-function/_expected/amd.js b/test/form/samples/self-calling-function/_expected/amd.js similarity index 100% rename from test/form/self-calling-function/_expected/amd.js rename to test/form/samples/self-calling-function/_expected/amd.js diff --git a/test/form/self-calling-function/_expected/cjs.js b/test/form/samples/self-calling-function/_expected/cjs.js similarity index 100% rename from test/form/self-calling-function/_expected/cjs.js rename to test/form/samples/self-calling-function/_expected/cjs.js diff --git a/test/form/self-calling-function/_expected/es.js b/test/form/samples/self-calling-function/_expected/es.js similarity index 100% rename from test/form/self-calling-function/_expected/es.js rename to test/form/samples/self-calling-function/_expected/es.js diff --git a/test/form/self-calling-function/_expected/iife.js b/test/form/samples/self-calling-function/_expected/iife.js similarity index 100% rename from test/form/self-calling-function/_expected/iife.js rename to test/form/samples/self-calling-function/_expected/iife.js diff --git a/test/form/self-calling-function/_expected/umd.js b/test/form/samples/self-calling-function/_expected/umd.js similarity index 100% rename from test/form/self-calling-function/_expected/umd.js rename to test/form/samples/self-calling-function/_expected/umd.js diff --git a/test/form/self-calling-function/main.js b/test/form/samples/self-calling-function/main.js similarity index 100% rename from test/form/self-calling-function/main.js rename to test/form/samples/self-calling-function/main.js diff --git a/test/form/self-contained-bundle/_config.js b/test/form/samples/self-contained-bundle/_config.js similarity index 100% rename from test/form/self-contained-bundle/_config.js rename to test/form/samples/self-contained-bundle/_config.js diff --git a/test/form/self-contained-bundle/_expected/amd.js b/test/form/samples/self-contained-bundle/_expected/amd.js similarity index 100% rename from test/form/self-contained-bundle/_expected/amd.js rename to test/form/samples/self-contained-bundle/_expected/amd.js diff --git a/test/form/self-contained-bundle/_expected/cjs.js b/test/form/samples/self-contained-bundle/_expected/cjs.js similarity index 100% rename from test/form/self-contained-bundle/_expected/cjs.js rename to test/form/samples/self-contained-bundle/_expected/cjs.js diff --git a/test/form/self-contained-bundle/_expected/es.js b/test/form/samples/self-contained-bundle/_expected/es.js similarity index 100% rename from test/form/self-contained-bundle/_expected/es.js rename to test/form/samples/self-contained-bundle/_expected/es.js diff --git a/test/form/self-contained-bundle/_expected/iife.js b/test/form/samples/self-contained-bundle/_expected/iife.js similarity index 100% rename from test/form/self-contained-bundle/_expected/iife.js rename to test/form/samples/self-contained-bundle/_expected/iife.js diff --git a/test/form/self-contained-bundle/_expected/umd.js b/test/form/samples/self-contained-bundle/_expected/umd.js similarity index 100% rename from test/form/self-contained-bundle/_expected/umd.js rename to test/form/samples/self-contained-bundle/_expected/umd.js diff --git a/test/form/self-contained-bundle/foo.js b/test/form/samples/self-contained-bundle/foo.js similarity index 100% rename from test/form/self-contained-bundle/foo.js rename to test/form/samples/self-contained-bundle/foo.js diff --git a/test/form/self-contained-bundle/main.js b/test/form/samples/self-contained-bundle/main.js similarity index 100% rename from test/form/self-contained-bundle/main.js rename to test/form/samples/self-contained-bundle/main.js diff --git a/test/form/shorthand-properties/_config.js b/test/form/samples/shorthand-properties/_config.js similarity index 100% rename from test/form/shorthand-properties/_config.js rename to test/form/samples/shorthand-properties/_config.js diff --git a/test/form/shorthand-properties/_expected/amd.js b/test/form/samples/shorthand-properties/_expected/amd.js similarity index 100% rename from test/form/shorthand-properties/_expected/amd.js rename to test/form/samples/shorthand-properties/_expected/amd.js diff --git a/test/form/shorthand-properties/_expected/cjs.js b/test/form/samples/shorthand-properties/_expected/cjs.js similarity index 100% rename from test/form/shorthand-properties/_expected/cjs.js rename to test/form/samples/shorthand-properties/_expected/cjs.js diff --git a/test/form/shorthand-properties/_expected/es.js b/test/form/samples/shorthand-properties/_expected/es.js similarity index 100% rename from test/form/shorthand-properties/_expected/es.js rename to test/form/samples/shorthand-properties/_expected/es.js diff --git a/test/form/shorthand-properties/_expected/iife.js b/test/form/samples/shorthand-properties/_expected/iife.js similarity index 100% rename from test/form/shorthand-properties/_expected/iife.js rename to test/form/samples/shorthand-properties/_expected/iife.js diff --git a/test/form/shorthand-properties/_expected/umd.js b/test/form/samples/shorthand-properties/_expected/umd.js similarity index 100% rename from test/form/shorthand-properties/_expected/umd.js rename to test/form/samples/shorthand-properties/_expected/umd.js diff --git a/test/form/shorthand-properties/bar.js b/test/form/samples/shorthand-properties/bar.js similarity index 100% rename from test/form/shorthand-properties/bar.js rename to test/form/samples/shorthand-properties/bar.js diff --git a/test/form/shorthand-properties/baz.js b/test/form/samples/shorthand-properties/baz.js similarity index 100% rename from test/form/shorthand-properties/baz.js rename to test/form/samples/shorthand-properties/baz.js diff --git a/test/form/shorthand-properties/foo.js b/test/form/samples/shorthand-properties/foo.js similarity index 100% rename from test/form/shorthand-properties/foo.js rename to test/form/samples/shorthand-properties/foo.js diff --git a/test/form/shorthand-properties/main.js b/test/form/samples/shorthand-properties/main.js similarity index 100% rename from test/form/shorthand-properties/main.js rename to test/form/samples/shorthand-properties/main.js diff --git a/test/form/side-effect-b/_config.js b/test/form/samples/side-effect-b/_config.js similarity index 100% rename from test/form/side-effect-b/_config.js rename to test/form/samples/side-effect-b/_config.js diff --git a/test/form/side-effect-b/_expected/amd.js b/test/form/samples/side-effect-b/_expected/amd.js similarity index 100% rename from test/form/side-effect-b/_expected/amd.js rename to test/form/samples/side-effect-b/_expected/amd.js diff --git a/test/form/side-effect-b/_expected/cjs.js b/test/form/samples/side-effect-b/_expected/cjs.js similarity index 100% rename from test/form/side-effect-b/_expected/cjs.js rename to test/form/samples/side-effect-b/_expected/cjs.js diff --git a/test/form/side-effect-b/_expected/es.js b/test/form/samples/side-effect-b/_expected/es.js similarity index 100% rename from test/form/side-effect-b/_expected/es.js rename to test/form/samples/side-effect-b/_expected/es.js diff --git a/test/form/side-effect-b/_expected/iife.js b/test/form/samples/side-effect-b/_expected/iife.js similarity index 100% rename from test/form/side-effect-b/_expected/iife.js rename to test/form/samples/side-effect-b/_expected/iife.js diff --git a/test/form/side-effect-b/_expected/umd.js b/test/form/samples/side-effect-b/_expected/umd.js similarity index 100% rename from test/form/side-effect-b/_expected/umd.js rename to test/form/samples/side-effect-b/_expected/umd.js diff --git a/test/form/side-effect-b/main.js b/test/form/samples/side-effect-b/main.js similarity index 100% rename from test/form/side-effect-b/main.js rename to test/form/samples/side-effect-b/main.js diff --git a/test/form/side-effect-c/_config.js b/test/form/samples/side-effect-c/_config.js similarity index 100% rename from test/form/side-effect-c/_config.js rename to test/form/samples/side-effect-c/_config.js diff --git a/test/form/side-effect-c/_expected/amd.js b/test/form/samples/side-effect-c/_expected/amd.js similarity index 100% rename from test/form/side-effect-c/_expected/amd.js rename to test/form/samples/side-effect-c/_expected/amd.js diff --git a/test/form/side-effect-c/_expected/cjs.js b/test/form/samples/side-effect-c/_expected/cjs.js similarity index 100% rename from test/form/side-effect-c/_expected/cjs.js rename to test/form/samples/side-effect-c/_expected/cjs.js diff --git a/test/form/side-effect-c/_expected/es.js b/test/form/samples/side-effect-c/_expected/es.js similarity index 100% rename from test/form/side-effect-c/_expected/es.js rename to test/form/samples/side-effect-c/_expected/es.js diff --git a/test/form/side-effect-c/_expected/iife.js b/test/form/samples/side-effect-c/_expected/iife.js similarity index 100% rename from test/form/side-effect-c/_expected/iife.js rename to test/form/samples/side-effect-c/_expected/iife.js diff --git a/test/form/side-effect-c/_expected/umd.js b/test/form/samples/side-effect-c/_expected/umd.js similarity index 100% rename from test/form/side-effect-c/_expected/umd.js rename to test/form/samples/side-effect-c/_expected/umd.js diff --git a/test/form/side-effect-c/main.js b/test/form/samples/side-effect-c/main.js similarity index 100% rename from test/form/side-effect-c/main.js rename to test/form/samples/side-effect-c/main.js diff --git a/test/form/side-effect-d/_config.js b/test/form/samples/side-effect-d/_config.js similarity index 100% rename from test/form/side-effect-d/_config.js rename to test/form/samples/side-effect-d/_config.js diff --git a/test/form/side-effect-d/_expected/amd.js b/test/form/samples/side-effect-d/_expected/amd.js similarity index 100% rename from test/form/side-effect-d/_expected/amd.js rename to test/form/samples/side-effect-d/_expected/amd.js diff --git a/test/form/side-effect-d/_expected/cjs.js b/test/form/samples/side-effect-d/_expected/cjs.js similarity index 100% rename from test/form/side-effect-d/_expected/cjs.js rename to test/form/samples/side-effect-d/_expected/cjs.js diff --git a/test/form/side-effect-d/_expected/es.js b/test/form/samples/side-effect-d/_expected/es.js similarity index 100% rename from test/form/side-effect-d/_expected/es.js rename to test/form/samples/side-effect-d/_expected/es.js diff --git a/test/form/side-effect-d/_expected/iife.js b/test/form/samples/side-effect-d/_expected/iife.js similarity index 100% rename from test/form/side-effect-d/_expected/iife.js rename to test/form/samples/side-effect-d/_expected/iife.js diff --git a/test/form/side-effect-d/_expected/umd.js b/test/form/samples/side-effect-d/_expected/umd.js similarity index 100% rename from test/form/side-effect-d/_expected/umd.js rename to test/form/samples/side-effect-d/_expected/umd.js diff --git a/test/form/side-effect-d/main.js b/test/form/samples/side-effect-d/main.js similarity index 100% rename from test/form/side-effect-d/main.js rename to test/form/samples/side-effect-d/main.js diff --git a/test/form/side-effect-e/_config.js b/test/form/samples/side-effect-e/_config.js similarity index 100% rename from test/form/side-effect-e/_config.js rename to test/form/samples/side-effect-e/_config.js diff --git a/test/form/side-effect-e/_expected/amd.js b/test/form/samples/side-effect-e/_expected/amd.js similarity index 100% rename from test/form/side-effect-e/_expected/amd.js rename to test/form/samples/side-effect-e/_expected/amd.js diff --git a/test/form/side-effect-e/_expected/cjs.js b/test/form/samples/side-effect-e/_expected/cjs.js similarity index 100% rename from test/form/side-effect-e/_expected/cjs.js rename to test/form/samples/side-effect-e/_expected/cjs.js diff --git a/test/form/side-effect-e/_expected/es.js b/test/form/samples/side-effect-e/_expected/es.js similarity index 100% rename from test/form/side-effect-e/_expected/es.js rename to test/form/samples/side-effect-e/_expected/es.js diff --git a/test/form/side-effect-e/_expected/iife.js b/test/form/samples/side-effect-e/_expected/iife.js similarity index 100% rename from test/form/side-effect-e/_expected/iife.js rename to test/form/samples/side-effect-e/_expected/iife.js diff --git a/test/form/side-effect-e/_expected/umd.js b/test/form/samples/side-effect-e/_expected/umd.js similarity index 100% rename from test/form/side-effect-e/_expected/umd.js rename to test/form/samples/side-effect-e/_expected/umd.js diff --git a/test/form/side-effect-e/main.js b/test/form/samples/side-effect-e/main.js similarity index 100% rename from test/form/side-effect-e/main.js rename to test/form/samples/side-effect-e/main.js diff --git a/test/form/side-effect-es5-classes/_config.js b/test/form/samples/side-effect-es5-classes/_config.js similarity index 100% rename from test/form/side-effect-es5-classes/_config.js rename to test/form/samples/side-effect-es5-classes/_config.js diff --git a/test/form/side-effect-es5-classes/_expected/amd.js b/test/form/samples/side-effect-es5-classes/_expected/amd.js similarity index 100% rename from test/form/side-effect-es5-classes/_expected/amd.js rename to test/form/samples/side-effect-es5-classes/_expected/amd.js diff --git a/test/form/side-effect-es5-classes/_expected/cjs.js b/test/form/samples/side-effect-es5-classes/_expected/cjs.js similarity index 100% rename from test/form/side-effect-es5-classes/_expected/cjs.js rename to test/form/samples/side-effect-es5-classes/_expected/cjs.js diff --git a/test/form/side-effect-es5-classes/_expected/es.js b/test/form/samples/side-effect-es5-classes/_expected/es.js similarity index 100% rename from test/form/side-effect-es5-classes/_expected/es.js rename to test/form/samples/side-effect-es5-classes/_expected/es.js diff --git a/test/form/side-effect-es5-classes/_expected/iife.js b/test/form/samples/side-effect-es5-classes/_expected/iife.js similarity index 100% rename from test/form/side-effect-es5-classes/_expected/iife.js rename to test/form/samples/side-effect-es5-classes/_expected/iife.js diff --git a/test/form/side-effect-es5-classes/_expected/umd.js b/test/form/samples/side-effect-es5-classes/_expected/umd.js similarity index 100% rename from test/form/side-effect-es5-classes/_expected/umd.js rename to test/form/samples/side-effect-es5-classes/_expected/umd.js diff --git a/test/form/side-effect-es5-classes/arrow.js b/test/form/samples/side-effect-es5-classes/arrow.js similarity index 100% rename from test/form/side-effect-es5-classes/arrow.js rename to test/form/samples/side-effect-es5-classes/arrow.js diff --git a/test/form/side-effect-es5-classes/bar.js b/test/form/samples/side-effect-es5-classes/bar.js similarity index 100% rename from test/form/side-effect-es5-classes/bar.js rename to test/form/samples/side-effect-es5-classes/bar.js diff --git a/test/form/side-effect-es5-classes/baz.js b/test/form/samples/side-effect-es5-classes/baz.js similarity index 100% rename from test/form/side-effect-es5-classes/baz.js rename to test/form/samples/side-effect-es5-classes/baz.js diff --git a/test/form/side-effect-es5-classes/corge.js b/test/form/samples/side-effect-es5-classes/corge.js similarity index 100% rename from test/form/side-effect-es5-classes/corge.js rename to test/form/samples/side-effect-es5-classes/corge.js diff --git a/test/form/side-effect-es5-classes/foo.js b/test/form/samples/side-effect-es5-classes/foo.js similarity index 100% rename from test/form/side-effect-es5-classes/foo.js rename to test/form/samples/side-effect-es5-classes/foo.js diff --git a/test/form/side-effect-es5-classes/main.js b/test/form/samples/side-effect-es5-classes/main.js similarity index 100% rename from test/form/side-effect-es5-classes/main.js rename to test/form/samples/side-effect-es5-classes/main.js diff --git a/test/form/side-effect-es5-classes/qux.js b/test/form/samples/side-effect-es5-classes/qux.js similarity index 100% rename from test/form/side-effect-es5-classes/qux.js rename to test/form/samples/side-effect-es5-classes/qux.js diff --git a/test/form/side-effect-f/_config.js b/test/form/samples/side-effect-f/_config.js similarity index 100% rename from test/form/side-effect-f/_config.js rename to test/form/samples/side-effect-f/_config.js diff --git a/test/form/side-effect-f/_expected/amd.js b/test/form/samples/side-effect-f/_expected/amd.js similarity index 100% rename from test/form/side-effect-f/_expected/amd.js rename to test/form/samples/side-effect-f/_expected/amd.js diff --git a/test/form/side-effect-f/_expected/cjs.js b/test/form/samples/side-effect-f/_expected/cjs.js similarity index 100% rename from test/form/side-effect-f/_expected/cjs.js rename to test/form/samples/side-effect-f/_expected/cjs.js diff --git a/test/form/side-effect-f/_expected/es.js b/test/form/samples/side-effect-f/_expected/es.js similarity index 100% rename from test/form/side-effect-f/_expected/es.js rename to test/form/samples/side-effect-f/_expected/es.js diff --git a/test/form/side-effect-f/_expected/iife.js b/test/form/samples/side-effect-f/_expected/iife.js similarity index 100% rename from test/form/side-effect-f/_expected/iife.js rename to test/form/samples/side-effect-f/_expected/iife.js diff --git a/test/form/side-effect-f/_expected/umd.js b/test/form/samples/side-effect-f/_expected/umd.js similarity index 100% rename from test/form/side-effect-f/_expected/umd.js rename to test/form/samples/side-effect-f/_expected/umd.js diff --git a/test/form/side-effect-f/main.js b/test/form/samples/side-effect-f/main.js similarity index 100% rename from test/form/side-effect-f/main.js rename to test/form/samples/side-effect-f/main.js diff --git a/test/form/side-effect-g/_config.js b/test/form/samples/side-effect-g/_config.js similarity index 100% rename from test/form/side-effect-g/_config.js rename to test/form/samples/side-effect-g/_config.js diff --git a/test/form/side-effect-g/_expected/amd.js b/test/form/samples/side-effect-g/_expected/amd.js similarity index 100% rename from test/form/side-effect-g/_expected/amd.js rename to test/form/samples/side-effect-g/_expected/amd.js diff --git a/test/form/side-effect-g/_expected/cjs.js b/test/form/samples/side-effect-g/_expected/cjs.js similarity index 100% rename from test/form/side-effect-g/_expected/cjs.js rename to test/form/samples/side-effect-g/_expected/cjs.js diff --git a/test/form/side-effect-g/_expected/es.js b/test/form/samples/side-effect-g/_expected/es.js similarity index 100% rename from test/form/side-effect-g/_expected/es.js rename to test/form/samples/side-effect-g/_expected/es.js diff --git a/test/form/side-effect-g/_expected/iife.js b/test/form/samples/side-effect-g/_expected/iife.js similarity index 100% rename from test/form/side-effect-g/_expected/iife.js rename to test/form/samples/side-effect-g/_expected/iife.js diff --git a/test/form/side-effect-g/_expected/umd.js b/test/form/samples/side-effect-g/_expected/umd.js similarity index 100% rename from test/form/side-effect-g/_expected/umd.js rename to test/form/samples/side-effect-g/_expected/umd.js diff --git a/test/form/side-effect-g/main.js b/test/form/samples/side-effect-g/main.js similarity index 100% rename from test/form/side-effect-g/main.js rename to test/form/samples/side-effect-g/main.js diff --git a/test/form/side-effect-h/_config.js b/test/form/samples/side-effect-h/_config.js similarity index 100% rename from test/form/side-effect-h/_config.js rename to test/form/samples/side-effect-h/_config.js diff --git a/test/form/side-effect-h/_expected/amd.js b/test/form/samples/side-effect-h/_expected/amd.js similarity index 100% rename from test/form/side-effect-h/_expected/amd.js rename to test/form/samples/side-effect-h/_expected/amd.js diff --git a/test/form/side-effect-h/_expected/cjs.js b/test/form/samples/side-effect-h/_expected/cjs.js similarity index 100% rename from test/form/side-effect-h/_expected/cjs.js rename to test/form/samples/side-effect-h/_expected/cjs.js diff --git a/test/form/side-effect-h/_expected/es.js b/test/form/samples/side-effect-h/_expected/es.js similarity index 100% rename from test/form/side-effect-h/_expected/es.js rename to test/form/samples/side-effect-h/_expected/es.js diff --git a/test/form/side-effect-h/_expected/iife.js b/test/form/samples/side-effect-h/_expected/iife.js similarity index 100% rename from test/form/side-effect-h/_expected/iife.js rename to test/form/samples/side-effect-h/_expected/iife.js diff --git a/test/form/side-effect-h/_expected/umd.js b/test/form/samples/side-effect-h/_expected/umd.js similarity index 100% rename from test/form/side-effect-h/_expected/umd.js rename to test/form/samples/side-effect-h/_expected/umd.js diff --git a/test/form/side-effect-h/main.js b/test/form/samples/side-effect-h/main.js similarity index 100% rename from test/form/side-effect-h/main.js rename to test/form/samples/side-effect-h/main.js diff --git a/test/form/side-effect-i/_config.js b/test/form/samples/side-effect-i/_config.js similarity index 100% rename from test/form/side-effect-i/_config.js rename to test/form/samples/side-effect-i/_config.js diff --git a/test/form/side-effect-i/_expected/amd.js b/test/form/samples/side-effect-i/_expected/amd.js similarity index 100% rename from test/form/side-effect-i/_expected/amd.js rename to test/form/samples/side-effect-i/_expected/amd.js diff --git a/test/form/side-effect-i/_expected/cjs.js b/test/form/samples/side-effect-i/_expected/cjs.js similarity index 100% rename from test/form/side-effect-i/_expected/cjs.js rename to test/form/samples/side-effect-i/_expected/cjs.js diff --git a/test/form/side-effect-i/_expected/es.js b/test/form/samples/side-effect-i/_expected/es.js similarity index 100% rename from test/form/side-effect-i/_expected/es.js rename to test/form/samples/side-effect-i/_expected/es.js diff --git a/test/form/side-effect-i/_expected/iife.js b/test/form/samples/side-effect-i/_expected/iife.js similarity index 100% rename from test/form/side-effect-i/_expected/iife.js rename to test/form/samples/side-effect-i/_expected/iife.js diff --git a/test/form/side-effect-i/_expected/umd.js b/test/form/samples/side-effect-i/_expected/umd.js similarity index 100% rename from test/form/side-effect-i/_expected/umd.js rename to test/form/samples/side-effect-i/_expected/umd.js diff --git a/test/form/side-effect-i/main.js b/test/form/samples/side-effect-i/main.js similarity index 100% rename from test/form/side-effect-i/main.js rename to test/form/samples/side-effect-i/main.js diff --git a/test/form/side-effect-j/_config.js b/test/form/samples/side-effect-j/_config.js similarity index 100% rename from test/form/side-effect-j/_config.js rename to test/form/samples/side-effect-j/_config.js diff --git a/test/form/side-effect-j/_expected/amd.js b/test/form/samples/side-effect-j/_expected/amd.js similarity index 100% rename from test/form/side-effect-j/_expected/amd.js rename to test/form/samples/side-effect-j/_expected/amd.js diff --git a/test/form/side-effect-j/_expected/cjs.js b/test/form/samples/side-effect-j/_expected/cjs.js similarity index 100% rename from test/form/side-effect-j/_expected/cjs.js rename to test/form/samples/side-effect-j/_expected/cjs.js diff --git a/test/form/side-effect-j/_expected/es.js b/test/form/samples/side-effect-j/_expected/es.js similarity index 100% rename from test/form/side-effect-j/_expected/es.js rename to test/form/samples/side-effect-j/_expected/es.js diff --git a/test/form/side-effect-j/_expected/iife.js b/test/form/samples/side-effect-j/_expected/iife.js similarity index 100% rename from test/form/side-effect-j/_expected/iife.js rename to test/form/samples/side-effect-j/_expected/iife.js diff --git a/test/form/side-effect-j/_expected/umd.js b/test/form/samples/side-effect-j/_expected/umd.js similarity index 100% rename from test/form/side-effect-j/_expected/umd.js rename to test/form/samples/side-effect-j/_expected/umd.js diff --git a/test/form/side-effect-j/foo.js b/test/form/samples/side-effect-j/foo.js similarity index 100% rename from test/form/side-effect-j/foo.js rename to test/form/samples/side-effect-j/foo.js diff --git a/test/form/side-effect-j/main.js b/test/form/samples/side-effect-j/main.js similarity index 100% rename from test/form/side-effect-j/main.js rename to test/form/samples/side-effect-j/main.js diff --git a/test/form/side-effect-k/_config.js b/test/form/samples/side-effect-k/_config.js similarity index 100% rename from test/form/side-effect-k/_config.js rename to test/form/samples/side-effect-k/_config.js diff --git a/test/form/side-effect-k/_expected/amd.js b/test/form/samples/side-effect-k/_expected/amd.js similarity index 100% rename from test/form/side-effect-k/_expected/amd.js rename to test/form/samples/side-effect-k/_expected/amd.js diff --git a/test/form/side-effect-k/_expected/cjs.js b/test/form/samples/side-effect-k/_expected/cjs.js similarity index 100% rename from test/form/side-effect-k/_expected/cjs.js rename to test/form/samples/side-effect-k/_expected/cjs.js diff --git a/test/form/side-effect-k/_expected/es.js b/test/form/samples/side-effect-k/_expected/es.js similarity index 100% rename from test/form/side-effect-k/_expected/es.js rename to test/form/samples/side-effect-k/_expected/es.js diff --git a/test/form/side-effect-k/_expected/iife.js b/test/form/samples/side-effect-k/_expected/iife.js similarity index 100% rename from test/form/side-effect-k/_expected/iife.js rename to test/form/samples/side-effect-k/_expected/iife.js diff --git a/test/form/side-effect-k/_expected/umd.js b/test/form/samples/side-effect-k/_expected/umd.js similarity index 100% rename from test/form/side-effect-k/_expected/umd.js rename to test/form/samples/side-effect-k/_expected/umd.js diff --git a/test/form/side-effect-k/foo.js b/test/form/samples/side-effect-k/foo.js similarity index 100% rename from test/form/side-effect-k/foo.js rename to test/form/samples/side-effect-k/foo.js diff --git a/test/form/side-effect-k/main.js b/test/form/samples/side-effect-k/main.js similarity index 100% rename from test/form/side-effect-k/main.js rename to test/form/samples/side-effect-k/main.js diff --git a/test/form/side-effect-l/_config.js b/test/form/samples/side-effect-l/_config.js similarity index 100% rename from test/form/side-effect-l/_config.js rename to test/form/samples/side-effect-l/_config.js diff --git a/test/form/side-effect-l/_expected/amd.js b/test/form/samples/side-effect-l/_expected/amd.js similarity index 100% rename from test/form/side-effect-l/_expected/amd.js rename to test/form/samples/side-effect-l/_expected/amd.js diff --git a/test/form/side-effect-l/_expected/cjs.js b/test/form/samples/side-effect-l/_expected/cjs.js similarity index 100% rename from test/form/side-effect-l/_expected/cjs.js rename to test/form/samples/side-effect-l/_expected/cjs.js diff --git a/test/form/side-effect-l/_expected/es.js b/test/form/samples/side-effect-l/_expected/es.js similarity index 100% rename from test/form/side-effect-l/_expected/es.js rename to test/form/samples/side-effect-l/_expected/es.js diff --git a/test/form/side-effect-l/_expected/iife.js b/test/form/samples/side-effect-l/_expected/iife.js similarity index 100% rename from test/form/side-effect-l/_expected/iife.js rename to test/form/samples/side-effect-l/_expected/iife.js diff --git a/test/form/side-effect-l/_expected/umd.js b/test/form/samples/side-effect-l/_expected/umd.js similarity index 100% rename from test/form/side-effect-l/_expected/umd.js rename to test/form/samples/side-effect-l/_expected/umd.js diff --git a/test/form/side-effect-l/foo.js b/test/form/samples/side-effect-l/foo.js similarity index 100% rename from test/form/side-effect-l/foo.js rename to test/form/samples/side-effect-l/foo.js diff --git a/test/form/side-effect-l/main.js b/test/form/samples/side-effect-l/main.js similarity index 100% rename from test/form/side-effect-l/main.js rename to test/form/samples/side-effect-l/main.js diff --git a/test/form/side-effect-m/_config.js b/test/form/samples/side-effect-m/_config.js similarity index 100% rename from test/form/side-effect-m/_config.js rename to test/form/samples/side-effect-m/_config.js diff --git a/test/form/side-effect-m/_expected/amd.js b/test/form/samples/side-effect-m/_expected/amd.js similarity index 100% rename from test/form/side-effect-m/_expected/amd.js rename to test/form/samples/side-effect-m/_expected/amd.js diff --git a/test/form/side-effect-m/_expected/cjs.js b/test/form/samples/side-effect-m/_expected/cjs.js similarity index 100% rename from test/form/side-effect-m/_expected/cjs.js rename to test/form/samples/side-effect-m/_expected/cjs.js diff --git a/test/form/side-effect-m/_expected/es.js b/test/form/samples/side-effect-m/_expected/es.js similarity index 100% rename from test/form/side-effect-m/_expected/es.js rename to test/form/samples/side-effect-m/_expected/es.js diff --git a/test/form/side-effect-m/_expected/iife.js b/test/form/samples/side-effect-m/_expected/iife.js similarity index 100% rename from test/form/side-effect-m/_expected/iife.js rename to test/form/samples/side-effect-m/_expected/iife.js diff --git a/test/form/side-effect-m/_expected/umd.js b/test/form/samples/side-effect-m/_expected/umd.js similarity index 100% rename from test/form/side-effect-m/_expected/umd.js rename to test/form/samples/side-effect-m/_expected/umd.js diff --git a/test/form/side-effect-m/even.js b/test/form/samples/side-effect-m/even.js similarity index 100% rename from test/form/side-effect-m/even.js rename to test/form/samples/side-effect-m/even.js diff --git a/test/form/side-effect-m/main.js b/test/form/samples/side-effect-m/main.js similarity index 100% rename from test/form/side-effect-m/main.js rename to test/form/samples/side-effect-m/main.js diff --git a/test/form/side-effect-m/odd.js b/test/form/samples/side-effect-m/odd.js similarity index 100% rename from test/form/side-effect-m/odd.js rename to test/form/samples/side-effect-m/odd.js diff --git a/test/form/side-effect-n/_config.js b/test/form/samples/side-effect-n/_config.js similarity index 100% rename from test/form/side-effect-n/_config.js rename to test/form/samples/side-effect-n/_config.js diff --git a/test/form/side-effect-n/_expected/amd.js b/test/form/samples/side-effect-n/_expected/amd.js similarity index 100% rename from test/form/side-effect-n/_expected/amd.js rename to test/form/samples/side-effect-n/_expected/amd.js diff --git a/test/form/side-effect-n/_expected/cjs.js b/test/form/samples/side-effect-n/_expected/cjs.js similarity index 100% rename from test/form/side-effect-n/_expected/cjs.js rename to test/form/samples/side-effect-n/_expected/cjs.js diff --git a/test/form/side-effect-n/_expected/es.js b/test/form/samples/side-effect-n/_expected/es.js similarity index 100% rename from test/form/side-effect-n/_expected/es.js rename to test/form/samples/side-effect-n/_expected/es.js diff --git a/test/form/side-effect-n/_expected/iife.js b/test/form/samples/side-effect-n/_expected/iife.js similarity index 100% rename from test/form/side-effect-n/_expected/iife.js rename to test/form/samples/side-effect-n/_expected/iife.js diff --git a/test/form/side-effect-n/_expected/umd.js b/test/form/samples/side-effect-n/_expected/umd.js similarity index 100% rename from test/form/side-effect-n/_expected/umd.js rename to test/form/samples/side-effect-n/_expected/umd.js diff --git a/test/form/side-effect-n/main.js b/test/form/samples/side-effect-n/main.js similarity index 100% rename from test/form/side-effect-n/main.js rename to test/form/samples/side-effect-n/main.js diff --git a/test/form/side-effect-o/_config.js b/test/form/samples/side-effect-o/_config.js similarity index 100% rename from test/form/side-effect-o/_config.js rename to test/form/samples/side-effect-o/_config.js diff --git a/test/form/side-effect-o/_expected/amd.js b/test/form/samples/side-effect-o/_expected/amd.js similarity index 100% rename from test/form/side-effect-o/_expected/amd.js rename to test/form/samples/side-effect-o/_expected/amd.js diff --git a/test/form/side-effect-o/_expected/cjs.js b/test/form/samples/side-effect-o/_expected/cjs.js similarity index 100% rename from test/form/side-effect-o/_expected/cjs.js rename to test/form/samples/side-effect-o/_expected/cjs.js diff --git a/test/form/side-effect-o/_expected/es.js b/test/form/samples/side-effect-o/_expected/es.js similarity index 100% rename from test/form/side-effect-o/_expected/es.js rename to test/form/samples/side-effect-o/_expected/es.js diff --git a/test/form/side-effect-o/_expected/iife.js b/test/form/samples/side-effect-o/_expected/iife.js similarity index 100% rename from test/form/side-effect-o/_expected/iife.js rename to test/form/samples/side-effect-o/_expected/iife.js diff --git a/test/form/side-effect-o/_expected/umd.js b/test/form/samples/side-effect-o/_expected/umd.js similarity index 100% rename from test/form/side-effect-o/_expected/umd.js rename to test/form/samples/side-effect-o/_expected/umd.js diff --git a/test/form/side-effect-o/main.js b/test/form/samples/side-effect-o/main.js similarity index 100% rename from test/form/side-effect-o/main.js rename to test/form/samples/side-effect-o/main.js diff --git a/test/form/side-effect-p/_config.js b/test/form/samples/side-effect-p/_config.js similarity index 100% rename from test/form/side-effect-p/_config.js rename to test/form/samples/side-effect-p/_config.js diff --git a/test/form/side-effect-p/_expected/amd.js b/test/form/samples/side-effect-p/_expected/amd.js similarity index 100% rename from test/form/side-effect-p/_expected/amd.js rename to test/form/samples/side-effect-p/_expected/amd.js diff --git a/test/form/side-effect-p/_expected/cjs.js b/test/form/samples/side-effect-p/_expected/cjs.js similarity index 100% rename from test/form/side-effect-p/_expected/cjs.js rename to test/form/samples/side-effect-p/_expected/cjs.js diff --git a/test/form/side-effect-p/_expected/es.js b/test/form/samples/side-effect-p/_expected/es.js similarity index 100% rename from test/form/side-effect-p/_expected/es.js rename to test/form/samples/side-effect-p/_expected/es.js diff --git a/test/form/side-effect-p/_expected/iife.js b/test/form/samples/side-effect-p/_expected/iife.js similarity index 100% rename from test/form/side-effect-p/_expected/iife.js rename to test/form/samples/side-effect-p/_expected/iife.js diff --git a/test/form/side-effect-p/_expected/umd.js b/test/form/samples/side-effect-p/_expected/umd.js similarity index 100% rename from test/form/side-effect-p/_expected/umd.js rename to test/form/samples/side-effect-p/_expected/umd.js diff --git a/test/form/side-effect-p/bool.js b/test/form/samples/side-effect-p/bool.js similarity index 100% rename from test/form/side-effect-p/bool.js rename to test/form/samples/side-effect-p/bool.js diff --git a/test/form/side-effect-p/main.js b/test/form/samples/side-effect-p/main.js similarity index 100% rename from test/form/side-effect-p/main.js rename to test/form/samples/side-effect-p/main.js diff --git a/test/form/side-effect-q/_config.js b/test/form/samples/side-effect-q/_config.js similarity index 100% rename from test/form/side-effect-q/_config.js rename to test/form/samples/side-effect-q/_config.js diff --git a/test/form/side-effect-q/_expected/amd.js b/test/form/samples/side-effect-q/_expected/amd.js similarity index 100% rename from test/form/side-effect-q/_expected/amd.js rename to test/form/samples/side-effect-q/_expected/amd.js diff --git a/test/form/side-effect-q/_expected/cjs.js b/test/form/samples/side-effect-q/_expected/cjs.js similarity index 100% rename from test/form/side-effect-q/_expected/cjs.js rename to test/form/samples/side-effect-q/_expected/cjs.js diff --git a/test/form/side-effect-q/_expected/es.js b/test/form/samples/side-effect-q/_expected/es.js similarity index 100% rename from test/form/side-effect-q/_expected/es.js rename to test/form/samples/side-effect-q/_expected/es.js diff --git a/test/form/side-effect-q/_expected/iife.js b/test/form/samples/side-effect-q/_expected/iife.js similarity index 100% rename from test/form/side-effect-q/_expected/iife.js rename to test/form/samples/side-effect-q/_expected/iife.js diff --git a/test/form/side-effect-q/_expected/umd.js b/test/form/samples/side-effect-q/_expected/umd.js similarity index 100% rename from test/form/side-effect-q/_expected/umd.js rename to test/form/samples/side-effect-q/_expected/umd.js diff --git a/test/form/side-effect-q/main.js b/test/form/samples/side-effect-q/main.js similarity index 100% rename from test/form/side-effect-q/main.js rename to test/form/samples/side-effect-q/main.js diff --git a/test/form/side-effect-r/_config.js b/test/form/samples/side-effect-r/_config.js similarity index 100% rename from test/form/side-effect-r/_config.js rename to test/form/samples/side-effect-r/_config.js diff --git a/test/form/side-effect-r/_expected/amd.js b/test/form/samples/side-effect-r/_expected/amd.js similarity index 100% rename from test/form/side-effect-r/_expected/amd.js rename to test/form/samples/side-effect-r/_expected/amd.js diff --git a/test/form/side-effect-r/_expected/cjs.js b/test/form/samples/side-effect-r/_expected/cjs.js similarity index 100% rename from test/form/side-effect-r/_expected/cjs.js rename to test/form/samples/side-effect-r/_expected/cjs.js diff --git a/test/form/side-effect-r/_expected/es.js b/test/form/samples/side-effect-r/_expected/es.js similarity index 100% rename from test/form/side-effect-r/_expected/es.js rename to test/form/samples/side-effect-r/_expected/es.js diff --git a/test/form/side-effect-r/_expected/iife.js b/test/form/samples/side-effect-r/_expected/iife.js similarity index 100% rename from test/form/side-effect-r/_expected/iife.js rename to test/form/samples/side-effect-r/_expected/iife.js diff --git a/test/form/side-effect-r/_expected/umd.js b/test/form/samples/side-effect-r/_expected/umd.js similarity index 100% rename from test/form/side-effect-r/_expected/umd.js rename to test/form/samples/side-effect-r/_expected/umd.js diff --git a/test/form/side-effect-r/main.js b/test/form/samples/side-effect-r/main.js similarity index 100% rename from test/form/side-effect-r/main.js rename to test/form/samples/side-effect-r/main.js diff --git a/test/form/side-effect-s/_config.js b/test/form/samples/side-effect-s/_config.js similarity index 100% rename from test/form/side-effect-s/_config.js rename to test/form/samples/side-effect-s/_config.js diff --git a/test/form/side-effect-s/_expected/amd.js b/test/form/samples/side-effect-s/_expected/amd.js similarity index 100% rename from test/form/side-effect-s/_expected/amd.js rename to test/form/samples/side-effect-s/_expected/amd.js diff --git a/test/form/side-effect-s/_expected/cjs.js b/test/form/samples/side-effect-s/_expected/cjs.js similarity index 100% rename from test/form/side-effect-s/_expected/cjs.js rename to test/form/samples/side-effect-s/_expected/cjs.js diff --git a/test/form/side-effect-s/_expected/es.js b/test/form/samples/side-effect-s/_expected/es.js similarity index 100% rename from test/form/side-effect-s/_expected/es.js rename to test/form/samples/side-effect-s/_expected/es.js diff --git a/test/form/side-effect-s/_expected/iife.js b/test/form/samples/side-effect-s/_expected/iife.js similarity index 100% rename from test/form/side-effect-s/_expected/iife.js rename to test/form/samples/side-effect-s/_expected/iife.js diff --git a/test/form/side-effect-s/_expected/umd.js b/test/form/samples/side-effect-s/_expected/umd.js similarity index 100% rename from test/form/side-effect-s/_expected/umd.js rename to test/form/samples/side-effect-s/_expected/umd.js diff --git a/test/form/side-effect-s/main.js b/test/form/samples/side-effect-s/main.js similarity index 100% rename from test/form/side-effect-s/main.js rename to test/form/samples/side-effect-s/main.js diff --git a/test/form/side-effect-t/_config.js b/test/form/samples/side-effect-t/_config.js similarity index 100% rename from test/form/side-effect-t/_config.js rename to test/form/samples/side-effect-t/_config.js diff --git a/test/form/side-effect-t/_expected/amd.js b/test/form/samples/side-effect-t/_expected/amd.js similarity index 100% rename from test/form/side-effect-t/_expected/amd.js rename to test/form/samples/side-effect-t/_expected/amd.js diff --git a/test/form/side-effect-t/_expected/cjs.js b/test/form/samples/side-effect-t/_expected/cjs.js similarity index 100% rename from test/form/side-effect-t/_expected/cjs.js rename to test/form/samples/side-effect-t/_expected/cjs.js diff --git a/test/form/side-effect-t/_expected/es.js b/test/form/samples/side-effect-t/_expected/es.js similarity index 100% rename from test/form/side-effect-t/_expected/es.js rename to test/form/samples/side-effect-t/_expected/es.js diff --git a/test/form/side-effect-t/_expected/iife.js b/test/form/samples/side-effect-t/_expected/iife.js similarity index 100% rename from test/form/side-effect-t/_expected/iife.js rename to test/form/samples/side-effect-t/_expected/iife.js diff --git a/test/form/side-effect-t/_expected/umd.js b/test/form/samples/side-effect-t/_expected/umd.js similarity index 100% rename from test/form/side-effect-t/_expected/umd.js rename to test/form/samples/side-effect-t/_expected/umd.js diff --git a/test/form/side-effect-t/main.js b/test/form/samples/side-effect-t/main.js similarity index 100% rename from test/form/side-effect-t/main.js rename to test/form/samples/side-effect-t/main.js diff --git a/test/form/side-effect/_config.js b/test/form/samples/side-effect/_config.js similarity index 100% rename from test/form/side-effect/_config.js rename to test/form/samples/side-effect/_config.js diff --git a/test/form/side-effect/_expected/amd.js b/test/form/samples/side-effect/_expected/amd.js similarity index 100% rename from test/form/side-effect/_expected/amd.js rename to test/form/samples/side-effect/_expected/amd.js diff --git a/test/form/side-effect/_expected/cjs.js b/test/form/samples/side-effect/_expected/cjs.js similarity index 100% rename from test/form/side-effect/_expected/cjs.js rename to test/form/samples/side-effect/_expected/cjs.js diff --git a/test/form/side-effect/_expected/es.js b/test/form/samples/side-effect/_expected/es.js similarity index 100% rename from test/form/side-effect/_expected/es.js rename to test/form/samples/side-effect/_expected/es.js diff --git a/test/form/side-effect/_expected/iife.js b/test/form/samples/side-effect/_expected/iife.js similarity index 100% rename from test/form/side-effect/_expected/iife.js rename to test/form/samples/side-effect/_expected/iife.js diff --git a/test/form/side-effect/_expected/umd.js b/test/form/samples/side-effect/_expected/umd.js similarity index 100% rename from test/form/side-effect/_expected/umd.js rename to test/form/samples/side-effect/_expected/umd.js diff --git a/test/form/side-effect/foo.js b/test/form/samples/side-effect/foo.js similarity index 100% rename from test/form/side-effect/foo.js rename to test/form/samples/side-effect/foo.js diff --git a/test/form/side-effect/main.js b/test/form/samples/side-effect/main.js similarity index 100% rename from test/form/side-effect/main.js rename to test/form/samples/side-effect/main.js diff --git a/test/form/side-effects-in-template-literals/_config.js b/test/form/samples/side-effects-in-template-literals/_config.js similarity index 100% rename from test/form/side-effects-in-template-literals/_config.js rename to test/form/samples/side-effects-in-template-literals/_config.js diff --git a/test/form/side-effects-in-template-literals/_expected/amd.js b/test/form/samples/side-effects-in-template-literals/_expected/amd.js similarity index 100% rename from test/form/side-effects-in-template-literals/_expected/amd.js rename to test/form/samples/side-effects-in-template-literals/_expected/amd.js diff --git a/test/form/side-effects-in-template-literals/_expected/cjs.js b/test/form/samples/side-effects-in-template-literals/_expected/cjs.js similarity index 100% rename from test/form/side-effects-in-template-literals/_expected/cjs.js rename to test/form/samples/side-effects-in-template-literals/_expected/cjs.js diff --git a/test/form/side-effects-in-template-literals/_expected/es.js b/test/form/samples/side-effects-in-template-literals/_expected/es.js similarity index 100% rename from test/form/side-effects-in-template-literals/_expected/es.js rename to test/form/samples/side-effects-in-template-literals/_expected/es.js diff --git a/test/form/side-effects-in-template-literals/_expected/iife.js b/test/form/samples/side-effects-in-template-literals/_expected/iife.js similarity index 100% rename from test/form/side-effects-in-template-literals/_expected/iife.js rename to test/form/samples/side-effects-in-template-literals/_expected/iife.js diff --git a/test/form/side-effects-in-template-literals/_expected/umd.js b/test/form/samples/side-effects-in-template-literals/_expected/umd.js similarity index 100% rename from test/form/side-effects-in-template-literals/_expected/umd.js rename to test/form/samples/side-effects-in-template-literals/_expected/umd.js diff --git a/test/form/side-effects-in-template-literals/main.js b/test/form/samples/side-effects-in-template-literals/main.js similarity index 100% rename from test/form/side-effects-in-template-literals/main.js rename to test/form/samples/side-effects-in-template-literals/main.js diff --git a/test/form/skips-dead-branches-b/_config.js b/test/form/samples/skips-dead-branches-b/_config.js similarity index 100% rename from test/form/skips-dead-branches-b/_config.js rename to test/form/samples/skips-dead-branches-b/_config.js diff --git a/test/form/skips-dead-branches-b/_expected/amd.js b/test/form/samples/skips-dead-branches-b/_expected/amd.js similarity index 100% rename from test/form/skips-dead-branches-b/_expected/amd.js rename to test/form/samples/skips-dead-branches-b/_expected/amd.js diff --git a/test/form/skips-dead-branches-b/_expected/cjs.js b/test/form/samples/skips-dead-branches-b/_expected/cjs.js similarity index 100% rename from test/form/skips-dead-branches-b/_expected/cjs.js rename to test/form/samples/skips-dead-branches-b/_expected/cjs.js diff --git a/test/form/skips-dead-branches-b/_expected/es.js b/test/form/samples/skips-dead-branches-b/_expected/es.js similarity index 100% rename from test/form/skips-dead-branches-b/_expected/es.js rename to test/form/samples/skips-dead-branches-b/_expected/es.js diff --git a/test/form/skips-dead-branches-b/_expected/iife.js b/test/form/samples/skips-dead-branches-b/_expected/iife.js similarity index 100% rename from test/form/skips-dead-branches-b/_expected/iife.js rename to test/form/samples/skips-dead-branches-b/_expected/iife.js diff --git a/test/form/skips-dead-branches-b/_expected/umd.js b/test/form/samples/skips-dead-branches-b/_expected/umd.js similarity index 100% rename from test/form/skips-dead-branches-b/_expected/umd.js rename to test/form/samples/skips-dead-branches-b/_expected/umd.js diff --git a/test/form/skips-dead-branches-b/main.js b/test/form/samples/skips-dead-branches-b/main.js similarity index 100% rename from test/form/skips-dead-branches-b/main.js rename to test/form/samples/skips-dead-branches-b/main.js diff --git a/test/form/skips-dead-branches-c/_config.js b/test/form/samples/skips-dead-branches-c/_config.js similarity index 100% rename from test/form/skips-dead-branches-c/_config.js rename to test/form/samples/skips-dead-branches-c/_config.js diff --git a/test/form/skips-dead-branches-c/_expected/amd.js b/test/form/samples/skips-dead-branches-c/_expected/amd.js similarity index 100% rename from test/form/skips-dead-branches-c/_expected/amd.js rename to test/form/samples/skips-dead-branches-c/_expected/amd.js diff --git a/test/form/skips-dead-branches-c/_expected/cjs.js b/test/form/samples/skips-dead-branches-c/_expected/cjs.js similarity index 100% rename from test/form/skips-dead-branches-c/_expected/cjs.js rename to test/form/samples/skips-dead-branches-c/_expected/cjs.js diff --git a/test/form/skips-dead-branches-c/_expected/es.js b/test/form/samples/skips-dead-branches-c/_expected/es.js similarity index 100% rename from test/form/skips-dead-branches-c/_expected/es.js rename to test/form/samples/skips-dead-branches-c/_expected/es.js diff --git a/test/form/skips-dead-branches-c/_expected/iife.js b/test/form/samples/skips-dead-branches-c/_expected/iife.js similarity index 100% rename from test/form/skips-dead-branches-c/_expected/iife.js rename to test/form/samples/skips-dead-branches-c/_expected/iife.js diff --git a/test/form/skips-dead-branches-c/_expected/umd.js b/test/form/samples/skips-dead-branches-c/_expected/umd.js similarity index 100% rename from test/form/skips-dead-branches-c/_expected/umd.js rename to test/form/samples/skips-dead-branches-c/_expected/umd.js diff --git a/test/form/skips-dead-branches-c/main.js b/test/form/samples/skips-dead-branches-c/main.js similarity index 100% rename from test/form/skips-dead-branches-c/main.js rename to test/form/samples/skips-dead-branches-c/main.js diff --git a/test/form/skips-dead-branches-d/_config.js b/test/form/samples/skips-dead-branches-d/_config.js similarity index 100% rename from test/form/skips-dead-branches-d/_config.js rename to test/form/samples/skips-dead-branches-d/_config.js diff --git a/test/form/skips-dead-branches-d/_expected/amd.js b/test/form/samples/skips-dead-branches-d/_expected/amd.js similarity index 100% rename from test/form/skips-dead-branches-d/_expected/amd.js rename to test/form/samples/skips-dead-branches-d/_expected/amd.js diff --git a/test/form/skips-dead-branches-d/_expected/cjs.js b/test/form/samples/skips-dead-branches-d/_expected/cjs.js similarity index 100% rename from test/form/skips-dead-branches-d/_expected/cjs.js rename to test/form/samples/skips-dead-branches-d/_expected/cjs.js diff --git a/test/form/skips-dead-branches-d/_expected/es.js b/test/form/samples/skips-dead-branches-d/_expected/es.js similarity index 100% rename from test/form/skips-dead-branches-d/_expected/es.js rename to test/form/samples/skips-dead-branches-d/_expected/es.js diff --git a/test/form/skips-dead-branches-d/_expected/iife.js b/test/form/samples/skips-dead-branches-d/_expected/iife.js similarity index 100% rename from test/form/skips-dead-branches-d/_expected/iife.js rename to test/form/samples/skips-dead-branches-d/_expected/iife.js diff --git a/test/form/skips-dead-branches-d/_expected/umd.js b/test/form/samples/skips-dead-branches-d/_expected/umd.js similarity index 100% rename from test/form/skips-dead-branches-d/_expected/umd.js rename to test/form/samples/skips-dead-branches-d/_expected/umd.js diff --git a/test/form/skips-dead-branches-d/main.js b/test/form/samples/skips-dead-branches-d/main.js similarity index 100% rename from test/form/skips-dead-branches-d/main.js rename to test/form/samples/skips-dead-branches-d/main.js diff --git a/test/form/skips-dead-branches-e/_config.js b/test/form/samples/skips-dead-branches-e/_config.js similarity index 100% rename from test/form/skips-dead-branches-e/_config.js rename to test/form/samples/skips-dead-branches-e/_config.js diff --git a/test/form/skips-dead-branches-e/_expected/amd.js b/test/form/samples/skips-dead-branches-e/_expected/amd.js similarity index 100% rename from test/form/skips-dead-branches-e/_expected/amd.js rename to test/form/samples/skips-dead-branches-e/_expected/amd.js diff --git a/test/form/skips-dead-branches-e/_expected/cjs.js b/test/form/samples/skips-dead-branches-e/_expected/cjs.js similarity index 100% rename from test/form/skips-dead-branches-e/_expected/cjs.js rename to test/form/samples/skips-dead-branches-e/_expected/cjs.js diff --git a/test/form/skips-dead-branches-e/_expected/es.js b/test/form/samples/skips-dead-branches-e/_expected/es.js similarity index 100% rename from test/form/skips-dead-branches-e/_expected/es.js rename to test/form/samples/skips-dead-branches-e/_expected/es.js diff --git a/test/form/skips-dead-branches-e/_expected/iife.js b/test/form/samples/skips-dead-branches-e/_expected/iife.js similarity index 100% rename from test/form/skips-dead-branches-e/_expected/iife.js rename to test/form/samples/skips-dead-branches-e/_expected/iife.js diff --git a/test/form/skips-dead-branches-e/_expected/umd.js b/test/form/samples/skips-dead-branches-e/_expected/umd.js similarity index 100% rename from test/form/skips-dead-branches-e/_expected/umd.js rename to test/form/samples/skips-dead-branches-e/_expected/umd.js diff --git a/test/form/skips-dead-branches-e/main.js b/test/form/samples/skips-dead-branches-e/main.js similarity index 100% rename from test/form/skips-dead-branches-e/main.js rename to test/form/samples/skips-dead-branches-e/main.js diff --git a/test/form/skips-dead-branches-f/_config.js b/test/form/samples/skips-dead-branches-f/_config.js similarity index 100% rename from test/form/skips-dead-branches-f/_config.js rename to test/form/samples/skips-dead-branches-f/_config.js diff --git a/test/form/skips-dead-branches-f/_expected/amd.js b/test/form/samples/skips-dead-branches-f/_expected/amd.js similarity index 100% rename from test/form/skips-dead-branches-f/_expected/amd.js rename to test/form/samples/skips-dead-branches-f/_expected/amd.js diff --git a/test/form/skips-dead-branches-f/_expected/cjs.js b/test/form/samples/skips-dead-branches-f/_expected/cjs.js similarity index 100% rename from test/form/skips-dead-branches-f/_expected/cjs.js rename to test/form/samples/skips-dead-branches-f/_expected/cjs.js diff --git a/test/form/skips-dead-branches-f/_expected/es.js b/test/form/samples/skips-dead-branches-f/_expected/es.js similarity index 100% rename from test/form/skips-dead-branches-f/_expected/es.js rename to test/form/samples/skips-dead-branches-f/_expected/es.js diff --git a/test/form/skips-dead-branches-f/_expected/iife.js b/test/form/samples/skips-dead-branches-f/_expected/iife.js similarity index 100% rename from test/form/skips-dead-branches-f/_expected/iife.js rename to test/form/samples/skips-dead-branches-f/_expected/iife.js diff --git a/test/form/skips-dead-branches-f/_expected/umd.js b/test/form/samples/skips-dead-branches-f/_expected/umd.js similarity index 100% rename from test/form/skips-dead-branches-f/_expected/umd.js rename to test/form/samples/skips-dead-branches-f/_expected/umd.js diff --git a/test/form/skips-dead-branches-f/main.js b/test/form/samples/skips-dead-branches-f/main.js similarity index 100% rename from test/form/skips-dead-branches-f/main.js rename to test/form/samples/skips-dead-branches-f/main.js diff --git a/test/form/skips-dead-branches-g/_config.js b/test/form/samples/skips-dead-branches-g/_config.js similarity index 100% rename from test/form/skips-dead-branches-g/_config.js rename to test/form/samples/skips-dead-branches-g/_config.js diff --git a/test/form/skips-dead-branches-g/_expected/amd.js b/test/form/samples/skips-dead-branches-g/_expected/amd.js similarity index 100% rename from test/form/skips-dead-branches-g/_expected/amd.js rename to test/form/samples/skips-dead-branches-g/_expected/amd.js diff --git a/test/form/skips-dead-branches-g/_expected/cjs.js b/test/form/samples/skips-dead-branches-g/_expected/cjs.js similarity index 100% rename from test/form/skips-dead-branches-g/_expected/cjs.js rename to test/form/samples/skips-dead-branches-g/_expected/cjs.js diff --git a/test/form/skips-dead-branches-g/_expected/es.js b/test/form/samples/skips-dead-branches-g/_expected/es.js similarity index 100% rename from test/form/skips-dead-branches-g/_expected/es.js rename to test/form/samples/skips-dead-branches-g/_expected/es.js diff --git a/test/form/skips-dead-branches-g/_expected/iife.js b/test/form/samples/skips-dead-branches-g/_expected/iife.js similarity index 100% rename from test/form/skips-dead-branches-g/_expected/iife.js rename to test/form/samples/skips-dead-branches-g/_expected/iife.js diff --git a/test/form/skips-dead-branches-g/_expected/umd.js b/test/form/samples/skips-dead-branches-g/_expected/umd.js similarity index 100% rename from test/form/skips-dead-branches-g/_expected/umd.js rename to test/form/samples/skips-dead-branches-g/_expected/umd.js diff --git a/test/form/skips-dead-branches-g/main.js b/test/form/samples/skips-dead-branches-g/main.js similarity index 100% rename from test/form/skips-dead-branches-g/main.js rename to test/form/samples/skips-dead-branches-g/main.js diff --git a/test/form/skips-dead-branches-h/_config.js b/test/form/samples/skips-dead-branches-h/_config.js similarity index 100% rename from test/form/skips-dead-branches-h/_config.js rename to test/form/samples/skips-dead-branches-h/_config.js diff --git a/test/form/skips-dead-branches-h/_expected/amd.js b/test/form/samples/skips-dead-branches-h/_expected/amd.js similarity index 100% rename from test/form/skips-dead-branches-h/_expected/amd.js rename to test/form/samples/skips-dead-branches-h/_expected/amd.js diff --git a/test/form/skips-dead-branches-h/_expected/cjs.js b/test/form/samples/skips-dead-branches-h/_expected/cjs.js similarity index 100% rename from test/form/skips-dead-branches-h/_expected/cjs.js rename to test/form/samples/skips-dead-branches-h/_expected/cjs.js diff --git a/test/form/skips-dead-branches-h/_expected/es.js b/test/form/samples/skips-dead-branches-h/_expected/es.js similarity index 100% rename from test/form/skips-dead-branches-h/_expected/es.js rename to test/form/samples/skips-dead-branches-h/_expected/es.js diff --git a/test/form/skips-dead-branches-h/_expected/iife.js b/test/form/samples/skips-dead-branches-h/_expected/iife.js similarity index 100% rename from test/form/skips-dead-branches-h/_expected/iife.js rename to test/form/samples/skips-dead-branches-h/_expected/iife.js diff --git a/test/form/skips-dead-branches-h/_expected/umd.js b/test/form/samples/skips-dead-branches-h/_expected/umd.js similarity index 100% rename from test/form/skips-dead-branches-h/_expected/umd.js rename to test/form/samples/skips-dead-branches-h/_expected/umd.js diff --git a/test/form/skips-dead-branches-h/main.js b/test/form/samples/skips-dead-branches-h/main.js similarity index 100% rename from test/form/skips-dead-branches-h/main.js rename to test/form/samples/skips-dead-branches-h/main.js diff --git a/test/form/skips-dead-branches-i/_config.js b/test/form/samples/skips-dead-branches-i/_config.js similarity index 100% rename from test/form/skips-dead-branches-i/_config.js rename to test/form/samples/skips-dead-branches-i/_config.js diff --git a/test/form/skips-dead-branches-i/_expected/amd.js b/test/form/samples/skips-dead-branches-i/_expected/amd.js similarity index 100% rename from test/form/skips-dead-branches-i/_expected/amd.js rename to test/form/samples/skips-dead-branches-i/_expected/amd.js diff --git a/test/form/skips-dead-branches-i/_expected/cjs.js b/test/form/samples/skips-dead-branches-i/_expected/cjs.js similarity index 100% rename from test/form/skips-dead-branches-i/_expected/cjs.js rename to test/form/samples/skips-dead-branches-i/_expected/cjs.js diff --git a/test/form/skips-dead-branches-i/_expected/es.js b/test/form/samples/skips-dead-branches-i/_expected/es.js similarity index 100% rename from test/form/skips-dead-branches-i/_expected/es.js rename to test/form/samples/skips-dead-branches-i/_expected/es.js diff --git a/test/form/skips-dead-branches-i/_expected/iife.js b/test/form/samples/skips-dead-branches-i/_expected/iife.js similarity index 100% rename from test/form/skips-dead-branches-i/_expected/iife.js rename to test/form/samples/skips-dead-branches-i/_expected/iife.js diff --git a/test/form/skips-dead-branches-i/_expected/umd.js b/test/form/samples/skips-dead-branches-i/_expected/umd.js similarity index 100% rename from test/form/skips-dead-branches-i/_expected/umd.js rename to test/form/samples/skips-dead-branches-i/_expected/umd.js diff --git a/test/form/skips-dead-branches-i/main.js b/test/form/samples/skips-dead-branches-i/main.js similarity index 100% rename from test/form/skips-dead-branches-i/main.js rename to test/form/samples/skips-dead-branches-i/main.js diff --git a/test/form/skips-dead-branches-j/_config.js b/test/form/samples/skips-dead-branches-j/_config.js similarity index 100% rename from test/form/skips-dead-branches-j/_config.js rename to test/form/samples/skips-dead-branches-j/_config.js diff --git a/test/form/skips-dead-branches-j/_expected/amd.js b/test/form/samples/skips-dead-branches-j/_expected/amd.js similarity index 100% rename from test/form/skips-dead-branches-j/_expected/amd.js rename to test/form/samples/skips-dead-branches-j/_expected/amd.js diff --git a/test/form/skips-dead-branches-j/_expected/cjs.js b/test/form/samples/skips-dead-branches-j/_expected/cjs.js similarity index 100% rename from test/form/skips-dead-branches-j/_expected/cjs.js rename to test/form/samples/skips-dead-branches-j/_expected/cjs.js diff --git a/test/form/skips-dead-branches-j/_expected/es.js b/test/form/samples/skips-dead-branches-j/_expected/es.js similarity index 100% rename from test/form/skips-dead-branches-j/_expected/es.js rename to test/form/samples/skips-dead-branches-j/_expected/es.js diff --git a/test/form/skips-dead-branches-j/_expected/iife.js b/test/form/samples/skips-dead-branches-j/_expected/iife.js similarity index 100% rename from test/form/skips-dead-branches-j/_expected/iife.js rename to test/form/samples/skips-dead-branches-j/_expected/iife.js diff --git a/test/form/skips-dead-branches-j/_expected/umd.js b/test/form/samples/skips-dead-branches-j/_expected/umd.js similarity index 100% rename from test/form/skips-dead-branches-j/_expected/umd.js rename to test/form/samples/skips-dead-branches-j/_expected/umd.js diff --git a/test/form/skips-dead-branches-j/main.js b/test/form/samples/skips-dead-branches-j/main.js similarity index 100% rename from test/form/skips-dead-branches-j/main.js rename to test/form/samples/skips-dead-branches-j/main.js diff --git a/test/form/skips-dead-branches/_config.js b/test/form/samples/skips-dead-branches/_config.js similarity index 100% rename from test/form/skips-dead-branches/_config.js rename to test/form/samples/skips-dead-branches/_config.js diff --git a/test/form/skips-dead-branches/_expected/amd.js b/test/form/samples/skips-dead-branches/_expected/amd.js similarity index 100% rename from test/form/skips-dead-branches/_expected/amd.js rename to test/form/samples/skips-dead-branches/_expected/amd.js diff --git a/test/form/skips-dead-branches/_expected/cjs.js b/test/form/samples/skips-dead-branches/_expected/cjs.js similarity index 100% rename from test/form/skips-dead-branches/_expected/cjs.js rename to test/form/samples/skips-dead-branches/_expected/cjs.js diff --git a/test/form/skips-dead-branches/_expected/es.js b/test/form/samples/skips-dead-branches/_expected/es.js similarity index 100% rename from test/form/skips-dead-branches/_expected/es.js rename to test/form/samples/skips-dead-branches/_expected/es.js diff --git a/test/form/skips-dead-branches/_expected/iife.js b/test/form/samples/skips-dead-branches/_expected/iife.js similarity index 100% rename from test/form/skips-dead-branches/_expected/iife.js rename to test/form/samples/skips-dead-branches/_expected/iife.js diff --git a/test/form/skips-dead-branches/_expected/umd.js b/test/form/samples/skips-dead-branches/_expected/umd.js similarity index 100% rename from test/form/skips-dead-branches/_expected/umd.js rename to test/form/samples/skips-dead-branches/_expected/umd.js diff --git a/test/form/skips-dead-branches/main.js b/test/form/samples/skips-dead-branches/main.js similarity index 100% rename from test/form/skips-dead-branches/main.js rename to test/form/samples/skips-dead-branches/main.js diff --git a/test/form/sourcemaps-external/_config.js b/test/form/samples/sourcemaps-external/_config.js similarity index 100% rename from test/form/sourcemaps-external/_config.js rename to test/form/samples/sourcemaps-external/_config.js diff --git a/test/form/sourcemaps-external/_expected/amd.js b/test/form/samples/sourcemaps-external/_expected/amd.js similarity index 100% rename from test/form/sourcemaps-external/_expected/amd.js rename to test/form/samples/sourcemaps-external/_expected/amd.js diff --git a/test/form/sourcemaps-external/_expected/amd.js.map b/test/form/samples/sourcemaps-external/_expected/amd.js.map similarity index 100% rename from test/form/sourcemaps-external/_expected/amd.js.map rename to test/form/samples/sourcemaps-external/_expected/amd.js.map diff --git a/test/form/sourcemaps-external/_expected/cjs.js b/test/form/samples/sourcemaps-external/_expected/cjs.js similarity index 100% rename from test/form/sourcemaps-external/_expected/cjs.js rename to test/form/samples/sourcemaps-external/_expected/cjs.js diff --git a/test/form/sourcemaps-external/_expected/cjs.js.map b/test/form/samples/sourcemaps-external/_expected/cjs.js.map similarity index 100% rename from test/form/sourcemaps-external/_expected/cjs.js.map rename to test/form/samples/sourcemaps-external/_expected/cjs.js.map diff --git a/test/form/sourcemaps-external/_expected/es.js b/test/form/samples/sourcemaps-external/_expected/es.js similarity index 100% rename from test/form/sourcemaps-external/_expected/es.js rename to test/form/samples/sourcemaps-external/_expected/es.js diff --git a/test/form/sourcemaps-external/_expected/es.js.map b/test/form/samples/sourcemaps-external/_expected/es.js.map similarity index 100% rename from test/form/sourcemaps-external/_expected/es.js.map rename to test/form/samples/sourcemaps-external/_expected/es.js.map diff --git a/test/form/sourcemaps-external/_expected/iife.js b/test/form/samples/sourcemaps-external/_expected/iife.js similarity index 100% rename from test/form/sourcemaps-external/_expected/iife.js rename to test/form/samples/sourcemaps-external/_expected/iife.js diff --git a/test/form/sourcemaps-external/_expected/iife.js.map b/test/form/samples/sourcemaps-external/_expected/iife.js.map similarity index 100% rename from test/form/sourcemaps-external/_expected/iife.js.map rename to test/form/samples/sourcemaps-external/_expected/iife.js.map diff --git a/test/form/sourcemaps-external/_expected/umd.js b/test/form/samples/sourcemaps-external/_expected/umd.js similarity index 100% rename from test/form/sourcemaps-external/_expected/umd.js rename to test/form/samples/sourcemaps-external/_expected/umd.js diff --git a/test/form/sourcemaps-external/_expected/umd.js.map b/test/form/samples/sourcemaps-external/_expected/umd.js.map similarity index 100% rename from test/form/sourcemaps-external/_expected/umd.js.map rename to test/form/samples/sourcemaps-external/_expected/umd.js.map diff --git a/test/form/sourcemaps-external/bar.js b/test/form/samples/sourcemaps-external/bar.js similarity index 100% rename from test/form/sourcemaps-external/bar.js rename to test/form/samples/sourcemaps-external/bar.js diff --git a/test/form/sourcemaps-external/foo.js b/test/form/samples/sourcemaps-external/foo.js similarity index 100% rename from test/form/sourcemaps-external/foo.js rename to test/form/samples/sourcemaps-external/foo.js diff --git a/test/form/sourcemaps-external/main.js b/test/form/samples/sourcemaps-external/main.js similarity index 100% rename from test/form/sourcemaps-external/main.js rename to test/form/samples/sourcemaps-external/main.js diff --git a/test/form/sourcemaps-inline/_config.js b/test/form/samples/sourcemaps-inline/_config.js similarity index 100% rename from test/form/sourcemaps-inline/_config.js rename to test/form/samples/sourcemaps-inline/_config.js diff --git a/test/form/sourcemaps-inline/_expected/amd.js b/test/form/samples/sourcemaps-inline/_expected/amd.js similarity index 100% rename from test/form/sourcemaps-inline/_expected/amd.js rename to test/form/samples/sourcemaps-inline/_expected/amd.js diff --git a/test/form/sourcemaps-inline/_expected/cjs.js b/test/form/samples/sourcemaps-inline/_expected/cjs.js similarity index 100% rename from test/form/sourcemaps-inline/_expected/cjs.js rename to test/form/samples/sourcemaps-inline/_expected/cjs.js diff --git a/test/form/sourcemaps-inline/_expected/es.js b/test/form/samples/sourcemaps-inline/_expected/es.js similarity index 100% rename from test/form/sourcemaps-inline/_expected/es.js rename to test/form/samples/sourcemaps-inline/_expected/es.js diff --git a/test/form/sourcemaps-inline/_expected/iife.js b/test/form/samples/sourcemaps-inline/_expected/iife.js similarity index 100% rename from test/form/sourcemaps-inline/_expected/iife.js rename to test/form/samples/sourcemaps-inline/_expected/iife.js diff --git a/test/form/sourcemaps-inline/_expected/umd.js b/test/form/samples/sourcemaps-inline/_expected/umd.js similarity index 100% rename from test/form/sourcemaps-inline/_expected/umd.js rename to test/form/samples/sourcemaps-inline/_expected/umd.js diff --git a/test/form/sourcemaps-inline/bar.js b/test/form/samples/sourcemaps-inline/bar.js similarity index 100% rename from test/form/sourcemaps-inline/bar.js rename to test/form/samples/sourcemaps-inline/bar.js diff --git a/test/form/sourcemaps-inline/foo.js b/test/form/samples/sourcemaps-inline/foo.js similarity index 100% rename from test/form/sourcemaps-inline/foo.js rename to test/form/samples/sourcemaps-inline/foo.js diff --git a/test/form/sourcemaps-inline/main.js b/test/form/samples/sourcemaps-inline/main.js similarity index 100% rename from test/form/sourcemaps-inline/main.js rename to test/form/samples/sourcemaps-inline/main.js diff --git a/test/form/spacing-after-function-with-semicolon/_config.js b/test/form/samples/spacing-after-function-with-semicolon/_config.js similarity index 100% rename from test/form/spacing-after-function-with-semicolon/_config.js rename to test/form/samples/spacing-after-function-with-semicolon/_config.js diff --git a/test/form/spacing-after-function-with-semicolon/_expected/amd.js b/test/form/samples/spacing-after-function-with-semicolon/_expected/amd.js similarity index 100% rename from test/form/spacing-after-function-with-semicolon/_expected/amd.js rename to test/form/samples/spacing-after-function-with-semicolon/_expected/amd.js diff --git a/test/form/spacing-after-function-with-semicolon/_expected/cjs.js b/test/form/samples/spacing-after-function-with-semicolon/_expected/cjs.js similarity index 100% rename from test/form/spacing-after-function-with-semicolon/_expected/cjs.js rename to test/form/samples/spacing-after-function-with-semicolon/_expected/cjs.js diff --git a/test/form/spacing-after-function-with-semicolon/_expected/es.js b/test/form/samples/spacing-after-function-with-semicolon/_expected/es.js similarity index 100% rename from test/form/spacing-after-function-with-semicolon/_expected/es.js rename to test/form/samples/spacing-after-function-with-semicolon/_expected/es.js diff --git a/test/form/spacing-after-function-with-semicolon/_expected/iife.js b/test/form/samples/spacing-after-function-with-semicolon/_expected/iife.js similarity index 100% rename from test/form/spacing-after-function-with-semicolon/_expected/iife.js rename to test/form/samples/spacing-after-function-with-semicolon/_expected/iife.js diff --git a/test/form/spacing-after-function-with-semicolon/_expected/umd.js b/test/form/samples/spacing-after-function-with-semicolon/_expected/umd.js similarity index 100% rename from test/form/spacing-after-function-with-semicolon/_expected/umd.js rename to test/form/samples/spacing-after-function-with-semicolon/_expected/umd.js diff --git a/test/form/spacing-after-function-with-semicolon/main.js b/test/form/samples/spacing-after-function-with-semicolon/main.js similarity index 100% rename from test/form/spacing-after-function-with-semicolon/main.js rename to test/form/samples/spacing-after-function-with-semicolon/main.js diff --git a/test/form/string-indentation-b/_config.js b/test/form/samples/string-indentation-b/_config.js similarity index 100% rename from test/form/string-indentation-b/_config.js rename to test/form/samples/string-indentation-b/_config.js diff --git a/test/form/string-indentation-b/_expected/amd.js b/test/form/samples/string-indentation-b/_expected/amd.js similarity index 100% rename from test/form/string-indentation-b/_expected/amd.js rename to test/form/samples/string-indentation-b/_expected/amd.js diff --git a/test/form/string-indentation-b/_expected/cjs.js b/test/form/samples/string-indentation-b/_expected/cjs.js similarity index 100% rename from test/form/string-indentation-b/_expected/cjs.js rename to test/form/samples/string-indentation-b/_expected/cjs.js diff --git a/test/form/string-indentation-b/_expected/es.js b/test/form/samples/string-indentation-b/_expected/es.js similarity index 100% rename from test/form/string-indentation-b/_expected/es.js rename to test/form/samples/string-indentation-b/_expected/es.js diff --git a/test/form/string-indentation-b/_expected/iife.js b/test/form/samples/string-indentation-b/_expected/iife.js similarity index 100% rename from test/form/string-indentation-b/_expected/iife.js rename to test/form/samples/string-indentation-b/_expected/iife.js diff --git a/test/form/string-indentation-b/_expected/umd.js b/test/form/samples/string-indentation-b/_expected/umd.js similarity index 100% rename from test/form/string-indentation-b/_expected/umd.js rename to test/form/samples/string-indentation-b/_expected/umd.js diff --git a/test/form/string-indentation-b/main.js b/test/form/samples/string-indentation-b/main.js similarity index 100% rename from test/form/string-indentation-b/main.js rename to test/form/samples/string-indentation-b/main.js diff --git a/test/form/string-indentation/_config.js b/test/form/samples/string-indentation/_config.js similarity index 100% rename from test/form/string-indentation/_config.js rename to test/form/samples/string-indentation/_config.js diff --git a/test/form/string-indentation/_expected/amd.js b/test/form/samples/string-indentation/_expected/amd.js similarity index 100% rename from test/form/string-indentation/_expected/amd.js rename to test/form/samples/string-indentation/_expected/amd.js diff --git a/test/form/string-indentation/_expected/cjs.js b/test/form/samples/string-indentation/_expected/cjs.js similarity index 100% rename from test/form/string-indentation/_expected/cjs.js rename to test/form/samples/string-indentation/_expected/cjs.js diff --git a/test/form/string-indentation/_expected/es.js b/test/form/samples/string-indentation/_expected/es.js similarity index 100% rename from test/form/string-indentation/_expected/es.js rename to test/form/samples/string-indentation/_expected/es.js diff --git a/test/form/string-indentation/_expected/iife.js b/test/form/samples/string-indentation/_expected/iife.js similarity index 100% rename from test/form/string-indentation/_expected/iife.js rename to test/form/samples/string-indentation/_expected/iife.js diff --git a/test/form/string-indentation/_expected/umd.js b/test/form/samples/string-indentation/_expected/umd.js similarity index 100% rename from test/form/string-indentation/_expected/umd.js rename to test/form/samples/string-indentation/_expected/umd.js diff --git a/test/form/string-indentation/main.js b/test/form/samples/string-indentation/main.js similarity index 100% rename from test/form/string-indentation/main.js rename to test/form/samples/string-indentation/main.js diff --git a/test/form/switch-scopes/_config.js b/test/form/samples/switch-scopes/_config.js similarity index 100% rename from test/form/switch-scopes/_config.js rename to test/form/samples/switch-scopes/_config.js diff --git a/test/form/switch-scopes/_expected/amd.js b/test/form/samples/switch-scopes/_expected/amd.js similarity index 100% rename from test/form/switch-scopes/_expected/amd.js rename to test/form/samples/switch-scopes/_expected/amd.js diff --git a/test/form/switch-scopes/_expected/cjs.js b/test/form/samples/switch-scopes/_expected/cjs.js similarity index 100% rename from test/form/switch-scopes/_expected/cjs.js rename to test/form/samples/switch-scopes/_expected/cjs.js diff --git a/test/form/switch-scopes/_expected/es.js b/test/form/samples/switch-scopes/_expected/es.js similarity index 100% rename from test/form/switch-scopes/_expected/es.js rename to test/form/samples/switch-scopes/_expected/es.js diff --git a/test/form/switch-scopes/_expected/iife.js b/test/form/samples/switch-scopes/_expected/iife.js similarity index 100% rename from test/form/switch-scopes/_expected/iife.js rename to test/form/samples/switch-scopes/_expected/iife.js diff --git a/test/form/switch-scopes/_expected/umd.js b/test/form/samples/switch-scopes/_expected/umd.js similarity index 100% rename from test/form/switch-scopes/_expected/umd.js rename to test/form/samples/switch-scopes/_expected/umd.js diff --git a/test/form/switch-scopes/main.js b/test/form/samples/switch-scopes/main.js similarity index 100% rename from test/form/switch-scopes/main.js rename to test/form/samples/switch-scopes/main.js diff --git a/test/form/this-is-undefined/_config.js b/test/form/samples/this-is-undefined/_config.js similarity index 100% rename from test/form/this-is-undefined/_config.js rename to test/form/samples/this-is-undefined/_config.js diff --git a/test/form/this-is-undefined/_expected/amd.js b/test/form/samples/this-is-undefined/_expected/amd.js similarity index 100% rename from test/form/this-is-undefined/_expected/amd.js rename to test/form/samples/this-is-undefined/_expected/amd.js diff --git a/test/form/this-is-undefined/_expected/cjs.js b/test/form/samples/this-is-undefined/_expected/cjs.js similarity index 100% rename from test/form/this-is-undefined/_expected/cjs.js rename to test/form/samples/this-is-undefined/_expected/cjs.js diff --git a/test/form/this-is-undefined/_expected/es.js b/test/form/samples/this-is-undefined/_expected/es.js similarity index 100% rename from test/form/this-is-undefined/_expected/es.js rename to test/form/samples/this-is-undefined/_expected/es.js diff --git a/test/form/this-is-undefined/_expected/iife.js b/test/form/samples/this-is-undefined/_expected/iife.js similarity index 100% rename from test/form/this-is-undefined/_expected/iife.js rename to test/form/samples/this-is-undefined/_expected/iife.js diff --git a/test/form/this-is-undefined/_expected/umd.js b/test/form/samples/this-is-undefined/_expected/umd.js similarity index 100% rename from test/form/this-is-undefined/_expected/umd.js rename to test/form/samples/this-is-undefined/_expected/umd.js diff --git a/test/form/this-is-undefined/main.js b/test/form/samples/this-is-undefined/main.js similarity index 100% rename from test/form/this-is-undefined/main.js rename to test/form/samples/this-is-undefined/main.js diff --git a/test/form/transform-bundle-plugin-options/_config.js b/test/form/samples/transform-bundle-plugin-options/_config.js similarity index 100% rename from test/form/transform-bundle-plugin-options/_config.js rename to test/form/samples/transform-bundle-plugin-options/_config.js diff --git a/test/form/transform-bundle-plugin-options/_expected/amd.js b/test/form/samples/transform-bundle-plugin-options/_expected/amd.js similarity index 100% rename from test/form/transform-bundle-plugin-options/_expected/amd.js rename to test/form/samples/transform-bundle-plugin-options/_expected/amd.js diff --git a/test/form/transform-bundle-plugin-options/_expected/cjs.js b/test/form/samples/transform-bundle-plugin-options/_expected/cjs.js similarity index 100% rename from test/form/transform-bundle-plugin-options/_expected/cjs.js rename to test/form/samples/transform-bundle-plugin-options/_expected/cjs.js diff --git a/test/form/transform-bundle-plugin-options/_expected/es.js b/test/form/samples/transform-bundle-plugin-options/_expected/es.js similarity index 100% rename from test/form/transform-bundle-plugin-options/_expected/es.js rename to test/form/samples/transform-bundle-plugin-options/_expected/es.js diff --git a/test/form/transform-bundle-plugin-options/_expected/iife.js b/test/form/samples/transform-bundle-plugin-options/_expected/iife.js similarity index 100% rename from test/form/transform-bundle-plugin-options/_expected/iife.js rename to test/form/samples/transform-bundle-plugin-options/_expected/iife.js diff --git a/test/form/transform-bundle-plugin-options/_expected/umd.js b/test/form/samples/transform-bundle-plugin-options/_expected/umd.js similarity index 100% rename from test/form/transform-bundle-plugin-options/_expected/umd.js rename to test/form/samples/transform-bundle-plugin-options/_expected/umd.js diff --git a/test/form/transform-bundle-plugin-options/main.js b/test/form/samples/transform-bundle-plugin-options/main.js similarity index 100% rename from test/form/transform-bundle-plugin-options/main.js rename to test/form/samples/transform-bundle-plugin-options/main.js diff --git a/test/form/transform-bundle-plugin/_config.js b/test/form/samples/transform-bundle-plugin/_config.js similarity index 100% rename from test/form/transform-bundle-plugin/_config.js rename to test/form/samples/transform-bundle-plugin/_config.js diff --git a/test/form/transform-bundle-plugin/_expected/amd.js b/test/form/samples/transform-bundle-plugin/_expected/amd.js similarity index 100% rename from test/form/transform-bundle-plugin/_expected/amd.js rename to test/form/samples/transform-bundle-plugin/_expected/amd.js diff --git a/test/form/transform-bundle-plugin/_expected/cjs.js b/test/form/samples/transform-bundle-plugin/_expected/cjs.js similarity index 100% rename from test/form/transform-bundle-plugin/_expected/cjs.js rename to test/form/samples/transform-bundle-plugin/_expected/cjs.js diff --git a/test/form/transform-bundle-plugin/_expected/es.js b/test/form/samples/transform-bundle-plugin/_expected/es.js similarity index 100% rename from test/form/transform-bundle-plugin/_expected/es.js rename to test/form/samples/transform-bundle-plugin/_expected/es.js diff --git a/test/form/transform-bundle-plugin/_expected/iife.js b/test/form/samples/transform-bundle-plugin/_expected/iife.js similarity index 100% rename from test/form/transform-bundle-plugin/_expected/iife.js rename to test/form/samples/transform-bundle-plugin/_expected/iife.js diff --git a/test/form/transform-bundle-plugin/_expected/umd.js b/test/form/samples/transform-bundle-plugin/_expected/umd.js similarity index 100% rename from test/form/transform-bundle-plugin/_expected/umd.js rename to test/form/samples/transform-bundle-plugin/_expected/umd.js diff --git a/test/form/transform-bundle-plugin/main.js b/test/form/samples/transform-bundle-plugin/main.js similarity index 100% rename from test/form/transform-bundle-plugin/main.js rename to test/form/samples/transform-bundle-plugin/main.js diff --git a/test/form/umd-noconflict-extend/_config.js b/test/form/samples/umd-noconflict-extend/_config.js similarity index 100% rename from test/form/umd-noconflict-extend/_config.js rename to test/form/samples/umd-noconflict-extend/_config.js diff --git a/test/form/umd-noconflict-extend/_expected/amd.js b/test/form/samples/umd-noconflict-extend/_expected/amd.js similarity index 100% rename from test/form/umd-noconflict-extend/_expected/amd.js rename to test/form/samples/umd-noconflict-extend/_expected/amd.js diff --git a/test/form/umd-noconflict-extend/_expected/cjs.js b/test/form/samples/umd-noconflict-extend/_expected/cjs.js similarity index 100% rename from test/form/umd-noconflict-extend/_expected/cjs.js rename to test/form/samples/umd-noconflict-extend/_expected/cjs.js diff --git a/test/form/umd-noconflict-extend/_expected/es.js b/test/form/samples/umd-noconflict-extend/_expected/es.js similarity index 100% rename from test/form/umd-noconflict-extend/_expected/es.js rename to test/form/samples/umd-noconflict-extend/_expected/es.js diff --git a/test/form/umd-noconflict-extend/_expected/iife.js b/test/form/samples/umd-noconflict-extend/_expected/iife.js similarity index 100% rename from test/form/umd-noconflict-extend/_expected/iife.js rename to test/form/samples/umd-noconflict-extend/_expected/iife.js diff --git a/test/form/umd-noconflict-extend/_expected/umd.js b/test/form/samples/umd-noconflict-extend/_expected/umd.js similarity index 100% rename from test/form/umd-noconflict-extend/_expected/umd.js rename to test/form/samples/umd-noconflict-extend/_expected/umd.js diff --git a/test/form/umd-noconflict-extend/main.js b/test/form/samples/umd-noconflict-extend/main.js similarity index 100% rename from test/form/umd-noconflict-extend/main.js rename to test/form/samples/umd-noconflict-extend/main.js diff --git a/test/form/umd-noconflict-namespaced/_config.js b/test/form/samples/umd-noconflict-namespaced/_config.js similarity index 100% rename from test/form/umd-noconflict-namespaced/_config.js rename to test/form/samples/umd-noconflict-namespaced/_config.js diff --git a/test/form/umd-noconflict-namespaced/_expected/amd.js b/test/form/samples/umd-noconflict-namespaced/_expected/amd.js similarity index 100% rename from test/form/umd-noconflict-namespaced/_expected/amd.js rename to test/form/samples/umd-noconflict-namespaced/_expected/amd.js diff --git a/test/form/umd-noconflict-namespaced/_expected/cjs.js b/test/form/samples/umd-noconflict-namespaced/_expected/cjs.js similarity index 100% rename from test/form/umd-noconflict-namespaced/_expected/cjs.js rename to test/form/samples/umd-noconflict-namespaced/_expected/cjs.js diff --git a/test/form/umd-noconflict-namespaced/_expected/es.js b/test/form/samples/umd-noconflict-namespaced/_expected/es.js similarity index 100% rename from test/form/umd-noconflict-namespaced/_expected/es.js rename to test/form/samples/umd-noconflict-namespaced/_expected/es.js diff --git a/test/form/umd-noconflict-namespaced/_expected/iife.js b/test/form/samples/umd-noconflict-namespaced/_expected/iife.js similarity index 100% rename from test/form/umd-noconflict-namespaced/_expected/iife.js rename to test/form/samples/umd-noconflict-namespaced/_expected/iife.js diff --git a/test/form/umd-noconflict-namespaced/_expected/umd.js b/test/form/samples/umd-noconflict-namespaced/_expected/umd.js similarity index 100% rename from test/form/umd-noconflict-namespaced/_expected/umd.js rename to test/form/samples/umd-noconflict-namespaced/_expected/umd.js diff --git a/test/form/umd-noconflict-namespaced/main.js b/test/form/samples/umd-noconflict-namespaced/main.js similarity index 100% rename from test/form/umd-noconflict-namespaced/main.js rename to test/form/samples/umd-noconflict-namespaced/main.js diff --git a/test/form/umd-noconflict/_config.js b/test/form/samples/umd-noconflict/_config.js similarity index 100% rename from test/form/umd-noconflict/_config.js rename to test/form/samples/umd-noconflict/_config.js diff --git a/test/form/umd-noconflict/_expected/amd.js b/test/form/samples/umd-noconflict/_expected/amd.js similarity index 100% rename from test/form/umd-noconflict/_expected/amd.js rename to test/form/samples/umd-noconflict/_expected/amd.js diff --git a/test/form/umd-noconflict/_expected/cjs.js b/test/form/samples/umd-noconflict/_expected/cjs.js similarity index 100% rename from test/form/umd-noconflict/_expected/cjs.js rename to test/form/samples/umd-noconflict/_expected/cjs.js diff --git a/test/form/umd-noconflict/_expected/es.js b/test/form/samples/umd-noconflict/_expected/es.js similarity index 100% rename from test/form/umd-noconflict/_expected/es.js rename to test/form/samples/umd-noconflict/_expected/es.js diff --git a/test/form/umd-noconflict/_expected/iife.js b/test/form/samples/umd-noconflict/_expected/iife.js similarity index 100% rename from test/form/umd-noconflict/_expected/iife.js rename to test/form/samples/umd-noconflict/_expected/iife.js diff --git a/test/form/umd-noconflict/_expected/umd.js b/test/form/samples/umd-noconflict/_expected/umd.js similarity index 100% rename from test/form/umd-noconflict/_expected/umd.js rename to test/form/samples/umd-noconflict/_expected/umd.js diff --git a/test/form/umd-noconflict/main.js b/test/form/samples/umd-noconflict/main.js similarity index 100% rename from test/form/umd-noconflict/main.js rename to test/form/samples/umd-noconflict/main.js diff --git a/test/form/unmodified-default-exports-function-argument/_config.js b/test/form/samples/unmodified-default-exports-function-argument/_config.js similarity index 100% rename from test/form/unmodified-default-exports-function-argument/_config.js rename to test/form/samples/unmodified-default-exports-function-argument/_config.js diff --git a/test/form/unmodified-default-exports-function-argument/_expected/amd.js b/test/form/samples/unmodified-default-exports-function-argument/_expected/amd.js similarity index 100% rename from test/form/unmodified-default-exports-function-argument/_expected/amd.js rename to test/form/samples/unmodified-default-exports-function-argument/_expected/amd.js diff --git a/test/form/unmodified-default-exports-function-argument/_expected/cjs.js b/test/form/samples/unmodified-default-exports-function-argument/_expected/cjs.js similarity index 100% rename from test/form/unmodified-default-exports-function-argument/_expected/cjs.js rename to test/form/samples/unmodified-default-exports-function-argument/_expected/cjs.js diff --git a/test/form/unmodified-default-exports-function-argument/_expected/es.js b/test/form/samples/unmodified-default-exports-function-argument/_expected/es.js similarity index 100% rename from test/form/unmodified-default-exports-function-argument/_expected/es.js rename to test/form/samples/unmodified-default-exports-function-argument/_expected/es.js diff --git a/test/form/unmodified-default-exports-function-argument/_expected/iife.js b/test/form/samples/unmodified-default-exports-function-argument/_expected/iife.js similarity index 100% rename from test/form/unmodified-default-exports-function-argument/_expected/iife.js rename to test/form/samples/unmodified-default-exports-function-argument/_expected/iife.js diff --git a/test/form/unmodified-default-exports-function-argument/_expected/umd.js b/test/form/samples/unmodified-default-exports-function-argument/_expected/umd.js similarity index 100% rename from test/form/unmodified-default-exports-function-argument/_expected/umd.js rename to test/form/samples/unmodified-default-exports-function-argument/_expected/umd.js diff --git a/test/form/unmodified-default-exports-function-argument/foo.js b/test/form/samples/unmodified-default-exports-function-argument/foo.js similarity index 100% rename from test/form/unmodified-default-exports-function-argument/foo.js rename to test/form/samples/unmodified-default-exports-function-argument/foo.js diff --git a/test/form/unmodified-default-exports-function-argument/main.js b/test/form/samples/unmodified-default-exports-function-argument/main.js similarity index 100% rename from test/form/unmodified-default-exports-function-argument/main.js rename to test/form/samples/unmodified-default-exports-function-argument/main.js diff --git a/test/form/unmodified-default-exports/_config.js b/test/form/samples/unmodified-default-exports/_config.js similarity index 100% rename from test/form/unmodified-default-exports/_config.js rename to test/form/samples/unmodified-default-exports/_config.js diff --git a/test/form/unmodified-default-exports/_expected/amd.js b/test/form/samples/unmodified-default-exports/_expected/amd.js similarity index 100% rename from test/form/unmodified-default-exports/_expected/amd.js rename to test/form/samples/unmodified-default-exports/_expected/amd.js diff --git a/test/form/unmodified-default-exports/_expected/cjs.js b/test/form/samples/unmodified-default-exports/_expected/cjs.js similarity index 100% rename from test/form/unmodified-default-exports/_expected/cjs.js rename to test/form/samples/unmodified-default-exports/_expected/cjs.js diff --git a/test/form/unmodified-default-exports/_expected/es.js b/test/form/samples/unmodified-default-exports/_expected/es.js similarity index 100% rename from test/form/unmodified-default-exports/_expected/es.js rename to test/form/samples/unmodified-default-exports/_expected/es.js diff --git a/test/form/unmodified-default-exports/_expected/iife.js b/test/form/samples/unmodified-default-exports/_expected/iife.js similarity index 100% rename from test/form/unmodified-default-exports/_expected/iife.js rename to test/form/samples/unmodified-default-exports/_expected/iife.js diff --git a/test/form/unmodified-default-exports/_expected/umd.js b/test/form/samples/unmodified-default-exports/_expected/umd.js similarity index 100% rename from test/form/unmodified-default-exports/_expected/umd.js rename to test/form/samples/unmodified-default-exports/_expected/umd.js diff --git a/test/form/unmodified-default-exports/foo.js b/test/form/samples/unmodified-default-exports/foo.js similarity index 100% rename from test/form/unmodified-default-exports/foo.js rename to test/form/samples/unmodified-default-exports/foo.js diff --git a/test/form/unmodified-default-exports/main.js b/test/form/samples/unmodified-default-exports/main.js similarity index 100% rename from test/form/unmodified-default-exports/main.js rename to test/form/samples/unmodified-default-exports/main.js diff --git a/test/form/unused-called-import/_config.js b/test/form/samples/unused-called-import/_config.js similarity index 100% rename from test/form/unused-called-import/_config.js rename to test/form/samples/unused-called-import/_config.js diff --git a/test/form/unused-called-import/_expected/amd.js b/test/form/samples/unused-called-import/_expected/amd.js similarity index 100% rename from test/form/unused-called-import/_expected/amd.js rename to test/form/samples/unused-called-import/_expected/amd.js diff --git a/test/form/unused-called-import/_expected/cjs.js b/test/form/samples/unused-called-import/_expected/cjs.js similarity index 100% rename from test/form/unused-called-import/_expected/cjs.js rename to test/form/samples/unused-called-import/_expected/cjs.js diff --git a/test/form/unused-called-import/_expected/es.js b/test/form/samples/unused-called-import/_expected/es.js similarity index 100% rename from test/form/unused-called-import/_expected/es.js rename to test/form/samples/unused-called-import/_expected/es.js diff --git a/test/form/unused-called-import/_expected/iife.js b/test/form/samples/unused-called-import/_expected/iife.js similarity index 100% rename from test/form/unused-called-import/_expected/iife.js rename to test/form/samples/unused-called-import/_expected/iife.js diff --git a/test/form/unused-called-import/_expected/umd.js b/test/form/samples/unused-called-import/_expected/umd.js similarity index 100% rename from test/form/unused-called-import/_expected/umd.js rename to test/form/samples/unused-called-import/_expected/umd.js diff --git a/test/form/unused-called-import/dead.js b/test/form/samples/unused-called-import/dead.js similarity index 100% rename from test/form/unused-called-import/dead.js rename to test/form/samples/unused-called-import/dead.js diff --git a/test/form/unused-called-import/foo.js b/test/form/samples/unused-called-import/foo.js similarity index 100% rename from test/form/unused-called-import/foo.js rename to test/form/samples/unused-called-import/foo.js diff --git a/test/form/unused-called-import/main.js b/test/form/samples/unused-called-import/main.js similarity index 100% rename from test/form/unused-called-import/main.js rename to test/form/samples/unused-called-import/main.js diff --git a/test/form/unused-called-with-side-effects/_config.js b/test/form/samples/unused-called-with-side-effects/_config.js similarity index 100% rename from test/form/unused-called-with-side-effects/_config.js rename to test/form/samples/unused-called-with-side-effects/_config.js diff --git a/test/form/unused-called-with-side-effects/_expected/amd.js b/test/form/samples/unused-called-with-side-effects/_expected/amd.js similarity index 100% rename from test/form/unused-called-with-side-effects/_expected/amd.js rename to test/form/samples/unused-called-with-side-effects/_expected/amd.js diff --git a/test/form/unused-called-with-side-effects/_expected/cjs.js b/test/form/samples/unused-called-with-side-effects/_expected/cjs.js similarity index 100% rename from test/form/unused-called-with-side-effects/_expected/cjs.js rename to test/form/samples/unused-called-with-side-effects/_expected/cjs.js diff --git a/test/form/unused-called-with-side-effects/_expected/es.js b/test/form/samples/unused-called-with-side-effects/_expected/es.js similarity index 100% rename from test/form/unused-called-with-side-effects/_expected/es.js rename to test/form/samples/unused-called-with-side-effects/_expected/es.js diff --git a/test/form/unused-called-with-side-effects/_expected/iife.js b/test/form/samples/unused-called-with-side-effects/_expected/iife.js similarity index 100% rename from test/form/unused-called-with-side-effects/_expected/iife.js rename to test/form/samples/unused-called-with-side-effects/_expected/iife.js diff --git a/test/form/unused-called-with-side-effects/_expected/umd.js b/test/form/samples/unused-called-with-side-effects/_expected/umd.js similarity index 100% rename from test/form/unused-called-with-side-effects/_expected/umd.js rename to test/form/samples/unused-called-with-side-effects/_expected/umd.js diff --git a/test/form/unused-called-with-side-effects/main.js b/test/form/samples/unused-called-with-side-effects/main.js similarity index 100% rename from test/form/unused-called-with-side-effects/main.js rename to test/form/samples/unused-called-with-side-effects/main.js diff --git a/test/form/unused-default-exports/_config.js b/test/form/samples/unused-default-exports/_config.js similarity index 100% rename from test/form/unused-default-exports/_config.js rename to test/form/samples/unused-default-exports/_config.js diff --git a/test/form/unused-default-exports/_expected/amd.js b/test/form/samples/unused-default-exports/_expected/amd.js similarity index 100% rename from test/form/unused-default-exports/_expected/amd.js rename to test/form/samples/unused-default-exports/_expected/amd.js diff --git a/test/form/unused-default-exports/_expected/cjs.js b/test/form/samples/unused-default-exports/_expected/cjs.js similarity index 100% rename from test/form/unused-default-exports/_expected/cjs.js rename to test/form/samples/unused-default-exports/_expected/cjs.js diff --git a/test/form/unused-default-exports/_expected/es.js b/test/form/samples/unused-default-exports/_expected/es.js similarity index 100% rename from test/form/unused-default-exports/_expected/es.js rename to test/form/samples/unused-default-exports/_expected/es.js diff --git a/test/form/unused-default-exports/_expected/iife.js b/test/form/samples/unused-default-exports/_expected/iife.js similarity index 100% rename from test/form/unused-default-exports/_expected/iife.js rename to test/form/samples/unused-default-exports/_expected/iife.js diff --git a/test/form/unused-default-exports/_expected/umd.js b/test/form/samples/unused-default-exports/_expected/umd.js similarity index 100% rename from test/form/unused-default-exports/_expected/umd.js rename to test/form/samples/unused-default-exports/_expected/umd.js diff --git a/test/form/unused-default-exports/foo.js b/test/form/samples/unused-default-exports/foo.js similarity index 100% rename from test/form/unused-default-exports/foo.js rename to test/form/samples/unused-default-exports/foo.js diff --git a/test/form/unused-default-exports/main.js b/test/form/samples/unused-default-exports/main.js similarity index 100% rename from test/form/unused-default-exports/main.js rename to test/form/samples/unused-default-exports/main.js diff --git a/test/form/unused-import/_config.js b/test/form/samples/unused-import/_config.js similarity index 100% rename from test/form/unused-import/_config.js rename to test/form/samples/unused-import/_config.js diff --git a/test/form/unused-import/_expected/amd.js b/test/form/samples/unused-import/_expected/amd.js similarity index 100% rename from test/form/unused-import/_expected/amd.js rename to test/form/samples/unused-import/_expected/amd.js diff --git a/test/form/unused-import/_expected/cjs.js b/test/form/samples/unused-import/_expected/cjs.js similarity index 100% rename from test/form/unused-import/_expected/cjs.js rename to test/form/samples/unused-import/_expected/cjs.js diff --git a/test/form/unused-import/_expected/es.js b/test/form/samples/unused-import/_expected/es.js similarity index 100% rename from test/form/unused-import/_expected/es.js rename to test/form/samples/unused-import/_expected/es.js diff --git a/test/form/unused-import/_expected/iife.js b/test/form/samples/unused-import/_expected/iife.js similarity index 100% rename from test/form/unused-import/_expected/iife.js rename to test/form/samples/unused-import/_expected/iife.js diff --git a/test/form/unused-import/_expected/umd.js b/test/form/samples/unused-import/_expected/umd.js similarity index 100% rename from test/form/unused-import/_expected/umd.js rename to test/form/samples/unused-import/_expected/umd.js diff --git a/test/form/unused-import/main.js b/test/form/samples/unused-import/main.js similarity index 100% rename from test/form/unused-import/main.js rename to test/form/samples/unused-import/main.js diff --git a/test/form/unused-inner-functions-and-classes/_config.js b/test/form/samples/unused-inner-functions-and-classes/_config.js similarity index 100% rename from test/form/unused-inner-functions-and-classes/_config.js rename to test/form/samples/unused-inner-functions-and-classes/_config.js diff --git a/test/form/unused-inner-functions-and-classes/_expected/amd.js b/test/form/samples/unused-inner-functions-and-classes/_expected/amd.js similarity index 100% rename from test/form/unused-inner-functions-and-classes/_expected/amd.js rename to test/form/samples/unused-inner-functions-and-classes/_expected/amd.js diff --git a/test/form/unused-inner-functions-and-classes/_expected/cjs.js b/test/form/samples/unused-inner-functions-and-classes/_expected/cjs.js similarity index 100% rename from test/form/unused-inner-functions-and-classes/_expected/cjs.js rename to test/form/samples/unused-inner-functions-and-classes/_expected/cjs.js diff --git a/test/form/unused-inner-functions-and-classes/_expected/es.js b/test/form/samples/unused-inner-functions-and-classes/_expected/es.js similarity index 100% rename from test/form/unused-inner-functions-and-classes/_expected/es.js rename to test/form/samples/unused-inner-functions-and-classes/_expected/es.js diff --git a/test/form/unused-inner-functions-and-classes/_expected/iife.js b/test/form/samples/unused-inner-functions-and-classes/_expected/iife.js similarity index 100% rename from test/form/unused-inner-functions-and-classes/_expected/iife.js rename to test/form/samples/unused-inner-functions-and-classes/_expected/iife.js diff --git a/test/form/unused-inner-functions-and-classes/_expected/umd.js b/test/form/samples/unused-inner-functions-and-classes/_expected/umd.js similarity index 100% rename from test/form/unused-inner-functions-and-classes/_expected/umd.js rename to test/form/samples/unused-inner-functions-and-classes/_expected/umd.js diff --git a/test/form/unused-inner-functions-and-classes/main.js b/test/form/samples/unused-inner-functions-and-classes/main.js similarity index 100% rename from test/form/unused-inner-functions-and-classes/main.js rename to test/form/samples/unused-inner-functions-and-classes/main.js diff --git a/test/form/unused-inner-functions-and-classes/stuff.js b/test/form/samples/unused-inner-functions-and-classes/stuff.js similarity index 100% rename from test/form/unused-inner-functions-and-classes/stuff.js rename to test/form/samples/unused-inner-functions-and-classes/stuff.js diff --git a/test/form/unused-var/_config.js b/test/form/samples/unused-var/_config.js similarity index 100% rename from test/form/unused-var/_config.js rename to test/form/samples/unused-var/_config.js diff --git a/test/form/unused-var/_expected/amd.js b/test/form/samples/unused-var/_expected/amd.js similarity index 100% rename from test/form/unused-var/_expected/amd.js rename to test/form/samples/unused-var/_expected/amd.js diff --git a/test/form/unused-var/_expected/cjs.js b/test/form/samples/unused-var/_expected/cjs.js similarity index 100% rename from test/form/unused-var/_expected/cjs.js rename to test/form/samples/unused-var/_expected/cjs.js diff --git a/test/form/unused-var/_expected/es.js b/test/form/samples/unused-var/_expected/es.js similarity index 100% rename from test/form/unused-var/_expected/es.js rename to test/form/samples/unused-var/_expected/es.js diff --git a/test/form/unused-var/_expected/iife.js b/test/form/samples/unused-var/_expected/iife.js similarity index 100% rename from test/form/unused-var/_expected/iife.js rename to test/form/samples/unused-var/_expected/iife.js diff --git a/test/form/unused-var/_expected/umd.js b/test/form/samples/unused-var/_expected/umd.js similarity index 100% rename from test/form/unused-var/_expected/umd.js rename to test/form/samples/unused-var/_expected/umd.js diff --git a/test/form/unused-var/foo.js b/test/form/samples/unused-var/foo.js similarity index 100% rename from test/form/unused-var/foo.js rename to test/form/samples/unused-var/foo.js diff --git a/test/form/unused-var/main.js b/test/form/samples/unused-var/main.js similarity index 100% rename from test/form/unused-var/main.js rename to test/form/samples/unused-var/main.js diff --git a/test/form/whitespace-around-namespace-member-expression/_config.js b/test/form/samples/whitespace-around-namespace-member-expression/_config.js similarity index 100% rename from test/form/whitespace-around-namespace-member-expression/_config.js rename to test/form/samples/whitespace-around-namespace-member-expression/_config.js diff --git a/test/form/whitespace-around-namespace-member-expression/_expected/amd.js b/test/form/samples/whitespace-around-namespace-member-expression/_expected/amd.js similarity index 100% rename from test/form/whitespace-around-namespace-member-expression/_expected/amd.js rename to test/form/samples/whitespace-around-namespace-member-expression/_expected/amd.js diff --git a/test/form/whitespace-around-namespace-member-expression/_expected/cjs.js b/test/form/samples/whitespace-around-namespace-member-expression/_expected/cjs.js similarity index 100% rename from test/form/whitespace-around-namespace-member-expression/_expected/cjs.js rename to test/form/samples/whitespace-around-namespace-member-expression/_expected/cjs.js diff --git a/test/form/whitespace-around-namespace-member-expression/_expected/es.js b/test/form/samples/whitespace-around-namespace-member-expression/_expected/es.js similarity index 100% rename from test/form/whitespace-around-namespace-member-expression/_expected/es.js rename to test/form/samples/whitespace-around-namespace-member-expression/_expected/es.js diff --git a/test/form/whitespace-around-namespace-member-expression/_expected/iife.js b/test/form/samples/whitespace-around-namespace-member-expression/_expected/iife.js similarity index 100% rename from test/form/whitespace-around-namespace-member-expression/_expected/iife.js rename to test/form/samples/whitespace-around-namespace-member-expression/_expected/iife.js diff --git a/test/form/whitespace-around-namespace-member-expression/_expected/umd.js b/test/form/samples/whitespace-around-namespace-member-expression/_expected/umd.js similarity index 100% rename from test/form/whitespace-around-namespace-member-expression/_expected/umd.js rename to test/form/samples/whitespace-around-namespace-member-expression/_expected/umd.js diff --git a/test/form/whitespace-around-namespace-member-expression/foo.js b/test/form/samples/whitespace-around-namespace-member-expression/foo.js similarity index 100% rename from test/form/whitespace-around-namespace-member-expression/foo.js rename to test/form/samples/whitespace-around-namespace-member-expression/foo.js diff --git a/test/form/whitespace-around-namespace-member-expression/main.js b/test/form/samples/whitespace-around-namespace-member-expression/main.js similarity index 100% rename from test/form/whitespace-around-namespace-member-expression/main.js rename to test/form/samples/whitespace-around-namespace-member-expression/main.js diff --git a/test/function/index.js b/test/function/index.js new file mode 100644 index 00000000000..9c8d5aa9565 --- /dev/null +++ b/test/function/index.js @@ -0,0 +1,148 @@ +const path = require('path'); +const assert = require('assert'); +const sander = require('sander'); +const buble = require('buble'); +const rollup = require('../../dist/rollup'); +const { + compareError, + compareWarnings, + extend, + loadConfig +} = require('../utils.js'); + +const samples = path.resolve(__dirname, 'samples'); + +describe('function', () => { + sander.readdirSync(samples).sort().forEach(dir => { + if (dir[0] === '.') return; // .DS_Store... + + const config = loadConfig(samples + '/' + dir + '/_config.js'); + (config.skip ? it.skip : config.solo ? it.only : it)(dir, () => { + process.chdir(samples + '/' + dir); + + const warnings = []; + const captureWarning = msg => warnings.push(msg); + + const options = extend( + { + entry: samples + '/' + dir + '/main.js', + onwarn: captureWarning + }, + config.options + ); + + if (config.solo) console.group(dir); + + return rollup + .rollup(options) + .then(bundle => { + let unintendedError; + + if (config.error) { + throw new Error('Expected an error while rolling up'); + } + + let result; + + // try to generate output + return Promise.resolve() + .then(() => { + return bundle.generate( + extend({}, config.bundleOptions, { + format: 'cjs' + }) + ); + }) + .then(code => { + if (config.generateError) { + unintendedError = new Error( + 'Expected an error while generating output' + ); + } + + result = code; + }) + .catch(err => { + if (config.generateError) { + compareError(err, config.generateError); + } else { + unintendedError = err; + } + }) + .then(() => { + if (unintendedError) throw unintendedError; + if (config.error || config.generateError) return; + + let code = result.code; + + if (config.buble) { + code = buble.transform(code, { + transforms: { modules: false } + }).code; + } + + if (config.code) config.code(code); + + const module = { + exports: {} + }; + + const context = extend( + { require, module, assert, exports: module.exports }, + config.context || {} + ); + + const contextKeys = Object.keys(context); + const contextValues = contextKeys.map(key => context[key]); + + try { + const fn = new Function(contextKeys, code); + fn.apply({}, contextValues); + + if (config.runtimeError) { + unintendedError = new Error( + 'Expected an error while executing output' + ); + } else { + if (config.exports) config.exports(module.exports); + if (config.bundle) config.bundle(bundle); + } + } catch (err) { + if (config.runtimeError) { + config.runtimeError(err); + } else { + unintendedError = err; + } + } + + if (config.show || unintendedError) { + console.log(result.code + '\n\n\n'); + } + + if (config.warnings) { + if (Array.isArray(config.warnings)) { + compareWarnings(warnings, config.warnings); + } else { + config.warnings(warnings); + } + } else if (warnings.length) { + throw new Error( + `Got unexpected warnings:\n${warnings.join('\n')}` + ); + } + + if (config.solo) console.groupEnd(); + + if (unintendedError) throw unintendedError; + }); + }) + .catch(err => { + if (config.error) { + compareError(err, config.error); + } else { + throw err; + } + }); + }); + }); +}); diff --git a/test/function/adds-semicolons-if-necessary-b/_config.js b/test/function/samples/adds-semicolons-if-necessary-b/_config.js similarity index 100% rename from test/function/adds-semicolons-if-necessary-b/_config.js rename to test/function/samples/adds-semicolons-if-necessary-b/_config.js diff --git a/test/function/adds-semicolons-if-necessary-b/foo.js b/test/function/samples/adds-semicolons-if-necessary-b/foo.js similarity index 100% rename from test/function/adds-semicolons-if-necessary-b/foo.js rename to test/function/samples/adds-semicolons-if-necessary-b/foo.js diff --git a/test/function/adds-semicolons-if-necessary-b/main.js b/test/function/samples/adds-semicolons-if-necessary-b/main.js similarity index 100% rename from test/function/adds-semicolons-if-necessary-b/main.js rename to test/function/samples/adds-semicolons-if-necessary-b/main.js diff --git a/test/function/adds-semicolons-if-necessary-c/_config.js b/test/function/samples/adds-semicolons-if-necessary-c/_config.js similarity index 100% rename from test/function/adds-semicolons-if-necessary-c/_config.js rename to test/function/samples/adds-semicolons-if-necessary-c/_config.js diff --git a/test/function/adds-semicolons-if-necessary-c/foo.js b/test/function/samples/adds-semicolons-if-necessary-c/foo.js similarity index 100% rename from test/function/adds-semicolons-if-necessary-c/foo.js rename to test/function/samples/adds-semicolons-if-necessary-c/foo.js diff --git a/test/function/adds-semicolons-if-necessary-c/main.js b/test/function/samples/adds-semicolons-if-necessary-c/main.js similarity index 100% rename from test/function/adds-semicolons-if-necessary-c/main.js rename to test/function/samples/adds-semicolons-if-necessary-c/main.js diff --git a/test/function/adds-semicolons-if-necessary/_config.js b/test/function/samples/adds-semicolons-if-necessary/_config.js similarity index 100% rename from test/function/adds-semicolons-if-necessary/_config.js rename to test/function/samples/adds-semicolons-if-necessary/_config.js diff --git a/test/function/adds-semicolons-if-necessary/foo.js b/test/function/samples/adds-semicolons-if-necessary/foo.js similarity index 100% rename from test/function/adds-semicolons-if-necessary/foo.js rename to test/function/samples/adds-semicolons-if-necessary/foo.js diff --git a/test/function/adds-semicolons-if-necessary/main.js b/test/function/samples/adds-semicolons-if-necessary/main.js similarity index 100% rename from test/function/adds-semicolons-if-necessary/main.js rename to test/function/samples/adds-semicolons-if-necessary/main.js diff --git a/test/function/aliased-not-exported-twice/_config.js b/test/function/samples/aliased-not-exported-twice/_config.js similarity index 100% rename from test/function/aliased-not-exported-twice/_config.js rename to test/function/samples/aliased-not-exported-twice/_config.js diff --git a/test/function/aliased-not-exported-twice/foo.js b/test/function/samples/aliased-not-exported-twice/foo.js similarity index 100% rename from test/function/aliased-not-exported-twice/foo.js rename to test/function/samples/aliased-not-exported-twice/foo.js diff --git a/test/function/aliased-not-exported-twice/main.js b/test/function/samples/aliased-not-exported-twice/main.js similarity index 100% rename from test/function/aliased-not-exported-twice/main.js rename to test/function/samples/aliased-not-exported-twice/main.js diff --git a/test/function/allow-reserved/_config.js b/test/function/samples/allow-reserved/_config.js similarity index 100% rename from test/function/allow-reserved/_config.js rename to test/function/samples/allow-reserved/_config.js diff --git a/test/function/allow-reserved/main.js b/test/function/samples/allow-reserved/main.js similarity index 100% rename from test/function/allow-reserved/main.js rename to test/function/samples/allow-reserved/main.js diff --git a/test/function/allows-external-modules-from-nested-module/_config.js b/test/function/samples/allows-external-modules-from-nested-module/_config.js similarity index 100% rename from test/function/allows-external-modules-from-nested-module/_config.js rename to test/function/samples/allows-external-modules-from-nested-module/_config.js diff --git a/test/function/allows-external-modules-from-nested-module/foo.js b/test/function/samples/allows-external-modules-from-nested-module/foo.js similarity index 100% rename from test/function/allows-external-modules-from-nested-module/foo.js rename to test/function/samples/allows-external-modules-from-nested-module/foo.js diff --git a/test/function/allows-external-modules-from-nested-module/main.js b/test/function/samples/allows-external-modules-from-nested-module/main.js similarity index 100% rename from test/function/allows-external-modules-from-nested-module/main.js rename to test/function/samples/allows-external-modules-from-nested-module/main.js diff --git a/test/function/allows-unknown-binary-operators/_config.js b/test/function/samples/allows-unknown-binary-operators/_config.js similarity index 100% rename from test/function/allows-unknown-binary-operators/_config.js rename to test/function/samples/allows-unknown-binary-operators/_config.js diff --git a/test/function/allows-unknown-binary-operators/main.js b/test/function/samples/allows-unknown-binary-operators/main.js similarity index 100% rename from test/function/allows-unknown-binary-operators/main.js rename to test/function/samples/allows-unknown-binary-operators/main.js diff --git a/test/function/already-deshadowed-import/_config.js b/test/function/samples/already-deshadowed-import/_config.js similarity index 100% rename from test/function/already-deshadowed-import/_config.js rename to test/function/samples/already-deshadowed-import/_config.js diff --git a/test/function/already-deshadowed-import/alice.js b/test/function/samples/already-deshadowed-import/alice.js similarity index 100% rename from test/function/already-deshadowed-import/alice.js rename to test/function/samples/already-deshadowed-import/alice.js diff --git a/test/function/already-deshadowed-import/bob.js b/test/function/samples/already-deshadowed-import/bob.js similarity index 100% rename from test/function/already-deshadowed-import/bob.js rename to test/function/samples/already-deshadowed-import/bob.js diff --git a/test/function/already-deshadowed-import/main.js b/test/function/samples/already-deshadowed-import/main.js similarity index 100% rename from test/function/already-deshadowed-import/main.js rename to test/function/samples/already-deshadowed-import/main.js diff --git a/test/function/assign-namespace-to-var/_config.js b/test/function/samples/assign-namespace-to-var/_config.js similarity index 100% rename from test/function/assign-namespace-to-var/_config.js rename to test/function/samples/assign-namespace-to-var/_config.js diff --git a/test/function/assign-namespace-to-var/b.js b/test/function/samples/assign-namespace-to-var/b.js similarity index 100% rename from test/function/assign-namespace-to-var/b.js rename to test/function/samples/assign-namespace-to-var/b.js diff --git a/test/function/assign-namespace-to-var/main.js b/test/function/samples/assign-namespace-to-var/main.js similarity index 100% rename from test/function/assign-namespace-to-var/main.js rename to test/function/samples/assign-namespace-to-var/main.js diff --git a/test/function/assignment-patterns/_config.js b/test/function/samples/assignment-patterns/_config.js similarity index 100% rename from test/function/assignment-patterns/_config.js rename to test/function/samples/assignment-patterns/_config.js diff --git a/test/function/assignment-patterns/main.js b/test/function/samples/assignment-patterns/main.js similarity index 100% rename from test/function/assignment-patterns/main.js rename to test/function/samples/assignment-patterns/main.js diff --git a/test/function/assignment-patterns/other.js b/test/function/samples/assignment-patterns/other.js similarity index 100% rename from test/function/assignment-patterns/other.js rename to test/function/samples/assignment-patterns/other.js diff --git a/test/function/assignment-to-exports-b/_config.js b/test/function/samples/assignment-to-exports-b/_config.js similarity index 100% rename from test/function/assignment-to-exports-b/_config.js rename to test/function/samples/assignment-to-exports-b/_config.js diff --git a/test/function/assignment-to-exports-b/main.js b/test/function/samples/assignment-to-exports-b/main.js similarity index 100% rename from test/function/assignment-to-exports-b/main.js rename to test/function/samples/assignment-to-exports-b/main.js diff --git a/test/function/assignment-to-exports/_config.js b/test/function/samples/assignment-to-exports/_config.js similarity index 100% rename from test/function/assignment-to-exports/_config.js rename to test/function/samples/assignment-to-exports/_config.js diff --git a/test/function/assignment-to-exports/main.js b/test/function/samples/assignment-to-exports/main.js similarity index 100% rename from test/function/assignment-to-exports/main.js rename to test/function/samples/assignment-to-exports/main.js diff --git a/test/function/assignment-to-re-exports-conflict/_config.js b/test/function/samples/assignment-to-re-exports-conflict/_config.js similarity index 100% rename from test/function/assignment-to-re-exports-conflict/_config.js rename to test/function/samples/assignment-to-re-exports-conflict/_config.js diff --git a/test/function/assignment-to-re-exports-conflict/count.js b/test/function/samples/assignment-to-re-exports-conflict/count.js similarity index 100% rename from test/function/assignment-to-re-exports-conflict/count.js rename to test/function/samples/assignment-to-re-exports-conflict/count.js diff --git a/test/function/assignment-to-re-exports-conflict/main.js b/test/function/samples/assignment-to-re-exports-conflict/main.js similarity index 100% rename from test/function/assignment-to-re-exports-conflict/main.js rename to test/function/samples/assignment-to-re-exports-conflict/main.js diff --git a/test/function/assignment-to-re-exports/_config.js b/test/function/samples/assignment-to-re-exports/_config.js similarity index 100% rename from test/function/assignment-to-re-exports/_config.js rename to test/function/samples/assignment-to-re-exports/_config.js diff --git a/test/function/assignment-to-re-exports/count.js b/test/function/samples/assignment-to-re-exports/count.js similarity index 100% rename from test/function/assignment-to-re-exports/count.js rename to test/function/samples/assignment-to-re-exports/count.js diff --git a/test/function/assignment-to-re-exports/main.js b/test/function/samples/assignment-to-re-exports/main.js similarity index 100% rename from test/function/assignment-to-re-exports/main.js rename to test/function/samples/assignment-to-re-exports/main.js diff --git a/test/function/bindings/_config.js b/test/function/samples/bindings/_config.js similarity index 100% rename from test/function/bindings/_config.js rename to test/function/samples/bindings/_config.js diff --git a/test/function/bindings/foo.js b/test/function/samples/bindings/foo.js similarity index 100% rename from test/function/bindings/foo.js rename to test/function/samples/bindings/foo.js diff --git a/test/function/bindings/main.js b/test/function/samples/bindings/main.js similarity index 100% rename from test/function/bindings/main.js rename to test/function/samples/bindings/main.js diff --git a/test/function/braceless-arrow-function-returning-function/_config.js b/test/function/samples/braceless-arrow-function-returning-function/_config.js similarity index 100% rename from test/function/braceless-arrow-function-returning-function/_config.js rename to test/function/samples/braceless-arrow-function-returning-function/_config.js diff --git a/test/function/braceless-arrow-function-returning-function/main.js b/test/function/samples/braceless-arrow-function-returning-function/main.js similarity index 100% rename from test/function/braceless-arrow-function-returning-function/main.js rename to test/function/samples/braceless-arrow-function-returning-function/main.js diff --git a/test/function/bundle-transformer-async/_config.js b/test/function/samples/bundle-transformer-async/_config.js similarity index 100% rename from test/function/bundle-transformer-async/_config.js rename to test/function/samples/bundle-transformer-async/_config.js diff --git a/test/function/bundle-transformer-async/main.js b/test/function/samples/bundle-transformer-async/main.js similarity index 100% rename from test/function/bundle-transformer-async/main.js rename to test/function/samples/bundle-transformer-async/main.js diff --git a/test/function/call-external-function/_config.js b/test/function/samples/call-external-function/_config.js similarity index 100% rename from test/function/call-external-function/_config.js rename to test/function/samples/call-external-function/_config.js diff --git a/test/function/call-external-function/foo.js b/test/function/samples/call-external-function/foo.js similarity index 100% rename from test/function/call-external-function/foo.js rename to test/function/samples/call-external-function/foo.js diff --git a/test/function/call-external-function/main.js b/test/function/samples/call-external-function/main.js similarity index 100% rename from test/function/call-external-function/main.js rename to test/function/samples/call-external-function/main.js diff --git a/test/function/call-non-function-default-exports/_config.js b/test/function/samples/call-non-function-default-exports/_config.js similarity index 100% rename from test/function/call-non-function-default-exports/_config.js rename to test/function/samples/call-non-function-default-exports/_config.js diff --git a/test/function/call-non-function-default-exports/foo.js b/test/function/samples/call-non-function-default-exports/foo.js similarity index 100% rename from test/function/call-non-function-default-exports/foo.js rename to test/function/samples/call-non-function-default-exports/foo.js diff --git a/test/function/call-non-function-default-exports/main.js b/test/function/samples/call-non-function-default-exports/main.js similarity index 100% rename from test/function/call-non-function-default-exports/main.js rename to test/function/samples/call-non-function-default-exports/main.js diff --git a/test/function/cannot-call-external-namespace/_config.js b/test/function/samples/cannot-call-external-namespace/_config.js similarity index 100% rename from test/function/cannot-call-external-namespace/_config.js rename to test/function/samples/cannot-call-external-namespace/_config.js diff --git a/test/function/cannot-call-external-namespace/main.js b/test/function/samples/cannot-call-external-namespace/main.js similarity index 100% rename from test/function/cannot-call-external-namespace/main.js rename to test/function/samples/cannot-call-external-namespace/main.js diff --git a/test/function/cannot-call-internal-namespace/_config.js b/test/function/samples/cannot-call-internal-namespace/_config.js similarity index 100% rename from test/function/cannot-call-internal-namespace/_config.js rename to test/function/samples/cannot-call-internal-namespace/_config.js diff --git a/test/function/cannot-call-internal-namespace/foo.js b/test/function/samples/cannot-call-internal-namespace/foo.js similarity index 100% rename from test/function/cannot-call-internal-namespace/foo.js rename to test/function/samples/cannot-call-internal-namespace/foo.js diff --git a/test/function/cannot-call-internal-namespace/main.js b/test/function/samples/cannot-call-internal-namespace/main.js similarity index 100% rename from test/function/cannot-call-internal-namespace/main.js rename to test/function/samples/cannot-call-internal-namespace/main.js diff --git a/test/function/cannot-import-self-empty/_config.js b/test/function/samples/cannot-import-self-empty/_config.js similarity index 100% rename from test/function/cannot-import-self-empty/_config.js rename to test/function/samples/cannot-import-self-empty/_config.js diff --git a/test/function/cannot-import-self-empty/main.js b/test/function/samples/cannot-import-self-empty/main.js similarity index 100% rename from test/function/cannot-import-self-empty/main.js rename to test/function/samples/cannot-import-self-empty/main.js diff --git a/test/function/cannot-import-self/_config.js b/test/function/samples/cannot-import-self/_config.js similarity index 100% rename from test/function/cannot-import-self/_config.js rename to test/function/samples/cannot-import-self/_config.js diff --git a/test/function/cannot-import-self/main.js b/test/function/samples/cannot-import-self/main.js similarity index 100% rename from test/function/cannot-import-self/main.js rename to test/function/samples/cannot-import-self/main.js diff --git a/test/function/check-resolve-for-entry/_config.js b/test/function/samples/check-resolve-for-entry/_config.js similarity index 100% rename from test/function/check-resolve-for-entry/_config.js rename to test/function/samples/check-resolve-for-entry/_config.js diff --git a/test/function/class-methods-not-renamed/_config.js b/test/function/samples/class-methods-not-renamed/_config.js similarity index 100% rename from test/function/class-methods-not-renamed/_config.js rename to test/function/samples/class-methods-not-renamed/_config.js diff --git a/test/function/class-methods-not-renamed/foo.js b/test/function/samples/class-methods-not-renamed/foo.js similarity index 100% rename from test/function/class-methods-not-renamed/foo.js rename to test/function/samples/class-methods-not-renamed/foo.js diff --git a/test/function/class-methods-not-renamed/main.js b/test/function/samples/class-methods-not-renamed/main.js similarity index 100% rename from test/function/class-methods-not-renamed/main.js rename to test/function/samples/class-methods-not-renamed/main.js diff --git a/test/function/conditional-definition/_config.js b/test/function/samples/conditional-definition/_config.js similarity index 100% rename from test/function/conditional-definition/_config.js rename to test/function/samples/conditional-definition/_config.js diff --git a/test/function/conditional-definition/env.js b/test/function/samples/conditional-definition/env.js similarity index 100% rename from test/function/conditional-definition/env.js rename to test/function/samples/conditional-definition/env.js diff --git a/test/function/conditional-definition/main.js b/test/function/samples/conditional-definition/main.js similarity index 100% rename from test/function/conditional-definition/main.js rename to test/function/samples/conditional-definition/main.js diff --git a/test/function/configure-external-module-b/_config.js b/test/function/samples/configure-external-module-b/_config.js similarity index 100% rename from test/function/configure-external-module-b/_config.js rename to test/function/samples/configure-external-module-b/_config.js diff --git a/test/function/configure-external-module-b/main.js b/test/function/samples/configure-external-module-b/main.js similarity index 100% rename from test/function/configure-external-module-b/main.js rename to test/function/samples/configure-external-module-b/main.js diff --git a/test/function/configure-external-module/_config.js b/test/function/samples/configure-external-module/_config.js similarity index 100% rename from test/function/configure-external-module/_config.js rename to test/function/samples/configure-external-module/_config.js diff --git a/test/function/configure-external-module/main.js b/test/function/samples/configure-external-module/main.js similarity index 100% rename from test/function/configure-external-module/main.js rename to test/function/samples/configure-external-module/main.js diff --git a/test/function/configure-relative-external-module/_config.js b/test/function/samples/configure-relative-external-module/_config.js similarity index 100% rename from test/function/configure-relative-external-module/_config.js rename to test/function/samples/configure-relative-external-module/_config.js diff --git a/test/function/configure-relative-external-module/main.js b/test/function/samples/configure-relative-external-module/main.js similarity index 100% rename from test/function/configure-relative-external-module/main.js rename to test/function/samples/configure-relative-external-module/main.js diff --git a/test/function/confused-default-identifier/_config.js b/test/function/samples/confused-default-identifier/_config.js similarity index 100% rename from test/function/confused-default-identifier/_config.js rename to test/function/samples/confused-default-identifier/_config.js diff --git a/test/function/confused-default-identifier/foo.js b/test/function/samples/confused-default-identifier/foo.js similarity index 100% rename from test/function/confused-default-identifier/foo.js rename to test/function/samples/confused-default-identifier/foo.js diff --git a/test/function/confused-default-identifier/main.js b/test/function/samples/confused-default-identifier/main.js similarity index 100% rename from test/function/confused-default-identifier/main.js rename to test/function/samples/confused-default-identifier/main.js diff --git a/test/function/consistent-renaming-b/_config.js b/test/function/samples/consistent-renaming-b/_config.js similarity index 100% rename from test/function/consistent-renaming-b/_config.js rename to test/function/samples/consistent-renaming-b/_config.js diff --git a/test/function/consistent-renaming-b/altdir/two.js b/test/function/samples/consistent-renaming-b/altdir/two.js similarity index 100% rename from test/function/consistent-renaming-b/altdir/two.js rename to test/function/samples/consistent-renaming-b/altdir/two.js diff --git a/test/function/consistent-renaming-b/main.js b/test/function/samples/consistent-renaming-b/main.js similarity index 100% rename from test/function/consistent-renaming-b/main.js rename to test/function/samples/consistent-renaming-b/main.js diff --git a/test/function/consistent-renaming-b/subdir/one.js b/test/function/samples/consistent-renaming-b/subdir/one.js similarity index 100% rename from test/function/consistent-renaming-b/subdir/one.js rename to test/function/samples/consistent-renaming-b/subdir/one.js diff --git a/test/function/consistent-renaming-b/subdir/two.js b/test/function/samples/consistent-renaming-b/subdir/two.js similarity index 100% rename from test/function/consistent-renaming-b/subdir/two.js rename to test/function/samples/consistent-renaming-b/subdir/two.js diff --git a/test/function/consistent-renaming-c/-internal.js b/test/function/samples/consistent-renaming-c/-internal.js similarity index 100% rename from test/function/consistent-renaming-c/-internal.js rename to test/function/samples/consistent-renaming-c/-internal.js diff --git a/test/function/consistent-renaming-c/_config.js b/test/function/samples/consistent-renaming-c/_config.js similarity index 100% rename from test/function/consistent-renaming-c/_config.js rename to test/function/samples/consistent-renaming-c/_config.js diff --git a/test/function/consistent-renaming-c/main.js b/test/function/samples/consistent-renaming-c/main.js similarity index 100% rename from test/function/consistent-renaming-c/main.js rename to test/function/samples/consistent-renaming-c/main.js diff --git a/test/function/consistent-renaming-c/one.js b/test/function/samples/consistent-renaming-c/one.js similarity index 100% rename from test/function/consistent-renaming-c/one.js rename to test/function/samples/consistent-renaming-c/one.js diff --git a/test/function/consistent-renaming-c/one/three.js b/test/function/samples/consistent-renaming-c/one/three.js similarity index 100% rename from test/function/consistent-renaming-c/one/three.js rename to test/function/samples/consistent-renaming-c/one/three.js diff --git a/test/function/consistent-renaming-c/one/two.js b/test/function/samples/consistent-renaming-c/one/two.js similarity index 100% rename from test/function/consistent-renaming-c/one/two.js rename to test/function/samples/consistent-renaming-c/one/two.js diff --git a/test/function/consistent-renaming-c/two.js b/test/function/samples/consistent-renaming-c/two.js similarity index 100% rename from test/function/consistent-renaming-c/two.js rename to test/function/samples/consistent-renaming-c/two.js diff --git a/test/function/consistent-renaming-d/Baz.js b/test/function/samples/consistent-renaming-d/Baz.js similarity index 100% rename from test/function/consistent-renaming-d/Baz.js rename to test/function/samples/consistent-renaming-d/Baz.js diff --git a/test/function/consistent-renaming-d/_config.js b/test/function/samples/consistent-renaming-d/_config.js similarity index 100% rename from test/function/consistent-renaming-d/_config.js rename to test/function/samples/consistent-renaming-d/_config.js diff --git a/test/function/consistent-renaming-d/bar.js b/test/function/samples/consistent-renaming-d/bar.js similarity index 100% rename from test/function/consistent-renaming-d/bar.js rename to test/function/samples/consistent-renaming-d/bar.js diff --git a/test/function/consistent-renaming-d/foo.js b/test/function/samples/consistent-renaming-d/foo.js similarity index 100% rename from test/function/consistent-renaming-d/foo.js rename to test/function/samples/consistent-renaming-d/foo.js diff --git a/test/function/consistent-renaming-d/foo/baz.js b/test/function/samples/consistent-renaming-d/foo/baz.js similarity index 100% rename from test/function/consistent-renaming-d/foo/baz.js rename to test/function/samples/consistent-renaming-d/foo/baz.js diff --git a/test/function/consistent-renaming-d/main.js b/test/function/samples/consistent-renaming-d/main.js similarity index 100% rename from test/function/consistent-renaming-d/main.js rename to test/function/samples/consistent-renaming-d/main.js diff --git a/test/function/consistent-renaming-e/_config.js b/test/function/samples/consistent-renaming-e/_config.js similarity index 100% rename from test/function/consistent-renaming-e/_config.js rename to test/function/samples/consistent-renaming-e/_config.js diff --git a/test/function/consistent-renaming-e/a.js b/test/function/samples/consistent-renaming-e/a.js similarity index 100% rename from test/function/consistent-renaming-e/a.js rename to test/function/samples/consistent-renaming-e/a.js diff --git a/test/function/consistent-renaming-e/b.js b/test/function/samples/consistent-renaming-e/b.js similarity index 100% rename from test/function/consistent-renaming-e/b.js rename to test/function/samples/consistent-renaming-e/b.js diff --git a/test/function/consistent-renaming-e/main.js b/test/function/samples/consistent-renaming-e/main.js similarity index 100% rename from test/function/consistent-renaming-e/main.js rename to test/function/samples/consistent-renaming-e/main.js diff --git a/test/function/consistent-renaming-e/utils.js b/test/function/samples/consistent-renaming-e/utils.js similarity index 100% rename from test/function/consistent-renaming-e/utils.js rename to test/function/samples/consistent-renaming-e/utils.js diff --git a/test/function/consistent-renaming-f/_config.js b/test/function/samples/consistent-renaming-f/_config.js similarity index 100% rename from test/function/consistent-renaming-f/_config.js rename to test/function/samples/consistent-renaming-f/_config.js diff --git a/test/function/consistent-renaming-f/bar.js b/test/function/samples/consistent-renaming-f/bar.js similarity index 100% rename from test/function/consistent-renaming-f/bar.js rename to test/function/samples/consistent-renaming-f/bar.js diff --git a/test/function/consistent-renaming-f/main.js b/test/function/samples/consistent-renaming-f/main.js similarity index 100% rename from test/function/consistent-renaming-f/main.js rename to test/function/samples/consistent-renaming-f/main.js diff --git a/test/function/consistent-renaming/_config.js b/test/function/samples/consistent-renaming/_config.js similarity index 100% rename from test/function/consistent-renaming/_config.js rename to test/function/samples/consistent-renaming/_config.js diff --git a/test/function/consistent-renaming/main.js b/test/function/samples/consistent-renaming/main.js similarity index 100% rename from test/function/consistent-renaming/main.js rename to test/function/samples/consistent-renaming/main.js diff --git a/test/function/consistent-renaming/one.js b/test/function/samples/consistent-renaming/one.js similarity index 100% rename from test/function/consistent-renaming/one.js rename to test/function/samples/consistent-renaming/one.js diff --git a/test/function/consistent-renaming/three.js b/test/function/samples/consistent-renaming/three.js similarity index 100% rename from test/function/consistent-renaming/three.js rename to test/function/samples/consistent-renaming/three.js diff --git a/test/function/consistent-renaming/two.js b/test/function/samples/consistent-renaming/two.js similarity index 100% rename from test/function/consistent-renaming/two.js rename to test/function/samples/consistent-renaming/two.js diff --git a/test/function/custom-external-resolver-async/_config.js b/test/function/samples/custom-external-resolver-async/_config.js similarity index 100% rename from test/function/custom-external-resolver-async/_config.js rename to test/function/samples/custom-external-resolver-async/_config.js diff --git a/test/function/custom-external-resolver-async/js_modules/external.js b/test/function/samples/custom-external-resolver-async/js_modules/external.js similarity index 100% rename from test/function/custom-external-resolver-async/js_modules/external.js rename to test/function/samples/custom-external-resolver-async/js_modules/external.js diff --git a/test/function/custom-external-resolver-async/main.js b/test/function/samples/custom-external-resolver-async/main.js similarity index 100% rename from test/function/custom-external-resolver-async/main.js rename to test/function/samples/custom-external-resolver-async/main.js diff --git a/test/function/custom-external-resolver-sync/_config.js b/test/function/samples/custom-external-resolver-sync/_config.js similarity index 100% rename from test/function/custom-external-resolver-sync/_config.js rename to test/function/samples/custom-external-resolver-sync/_config.js diff --git a/test/function/custom-external-resolver-sync/js_modules/external.js b/test/function/samples/custom-external-resolver-sync/js_modules/external.js similarity index 100% rename from test/function/custom-external-resolver-sync/js_modules/external.js rename to test/function/samples/custom-external-resolver-sync/js_modules/external.js diff --git a/test/function/custom-external-resolver-sync/main.js b/test/function/samples/custom-external-resolver-sync/main.js similarity index 100% rename from test/function/custom-external-resolver-sync/main.js rename to test/function/samples/custom-external-resolver-sync/main.js diff --git a/test/function/custom-loaders/_config.js b/test/function/samples/custom-loaders/_config.js similarity index 100% rename from test/function/custom-loaders/_config.js rename to test/function/samples/custom-loaders/_config.js diff --git a/test/function/custom-loaders/bar.js b/test/function/samples/custom-loaders/bar.js similarity index 100% rename from test/function/custom-loaders/bar.js rename to test/function/samples/custom-loaders/bar.js diff --git a/test/function/custom-loaders/baz.js b/test/function/samples/custom-loaders/baz.js similarity index 100% rename from test/function/custom-loaders/baz.js rename to test/function/samples/custom-loaders/baz.js diff --git a/test/function/custom-loaders/foo.js b/test/function/samples/custom-loaders/foo.js similarity index 100% rename from test/function/custom-loaders/foo.js rename to test/function/samples/custom-loaders/foo.js diff --git a/test/function/custom-loaders/main.js b/test/function/samples/custom-loaders/main.js similarity index 100% rename from test/function/custom-loaders/main.js rename to test/function/samples/custom-loaders/main.js diff --git a/test/function/custom-path-resolver-async/_config.js b/test/function/samples/custom-path-resolver-async/_config.js similarity index 100% rename from test/function/custom-path-resolver-async/_config.js rename to test/function/samples/custom-path-resolver-async/_config.js diff --git a/test/function/custom-path-resolver-async/bar.js b/test/function/samples/custom-path-resolver-async/bar.js similarity index 100% rename from test/function/custom-path-resolver-async/bar.js rename to test/function/samples/custom-path-resolver-async/bar.js diff --git a/test/function/custom-path-resolver-async/main.js b/test/function/samples/custom-path-resolver-async/main.js similarity index 100% rename from test/function/custom-path-resolver-async/main.js rename to test/function/samples/custom-path-resolver-async/main.js diff --git a/test/function/custom-path-resolver-on-entry/_config.js b/test/function/samples/custom-path-resolver-on-entry/_config.js similarity index 100% rename from test/function/custom-path-resolver-on-entry/_config.js rename to test/function/samples/custom-path-resolver-on-entry/_config.js diff --git a/test/function/custom-path-resolver-on-entry/bar.js b/test/function/samples/custom-path-resolver-on-entry/bar.js similarity index 100% rename from test/function/custom-path-resolver-on-entry/bar.js rename to test/function/samples/custom-path-resolver-on-entry/bar.js diff --git a/test/function/custom-path-resolver-on-entry/foo.js b/test/function/samples/custom-path-resolver-on-entry/foo.js similarity index 100% rename from test/function/custom-path-resolver-on-entry/foo.js rename to test/function/samples/custom-path-resolver-on-entry/foo.js diff --git a/test/function/custom-path-resolver-plural-b/_config.js b/test/function/samples/custom-path-resolver-plural-b/_config.js similarity index 100% rename from test/function/custom-path-resolver-plural-b/_config.js rename to test/function/samples/custom-path-resolver-plural-b/_config.js diff --git a/test/function/custom-path-resolver-plural/_config.js b/test/function/samples/custom-path-resolver-plural/_config.js similarity index 100% rename from test/function/custom-path-resolver-plural/_config.js rename to test/function/samples/custom-path-resolver-plural/_config.js diff --git a/test/function/custom-path-resolver-plural/globals-math.js b/test/function/samples/custom-path-resolver-plural/globals-math.js similarity index 100% rename from test/function/custom-path-resolver-plural/globals-math.js rename to test/function/samples/custom-path-resolver-plural/globals-math.js diff --git a/test/function/custom-path-resolver-plural/main.js b/test/function/samples/custom-path-resolver-plural/main.js similarity index 100% rename from test/function/custom-path-resolver-plural/main.js rename to test/function/samples/custom-path-resolver-plural/main.js diff --git a/test/function/custom-path-resolver-sync/_config.js b/test/function/samples/custom-path-resolver-sync/_config.js similarity index 100% rename from test/function/custom-path-resolver-sync/_config.js rename to test/function/samples/custom-path-resolver-sync/_config.js diff --git a/test/function/custom-path-resolver-sync/bar.js b/test/function/samples/custom-path-resolver-sync/bar.js similarity index 100% rename from test/function/custom-path-resolver-sync/bar.js rename to test/function/samples/custom-path-resolver-sync/bar.js diff --git a/test/function/custom-path-resolver-sync/main.js b/test/function/samples/custom-path-resolver-sync/main.js similarity index 100% rename from test/function/custom-path-resolver-sync/main.js rename to test/function/samples/custom-path-resolver-sync/main.js diff --git a/test/function/cycles-defaults/_config.js b/test/function/samples/cycles-defaults/_config.js similarity index 100% rename from test/function/cycles-defaults/_config.js rename to test/function/samples/cycles-defaults/_config.js diff --git a/test/function/cycles-defaults/a.js b/test/function/samples/cycles-defaults/a.js similarity index 100% rename from test/function/cycles-defaults/a.js rename to test/function/samples/cycles-defaults/a.js diff --git a/test/function/cycles-defaults/b.js b/test/function/samples/cycles-defaults/b.js similarity index 100% rename from test/function/cycles-defaults/b.js rename to test/function/samples/cycles-defaults/b.js diff --git a/test/function/cycles-defaults/main.js b/test/function/samples/cycles-defaults/main.js similarity index 100% rename from test/function/cycles-defaults/main.js rename to test/function/samples/cycles-defaults/main.js diff --git a/test/function/cycles-immediate/_config.js b/test/function/samples/cycles-immediate/_config.js similarity index 100% rename from test/function/cycles-immediate/_config.js rename to test/function/samples/cycles-immediate/_config.js diff --git a/test/function/cycles-immediate/evens.js b/test/function/samples/cycles-immediate/evens.js similarity index 100% rename from test/function/cycles-immediate/evens.js rename to test/function/samples/cycles-immediate/evens.js diff --git a/test/function/cycles-immediate/main.js b/test/function/samples/cycles-immediate/main.js similarity index 100% rename from test/function/cycles-immediate/main.js rename to test/function/samples/cycles-immediate/main.js diff --git a/test/function/cycles-immediate/odds.js b/test/function/samples/cycles-immediate/odds.js similarity index 100% rename from test/function/cycles-immediate/odds.js rename to test/function/samples/cycles-immediate/odds.js diff --git a/test/function/cycles-pathological-2/_config.js b/test/function/samples/cycles-pathological-2/_config.js similarity index 100% rename from test/function/cycles-pathological-2/_config.js rename to test/function/samples/cycles-pathological-2/_config.js diff --git a/test/function/cycles-pathological-2/b.js b/test/function/samples/cycles-pathological-2/b.js similarity index 100% rename from test/function/cycles-pathological-2/b.js rename to test/function/samples/cycles-pathological-2/b.js diff --git a/test/function/cycles-pathological-2/c.js b/test/function/samples/cycles-pathological-2/c.js similarity index 100% rename from test/function/cycles-pathological-2/c.js rename to test/function/samples/cycles-pathological-2/c.js diff --git a/test/function/cycles-pathological-2/d.js b/test/function/samples/cycles-pathological-2/d.js similarity index 100% rename from test/function/cycles-pathological-2/d.js rename to test/function/samples/cycles-pathological-2/d.js diff --git a/test/function/cycles-pathological-2/main.js b/test/function/samples/cycles-pathological-2/main.js similarity index 100% rename from test/function/cycles-pathological-2/main.js rename to test/function/samples/cycles-pathological-2/main.js diff --git a/test/function/cycles-pathological/A.js b/test/function/samples/cycles-pathological/A.js similarity index 100% rename from test/function/cycles-pathological/A.js rename to test/function/samples/cycles-pathological/A.js diff --git a/test/function/cycles-pathological/B.js b/test/function/samples/cycles-pathological/B.js similarity index 100% rename from test/function/cycles-pathological/B.js rename to test/function/samples/cycles-pathological/B.js diff --git a/test/function/cycles-pathological/C.js b/test/function/samples/cycles-pathological/C.js similarity index 100% rename from test/function/cycles-pathological/C.js rename to test/function/samples/cycles-pathological/C.js diff --git a/test/function/cycles-pathological/D.js b/test/function/samples/cycles-pathological/D.js similarity index 100% rename from test/function/cycles-pathological/D.js rename to test/function/samples/cycles-pathological/D.js diff --git a/test/function/cycles-pathological/_config.js b/test/function/samples/cycles-pathological/_config.js similarity index 100% rename from test/function/cycles-pathological/_config.js rename to test/function/samples/cycles-pathological/_config.js diff --git a/test/function/cycles-pathological/main.js b/test/function/samples/cycles-pathological/main.js similarity index 100% rename from test/function/cycles-pathological/main.js rename to test/function/samples/cycles-pathological/main.js diff --git a/test/function/cycles-stack-overflow/_config.js b/test/function/samples/cycles-stack-overflow/_config.js similarity index 100% rename from test/function/cycles-stack-overflow/_config.js rename to test/function/samples/cycles-stack-overflow/_config.js diff --git a/test/function/cycles-stack-overflow/b.js b/test/function/samples/cycles-stack-overflow/b.js similarity index 100% rename from test/function/cycles-stack-overflow/b.js rename to test/function/samples/cycles-stack-overflow/b.js diff --git a/test/function/cycles-stack-overflow/c.js b/test/function/samples/cycles-stack-overflow/c.js similarity index 100% rename from test/function/cycles-stack-overflow/c.js rename to test/function/samples/cycles-stack-overflow/c.js diff --git a/test/function/cycles-stack-overflow/d.js b/test/function/samples/cycles-stack-overflow/d.js similarity index 100% rename from test/function/cycles-stack-overflow/d.js rename to test/function/samples/cycles-stack-overflow/d.js diff --git a/test/function/cycles-stack-overflow/main.js b/test/function/samples/cycles-stack-overflow/main.js similarity index 100% rename from test/function/cycles-stack-overflow/main.js rename to test/function/samples/cycles-stack-overflow/main.js diff --git a/test/function/deconflicts-classes/_config.js b/test/function/samples/deconflicts-classes/_config.js similarity index 100% rename from test/function/deconflicts-classes/_config.js rename to test/function/samples/deconflicts-classes/_config.js diff --git a/test/function/deconflicts-classes/a.js b/test/function/samples/deconflicts-classes/a.js similarity index 100% rename from test/function/deconflicts-classes/a.js rename to test/function/samples/deconflicts-classes/a.js diff --git a/test/function/deconflicts-classes/b.js b/test/function/samples/deconflicts-classes/b.js similarity index 100% rename from test/function/deconflicts-classes/b.js rename to test/function/samples/deconflicts-classes/b.js diff --git a/test/function/deconflicts-classes/main.js b/test/function/samples/deconflicts-classes/main.js similarity index 100% rename from test/function/deconflicts-classes/main.js rename to test/function/samples/deconflicts-classes/main.js diff --git a/test/function/deconflicts-exports/_config.js b/test/function/samples/deconflicts-exports/_config.js similarity index 100% rename from test/function/deconflicts-exports/_config.js rename to test/function/samples/deconflicts-exports/_config.js diff --git a/test/function/deconflicts-exports/main.js b/test/function/samples/deconflicts-exports/main.js similarity index 100% rename from test/function/deconflicts-exports/main.js rename to test/function/samples/deconflicts-exports/main.js diff --git a/test/function/deconflicts-external-imports/_config.js b/test/function/samples/deconflicts-external-imports/_config.js similarity index 100% rename from test/function/deconflicts-external-imports/_config.js rename to test/function/samples/deconflicts-external-imports/_config.js diff --git a/test/function/deconflicts-external-imports/a.js b/test/function/samples/deconflicts-external-imports/a.js similarity index 100% rename from test/function/deconflicts-external-imports/a.js rename to test/function/samples/deconflicts-external-imports/a.js diff --git a/test/function/deconflicts-external-imports/b.js b/test/function/samples/deconflicts-external-imports/b.js similarity index 100% rename from test/function/deconflicts-external-imports/b.js rename to test/function/samples/deconflicts-external-imports/b.js diff --git a/test/function/deconflicts-external-imports/main.js b/test/function/samples/deconflicts-external-imports/main.js similarity index 100% rename from test/function/deconflicts-external-imports/main.js rename to test/function/samples/deconflicts-external-imports/main.js diff --git a/test/function/deconflicts-generated-default-names/_config.js b/test/function/samples/deconflicts-generated-default-names/_config.js similarity index 100% rename from test/function/deconflicts-generated-default-names/_config.js rename to test/function/samples/deconflicts-generated-default-names/_config.js diff --git a/test/function/deconflicts-generated-default-names/foo.js b/test/function/samples/deconflicts-generated-default-names/foo.js similarity index 100% rename from test/function/deconflicts-generated-default-names/foo.js rename to test/function/samples/deconflicts-generated-default-names/foo.js diff --git a/test/function/deconflicts-generated-default-names/main.js b/test/function/samples/deconflicts-generated-default-names/main.js similarity index 100% rename from test/function/deconflicts-generated-default-names/main.js rename to test/function/samples/deconflicts-generated-default-names/main.js diff --git a/test/function/deconflicts-globals/_config.js b/test/function/samples/deconflicts-globals/_config.js similarity index 100% rename from test/function/deconflicts-globals/_config.js rename to test/function/samples/deconflicts-globals/_config.js diff --git a/test/function/deconflicts-globals/bar.js b/test/function/samples/deconflicts-globals/bar.js similarity index 100% rename from test/function/deconflicts-globals/bar.js rename to test/function/samples/deconflicts-globals/bar.js diff --git a/test/function/deconflicts-globals/foo.js b/test/function/samples/deconflicts-globals/foo.js similarity index 100% rename from test/function/deconflicts-globals/foo.js rename to test/function/samples/deconflicts-globals/foo.js diff --git a/test/function/deconflicts-globals/main.js b/test/function/samples/deconflicts-globals/main.js similarity index 100% rename from test/function/deconflicts-globals/main.js rename to test/function/samples/deconflicts-globals/main.js diff --git a/test/function/deconstructed-exported-vars/_config.js b/test/function/samples/deconstructed-exported-vars/_config.js similarity index 100% rename from test/function/deconstructed-exported-vars/_config.js rename to test/function/samples/deconstructed-exported-vars/_config.js diff --git a/test/function/deconstructed-exported-vars/main.js b/test/function/samples/deconstructed-exported-vars/main.js similarity index 100% rename from test/function/deconstructed-exported-vars/main.js rename to test/function/samples/deconstructed-exported-vars/main.js diff --git a/test/function/default-export-as-is-bound/_config.js b/test/function/samples/default-export-as-is-bound/_config.js similarity index 100% rename from test/function/default-export-as-is-bound/_config.js rename to test/function/samples/default-export-as-is-bound/_config.js diff --git a/test/function/default-export-as-is-bound/foo.js b/test/function/samples/default-export-as-is-bound/foo.js similarity index 100% rename from test/function/default-export-as-is-bound/foo.js rename to test/function/samples/default-export-as-is-bound/foo.js diff --git a/test/function/default-export-as-is-bound/main.js b/test/function/samples/default-export-as-is-bound/main.js similarity index 100% rename from test/function/default-export-as-is-bound/main.js rename to test/function/samples/default-export-as-is-bound/main.js diff --git a/test/function/default-export-is-not-bound-b/_config.js b/test/function/samples/default-export-is-not-bound-b/_config.js similarity index 100% rename from test/function/default-export-is-not-bound-b/_config.js rename to test/function/samples/default-export-is-not-bound-b/_config.js diff --git a/test/function/default-export-is-not-bound-b/foo.js b/test/function/samples/default-export-is-not-bound-b/foo.js similarity index 100% rename from test/function/default-export-is-not-bound-b/foo.js rename to test/function/samples/default-export-is-not-bound-b/foo.js diff --git a/test/function/default-export-is-not-bound-b/main.js b/test/function/samples/default-export-is-not-bound-b/main.js similarity index 100% rename from test/function/default-export-is-not-bound-b/main.js rename to test/function/samples/default-export-is-not-bound-b/main.js diff --git a/test/function/default-export-is-not-bound/_config.js b/test/function/samples/default-export-is-not-bound/_config.js similarity index 100% rename from test/function/default-export-is-not-bound/_config.js rename to test/function/samples/default-export-is-not-bound/_config.js diff --git a/test/function/default-export-is-not-bound/foo.js b/test/function/samples/default-export-is-not-bound/foo.js similarity index 100% rename from test/function/default-export-is-not-bound/foo.js rename to test/function/samples/default-export-is-not-bound/foo.js diff --git a/test/function/default-export-is-not-bound/main.js b/test/function/samples/default-export-is-not-bound/main.js similarity index 100% rename from test/function/default-export-is-not-bound/main.js rename to test/function/samples/default-export-is-not-bound/main.js diff --git a/test/function/default-exports-in-parens/_config.js b/test/function/samples/default-exports-in-parens/_config.js similarity index 100% rename from test/function/default-exports-in-parens/_config.js rename to test/function/samples/default-exports-in-parens/_config.js diff --git a/test/function/default-exports-in-parens/foo.js b/test/function/samples/default-exports-in-parens/foo.js similarity index 100% rename from test/function/default-exports-in-parens/foo.js rename to test/function/samples/default-exports-in-parens/foo.js diff --git a/test/function/default-exports-in-parens/main.js b/test/function/samples/default-exports-in-parens/main.js similarity index 100% rename from test/function/default-exports-in-parens/main.js rename to test/function/samples/default-exports-in-parens/main.js diff --git a/test/function/default-function-export-conflict/_config.js b/test/function/samples/default-function-export-conflict/_config.js similarity index 100% rename from test/function/default-function-export-conflict/_config.js rename to test/function/samples/default-function-export-conflict/_config.js diff --git a/test/function/default-function-export-conflict/foo.js b/test/function/samples/default-function-export-conflict/foo.js similarity index 100% rename from test/function/default-function-export-conflict/foo.js rename to test/function/samples/default-function-export-conflict/foo.js diff --git a/test/function/default-function-export-conflict/main.js b/test/function/samples/default-function-export-conflict/main.js similarity index 100% rename from test/function/default-function-export-conflict/main.js rename to test/function/samples/default-function-export-conflict/main.js diff --git a/test/function/default-not-reexported/_config.js b/test/function/samples/default-not-reexported/_config.js similarity index 100% rename from test/function/default-not-reexported/_config.js rename to test/function/samples/default-not-reexported/_config.js diff --git a/test/function/default-not-reexported/bar.js b/test/function/samples/default-not-reexported/bar.js similarity index 100% rename from test/function/default-not-reexported/bar.js rename to test/function/samples/default-not-reexported/bar.js diff --git a/test/function/default-not-reexported/foo.js b/test/function/samples/default-not-reexported/foo.js similarity index 100% rename from test/function/default-not-reexported/foo.js rename to test/function/samples/default-not-reexported/foo.js diff --git a/test/function/default-not-reexported/main.js b/test/function/samples/default-not-reexported/main.js similarity index 100% rename from test/function/default-not-reexported/main.js rename to test/function/samples/default-not-reexported/main.js diff --git a/test/function/delete/_config.js b/test/function/samples/delete/_config.js similarity index 100% rename from test/function/delete/_config.js rename to test/function/samples/delete/_config.js diff --git a/test/function/delete/main.js b/test/function/samples/delete/main.js similarity index 100% rename from test/function/delete/main.js rename to test/function/samples/delete/main.js diff --git a/test/function/deshadow-top-level-declaration/_config.js b/test/function/samples/deshadow-top-level-declaration/_config.js similarity index 100% rename from test/function/deshadow-top-level-declaration/_config.js rename to test/function/samples/deshadow-top-level-declaration/_config.js diff --git a/test/function/deshadow-top-level-declaration/a.js b/test/function/samples/deshadow-top-level-declaration/a.js similarity index 100% rename from test/function/deshadow-top-level-declaration/a.js rename to test/function/samples/deshadow-top-level-declaration/a.js diff --git a/test/function/deshadow-top-level-declaration/b.js b/test/function/samples/deshadow-top-level-declaration/b.js similarity index 100% rename from test/function/deshadow-top-level-declaration/b.js rename to test/function/samples/deshadow-top-level-declaration/b.js diff --git a/test/function/deshadow-top-level-declaration/foo.js b/test/function/samples/deshadow-top-level-declaration/foo.js similarity index 100% rename from test/function/deshadow-top-level-declaration/foo.js rename to test/function/samples/deshadow-top-level-declaration/foo.js diff --git a/test/function/deshadow-top-level-declaration/main.js b/test/function/samples/deshadow-top-level-declaration/main.js similarity index 100% rename from test/function/deshadow-top-level-declaration/main.js rename to test/function/samples/deshadow-top-level-declaration/main.js diff --git a/test/function/deshadow-top-level-declaration/x.js b/test/function/samples/deshadow-top-level-declaration/x.js similarity index 100% rename from test/function/deshadow-top-level-declaration/x.js rename to test/function/samples/deshadow-top-level-declaration/x.js diff --git a/test/function/deshadowed-destructured-parameter/_config.js b/test/function/samples/deshadowed-destructured-parameter/_config.js similarity index 100% rename from test/function/deshadowed-destructured-parameter/_config.js rename to test/function/samples/deshadowed-destructured-parameter/_config.js diff --git a/test/function/deshadowed-destructured-parameter/main.js b/test/function/samples/deshadowed-destructured-parameter/main.js similarity index 100% rename from test/function/deshadowed-destructured-parameter/main.js rename to test/function/samples/deshadowed-destructured-parameter/main.js diff --git a/test/function/deshadowed-destructured-parameter/x.js b/test/function/samples/deshadowed-destructured-parameter/x.js similarity index 100% rename from test/function/deshadowed-destructured-parameter/x.js rename to test/function/samples/deshadowed-destructured-parameter/x.js diff --git a/test/function/deshadowed-shorthand-property/_config.js b/test/function/samples/deshadowed-shorthand-property/_config.js similarity index 100% rename from test/function/deshadowed-shorthand-property/_config.js rename to test/function/samples/deshadowed-shorthand-property/_config.js diff --git a/test/function/deshadowed-shorthand-property/foo.js b/test/function/samples/deshadowed-shorthand-property/foo.js similarity index 100% rename from test/function/deshadowed-shorthand-property/foo.js rename to test/function/samples/deshadowed-shorthand-property/foo.js diff --git a/test/function/deshadowed-shorthand-property/main.js b/test/function/samples/deshadowed-shorthand-property/main.js similarity index 100% rename from test/function/deshadowed-shorthand-property/main.js rename to test/function/samples/deshadowed-shorthand-property/main.js diff --git a/test/function/deshadows-function-expression-id/_config.js b/test/function/samples/deshadows-function-expression-id/_config.js similarity index 100% rename from test/function/deshadows-function-expression-id/_config.js rename to test/function/samples/deshadows-function-expression-id/_config.js diff --git a/test/function/deshadows-function-expression-id/foo.js b/test/function/samples/deshadows-function-expression-id/foo.js similarity index 100% rename from test/function/deshadows-function-expression-id/foo.js rename to test/function/samples/deshadows-function-expression-id/foo.js diff --git a/test/function/deshadows-function-expression-id/main.js b/test/function/samples/deshadows-function-expression-id/main.js similarity index 100% rename from test/function/deshadows-function-expression-id/main.js rename to test/function/samples/deshadows-function-expression-id/main.js diff --git a/test/function/disappearing-exported-value/_config.js b/test/function/samples/disappearing-exported-value/_config.js similarity index 100% rename from test/function/disappearing-exported-value/_config.js rename to test/function/samples/disappearing-exported-value/_config.js diff --git a/test/function/disappearing-exported-value/answer.js b/test/function/samples/disappearing-exported-value/answer.js similarity index 100% rename from test/function/disappearing-exported-value/answer.js rename to test/function/samples/disappearing-exported-value/answer.js diff --git a/test/function/disappearing-exported-value/main.js b/test/function/samples/disappearing-exported-value/main.js similarity index 100% rename from test/function/disappearing-exported-value/main.js rename to test/function/samples/disappearing-exported-value/main.js diff --git a/test/function/does-not-hang-on-missing-module/_config.js b/test/function/samples/does-not-hang-on-missing-module/_config.js similarity index 100% rename from test/function/does-not-hang-on-missing-module/_config.js rename to test/function/samples/does-not-hang-on-missing-module/_config.js diff --git a/test/function/does-not-hang-on-missing-module/main.js b/test/function/samples/does-not-hang-on-missing-module/main.js similarity index 100% rename from test/function/does-not-hang-on-missing-module/main.js rename to test/function/samples/does-not-hang-on-missing-module/main.js diff --git a/test/function/does-not-mangle-entry-point/_config.js b/test/function/samples/does-not-mangle-entry-point/_config.js similarity index 100% rename from test/function/does-not-mangle-entry-point/_config.js rename to test/function/samples/does-not-mangle-entry-point/_config.js diff --git a/test/function/double-default-export/_config.js b/test/function/samples/double-default-export/_config.js similarity index 100% rename from test/function/double-default-export/_config.js rename to test/function/samples/double-default-export/_config.js diff --git a/test/function/double-default-export/foo.js b/test/function/samples/double-default-export/foo.js similarity index 100% rename from test/function/double-default-export/foo.js rename to test/function/samples/double-default-export/foo.js diff --git a/test/function/double-default-export/main.js b/test/function/samples/double-default-export/main.js similarity index 100% rename from test/function/double-default-export/main.js rename to test/function/samples/double-default-export/main.js diff --git a/test/function/double-named-export/_config.js b/test/function/samples/double-named-export/_config.js similarity index 100% rename from test/function/double-named-export/_config.js rename to test/function/samples/double-named-export/_config.js diff --git a/test/function/double-named-export/foo.js b/test/function/samples/double-named-export/foo.js similarity index 100% rename from test/function/double-named-export/foo.js rename to test/function/samples/double-named-export/foo.js diff --git a/test/function/double-named-export/main.js b/test/function/samples/double-named-export/main.js similarity index 100% rename from test/function/double-named-export/main.js rename to test/function/samples/double-named-export/main.js diff --git a/test/function/double-named-reexport/_config.js b/test/function/samples/double-named-reexport/_config.js similarity index 100% rename from test/function/double-named-reexport/_config.js rename to test/function/samples/double-named-reexport/_config.js diff --git a/test/function/double-named-reexport/bar.js b/test/function/samples/double-named-reexport/bar.js similarity index 100% rename from test/function/double-named-reexport/bar.js rename to test/function/samples/double-named-reexport/bar.js diff --git a/test/function/double-named-reexport/foo.js b/test/function/samples/double-named-reexport/foo.js similarity index 100% rename from test/function/double-named-reexport/foo.js rename to test/function/samples/double-named-reexport/foo.js diff --git a/test/function/double-named-reexport/main.js b/test/function/samples/double-named-reexport/main.js similarity index 100% rename from test/function/double-named-reexport/main.js rename to test/function/samples/double-named-reexport/main.js diff --git a/test/function/duplicate-import-fails/_config.js b/test/function/samples/duplicate-import-fails/_config.js similarity index 100% rename from test/function/duplicate-import-fails/_config.js rename to test/function/samples/duplicate-import-fails/_config.js diff --git a/test/function/duplicate-import-fails/foo.js b/test/function/samples/duplicate-import-fails/foo.js similarity index 100% rename from test/function/duplicate-import-fails/foo.js rename to test/function/samples/duplicate-import-fails/foo.js diff --git a/test/function/duplicate-import-fails/main.js b/test/function/samples/duplicate-import-fails/main.js similarity index 100% rename from test/function/duplicate-import-fails/main.js rename to test/function/samples/duplicate-import-fails/main.js diff --git a/test/function/duplicate-import-specifier-fails/_config.js b/test/function/samples/duplicate-import-specifier-fails/_config.js similarity index 100% rename from test/function/duplicate-import-specifier-fails/_config.js rename to test/function/samples/duplicate-import-specifier-fails/_config.js diff --git a/test/function/duplicate-import-specifier-fails/foo.js b/test/function/samples/duplicate-import-specifier-fails/foo.js similarity index 100% rename from test/function/duplicate-import-specifier-fails/foo.js rename to test/function/samples/duplicate-import-specifier-fails/foo.js diff --git a/test/function/duplicate-import-specifier-fails/main.js b/test/function/samples/duplicate-import-specifier-fails/main.js similarity index 100% rename from test/function/duplicate-import-specifier-fails/main.js rename to test/function/samples/duplicate-import-specifier-fails/main.js diff --git a/test/function/dynamic-namespace-lookup/_config.js b/test/function/samples/dynamic-namespace-lookup/_config.js similarity index 100% rename from test/function/dynamic-namespace-lookup/_config.js rename to test/function/samples/dynamic-namespace-lookup/_config.js diff --git a/test/function/dynamic-namespace-lookup/foo.js b/test/function/samples/dynamic-namespace-lookup/foo.js similarity index 100% rename from test/function/dynamic-namespace-lookup/foo.js rename to test/function/samples/dynamic-namespace-lookup/foo.js diff --git a/test/function/dynamic-namespace-lookup/main.js b/test/function/samples/dynamic-namespace-lookup/main.js similarity index 100% rename from test/function/dynamic-namespace-lookup/main.js rename to test/function/samples/dynamic-namespace-lookup/main.js diff --git a/test/function/empty-imports-have-side-effects/_config.js b/test/function/samples/empty-imports-have-side-effects/_config.js similarity index 100% rename from test/function/empty-imports-have-side-effects/_config.js rename to test/function/samples/empty-imports-have-side-effects/_config.js diff --git a/test/function/empty-imports-have-side-effects/foo.js b/test/function/samples/empty-imports-have-side-effects/foo.js similarity index 100% rename from test/function/empty-imports-have-side-effects/foo.js rename to test/function/samples/empty-imports-have-side-effects/foo.js diff --git a/test/function/empty-imports-have-side-effects/main.js b/test/function/samples/empty-imports-have-side-effects/main.js similarity index 100% rename from test/function/empty-imports-have-side-effects/main.js rename to test/function/samples/empty-imports-have-side-effects/main.js diff --git a/test/function/es5-class-called-without-new/_config.js b/test/function/samples/es5-class-called-without-new/_config.js similarity index 100% rename from test/function/es5-class-called-without-new/_config.js rename to test/function/samples/es5-class-called-without-new/_config.js diff --git a/test/function/es5-class-called-without-new/foo.js b/test/function/samples/es5-class-called-without-new/foo.js similarity index 100% rename from test/function/es5-class-called-without-new/foo.js rename to test/function/samples/es5-class-called-without-new/foo.js diff --git a/test/function/es5-class-called-without-new/main.js b/test/function/samples/es5-class-called-without-new/main.js similarity index 100% rename from test/function/es5-class-called-without-new/main.js rename to test/function/samples/es5-class-called-without-new/main.js diff --git a/test/function/export-all-from-external/_config.js b/test/function/samples/export-all-from-external/_config.js similarity index 100% rename from test/function/export-all-from-external/_config.js rename to test/function/samples/export-all-from-external/_config.js diff --git a/test/function/export-all-from-external/main.js b/test/function/samples/export-all-from-external/main.js similarity index 100% rename from test/function/export-all-from-external/main.js rename to test/function/samples/export-all-from-external/main.js diff --git a/test/function/export-all-from-external/path-plus.js b/test/function/samples/export-all-from-external/path-plus.js similarity index 100% rename from test/function/export-all-from-external/path-plus.js rename to test/function/samples/export-all-from-external/path-plus.js diff --git a/test/function/export-all-multiple/_config.js b/test/function/samples/export-all-multiple/_config.js similarity index 100% rename from test/function/export-all-multiple/_config.js rename to test/function/samples/export-all-multiple/_config.js diff --git a/test/function/export-all-multiple/bar.js b/test/function/samples/export-all-multiple/bar.js similarity index 100% rename from test/function/export-all-multiple/bar.js rename to test/function/samples/export-all-multiple/bar.js diff --git a/test/function/export-all-multiple/foo.js b/test/function/samples/export-all-multiple/foo.js similarity index 100% rename from test/function/export-all-multiple/foo.js rename to test/function/samples/export-all-multiple/foo.js diff --git a/test/function/export-all-multiple/main.js b/test/function/samples/export-all-multiple/main.js similarity index 100% rename from test/function/export-all-multiple/main.js rename to test/function/samples/export-all-multiple/main.js diff --git a/test/function/export-all/_config.js b/test/function/samples/export-all/_config.js similarity index 100% rename from test/function/export-all/_config.js rename to test/function/samples/export-all/_config.js diff --git a/test/function/export-all/main.js b/test/function/samples/export-all/main.js similarity index 100% rename from test/function/export-all/main.js rename to test/function/samples/export-all/main.js diff --git a/test/function/export-all/wat-impl.js b/test/function/samples/export-all/wat-impl.js similarity index 100% rename from test/function/export-all/wat-impl.js rename to test/function/samples/export-all/wat-impl.js diff --git a/test/function/export-all/wat.js b/test/function/samples/export-all/wat.js similarity index 100% rename from test/function/export-all/wat.js rename to test/function/samples/export-all/wat.js diff --git a/test/function/export-and-import-reference-share-var/_config.js b/test/function/samples/export-and-import-reference-share-var/_config.js similarity index 100% rename from test/function/export-and-import-reference-share-var/_config.js rename to test/function/samples/export-and-import-reference-share-var/_config.js diff --git a/test/function/export-and-import-reference-share-var/foo.js b/test/function/samples/export-and-import-reference-share-var/foo.js similarity index 100% rename from test/function/export-and-import-reference-share-var/foo.js rename to test/function/samples/export-and-import-reference-share-var/foo.js diff --git a/test/function/export-and-import-reference-share-var/main.js b/test/function/samples/export-and-import-reference-share-var/main.js similarity index 100% rename from test/function/export-and-import-reference-share-var/main.js rename to test/function/samples/export-and-import-reference-share-var/main.js diff --git a/test/function/export-as/_config.js b/test/function/samples/export-as/_config.js similarity index 100% rename from test/function/export-as/_config.js rename to test/function/samples/export-as/_config.js diff --git a/test/function/export-as/foo.js b/test/function/samples/export-as/foo.js similarity index 100% rename from test/function/export-as/foo.js rename to test/function/samples/export-as/foo.js diff --git a/test/function/export-as/main.js b/test/function/samples/export-as/main.js similarity index 100% rename from test/function/export-as/main.js rename to test/function/samples/export-as/main.js diff --git a/test/function/export-deconflicted-names/_config.js b/test/function/samples/export-deconflicted-names/_config.js similarity index 100% rename from test/function/export-deconflicted-names/_config.js rename to test/function/samples/export-deconflicted-names/_config.js diff --git a/test/function/export-deconflicted-names/bar.js b/test/function/samples/export-deconflicted-names/bar.js similarity index 100% rename from test/function/export-deconflicted-names/bar.js rename to test/function/samples/export-deconflicted-names/bar.js diff --git a/test/function/export-deconflicted-names/baz.js b/test/function/samples/export-deconflicted-names/baz.js similarity index 100% rename from test/function/export-deconflicted-names/baz.js rename to test/function/samples/export-deconflicted-names/baz.js diff --git a/test/function/export-deconflicted-names/foo.js b/test/function/samples/export-deconflicted-names/foo.js similarity index 100% rename from test/function/export-deconflicted-names/foo.js rename to test/function/samples/export-deconflicted-names/foo.js diff --git a/test/function/export-deconflicted-names/main.js b/test/function/samples/export-deconflicted-names/main.js similarity index 100% rename from test/function/export-deconflicted-names/main.js rename to test/function/samples/export-deconflicted-names/main.js diff --git a/test/function/export-default-anonymous-function/_config.js b/test/function/samples/export-default-anonymous-function/_config.js similarity index 100% rename from test/function/export-default-anonymous-function/_config.js rename to test/function/samples/export-default-anonymous-function/_config.js diff --git a/test/function/export-default-anonymous-function/answer.js b/test/function/samples/export-default-anonymous-function/answer.js similarity index 100% rename from test/function/export-default-anonymous-function/answer.js rename to test/function/samples/export-default-anonymous-function/answer.js diff --git a/test/function/export-default-anonymous-function/main.js b/test/function/samples/export-default-anonymous-function/main.js similarity index 100% rename from test/function/export-default-anonymous-function/main.js rename to test/function/samples/export-default-anonymous-function/main.js diff --git a/test/function/export-default-as-b/_config.js b/test/function/samples/export-default-as-b/_config.js similarity index 100% rename from test/function/export-default-as-b/_config.js rename to test/function/samples/export-default-as-b/_config.js diff --git a/test/function/export-default-as-b/bar.js b/test/function/samples/export-default-as-b/bar.js similarity index 100% rename from test/function/export-default-as-b/bar.js rename to test/function/samples/export-default-as-b/bar.js diff --git a/test/function/export-default-as-b/baz.js b/test/function/samples/export-default-as-b/baz.js similarity index 100% rename from test/function/export-default-as-b/baz.js rename to test/function/samples/export-default-as-b/baz.js diff --git a/test/function/export-default-as-b/main.js b/test/function/samples/export-default-as-b/main.js similarity index 100% rename from test/function/export-default-as-b/main.js rename to test/function/samples/export-default-as-b/main.js diff --git a/test/function/export-default-as-c/_config.js b/test/function/samples/export-default-as-c/_config.js similarity index 100% rename from test/function/export-default-as-c/_config.js rename to test/function/samples/export-default-as-c/_config.js diff --git a/test/function/export-default-as-c/baz.js b/test/function/samples/export-default-as-c/baz.js similarity index 100% rename from test/function/export-default-as-c/baz.js rename to test/function/samples/export-default-as-c/baz.js diff --git a/test/function/export-default-as-c/main.js b/test/function/samples/export-default-as-c/main.js similarity index 100% rename from test/function/export-default-as-c/main.js rename to test/function/samples/export-default-as-c/main.js diff --git a/test/function/export-default-as-c/namespace.js b/test/function/samples/export-default-as-c/namespace.js similarity index 100% rename from test/function/export-default-as-c/namespace.js rename to test/function/samples/export-default-as-c/namespace.js diff --git a/test/function/export-default-as/_config.js b/test/function/samples/export-default-as/_config.js similarity index 100% rename from test/function/export-default-as/_config.js rename to test/function/samples/export-default-as/_config.js diff --git a/test/function/export-default-as/foo.js b/test/function/samples/export-default-as/foo.js similarity index 100% rename from test/function/export-default-as/foo.js rename to test/function/samples/export-default-as/foo.js diff --git a/test/function/export-default-as/main.js b/test/function/samples/export-default-as/main.js similarity index 100% rename from test/function/export-default-as/main.js rename to test/function/samples/export-default-as/main.js diff --git a/test/function/export-default-expression/_config.js b/test/function/samples/export-default-expression/_config.js similarity index 100% rename from test/function/export-default-expression/_config.js rename to test/function/samples/export-default-expression/_config.js diff --git a/test/function/export-default-expression/main.js b/test/function/samples/export-default-expression/main.js similarity index 100% rename from test/function/export-default-expression/main.js rename to test/function/samples/export-default-expression/main.js diff --git a/test/function/export-default-from-external/_config.js b/test/function/samples/export-default-from-external/_config.js similarity index 100% rename from test/function/export-default-from-external/_config.js rename to test/function/samples/export-default-from-external/_config.js diff --git a/test/function/export-default-from-external/main.js b/test/function/samples/export-default-from-external/main.js similarity index 100% rename from test/function/export-default-from-external/main.js rename to test/function/samples/export-default-from-external/main.js diff --git a/test/function/export-default-named-function/_config.js b/test/function/samples/export-default-named-function/_config.js similarity index 100% rename from test/function/export-default-named-function/_config.js rename to test/function/samples/export-default-named-function/_config.js diff --git a/test/function/export-default-named-function/main.js b/test/function/samples/export-default-named-function/main.js similarity index 100% rename from test/function/export-default-named-function/main.js rename to test/function/samples/export-default-named-function/main.js diff --git a/test/function/export-default-no-space/_config.js b/test/function/samples/export-default-no-space/_config.js similarity index 100% rename from test/function/export-default-no-space/_config.js rename to test/function/samples/export-default-no-space/_config.js diff --git a/test/function/export-default-no-space/main.js b/test/function/samples/export-default-no-space/main.js similarity index 100% rename from test/function/export-default-no-space/main.js rename to test/function/samples/export-default-no-space/main.js diff --git a/test/function/export-destruction/_config.js b/test/function/samples/export-destruction/_config.js similarity index 100% rename from test/function/export-destruction/_config.js rename to test/function/samples/export-destruction/_config.js diff --git a/test/function/export-destruction/main.js b/test/function/samples/export-destruction/main.js similarity index 100% rename from test/function/export-destruction/main.js rename to test/function/samples/export-destruction/main.js diff --git a/test/function/export-from-default-renamed/_config.js b/test/function/samples/export-from-default-renamed/_config.js similarity index 100% rename from test/function/export-from-default-renamed/_config.js rename to test/function/samples/export-from-default-renamed/_config.js diff --git a/test/function/export-from-default-renamed/a.js b/test/function/samples/export-from-default-renamed/a.js similarity index 100% rename from test/function/export-from-default-renamed/a.js rename to test/function/samples/export-from-default-renamed/a.js diff --git a/test/function/export-from-default-renamed/b.js b/test/function/samples/export-from-default-renamed/b.js similarity index 100% rename from test/function/export-from-default-renamed/b.js rename to test/function/samples/export-from-default-renamed/b.js diff --git a/test/function/export-from-default-renamed/foo.js b/test/function/samples/export-from-default-renamed/foo.js similarity index 100% rename from test/function/export-from-default-renamed/foo.js rename to test/function/samples/export-from-default-renamed/foo.js diff --git a/test/function/export-from-default-renamed/main.js b/test/function/samples/export-from-default-renamed/main.js similarity index 100% rename from test/function/export-from-default-renamed/main.js rename to test/function/samples/export-from-default-renamed/main.js diff --git a/test/function/export-from-default/_config.js b/test/function/samples/export-from-default/_config.js similarity index 100% rename from test/function/export-from-default/_config.js rename to test/function/samples/export-from-default/_config.js diff --git a/test/function/export-from-default/first.js b/test/function/samples/export-from-default/first.js similarity index 100% rename from test/function/export-from-default/first.js rename to test/function/samples/export-from-default/first.js diff --git a/test/function/export-from-default/main.js b/test/function/samples/export-from-default/main.js similarity index 100% rename from test/function/export-from-default/main.js rename to test/function/samples/export-from-default/main.js diff --git a/test/function/export-from-default/second.js b/test/function/samples/export-from-default/second.js similarity index 100% rename from test/function/export-from-default/second.js rename to test/function/samples/export-from-default/second.js diff --git a/test/function/export-from-external/_config.js b/test/function/samples/export-from-external/_config.js similarity index 100% rename from test/function/export-from-external/_config.js rename to test/function/samples/export-from-external/_config.js diff --git a/test/function/export-from-external/main.js b/test/function/samples/export-from-external/main.js similarity index 100% rename from test/function/export-from-external/main.js rename to test/function/samples/export-from-external/main.js diff --git a/test/function/export-from-internal-module/_config.js b/test/function/samples/export-from-internal-module/_config.js similarity index 100% rename from test/function/export-from-internal-module/_config.js rename to test/function/samples/export-from-internal-module/_config.js diff --git a/test/function/export-from-internal-module/foo.js b/test/function/samples/export-from-internal-module/foo.js similarity index 100% rename from test/function/export-from-internal-module/foo.js rename to test/function/samples/export-from-internal-module/foo.js diff --git a/test/function/export-from-internal-module/main.js b/test/function/samples/export-from-internal-module/main.js similarity index 100% rename from test/function/export-from-internal-module/main.js rename to test/function/samples/export-from-internal-module/main.js diff --git a/test/function/export-from-multiple-no-default-conflict/_config.js b/test/function/samples/export-from-multiple-no-default-conflict/_config.js similarity index 100% rename from test/function/export-from-multiple-no-default-conflict/_config.js rename to test/function/samples/export-from-multiple-no-default-conflict/_config.js diff --git a/test/function/export-from-multiple-no-default-conflict/a.js b/test/function/samples/export-from-multiple-no-default-conflict/a.js similarity index 100% rename from test/function/export-from-multiple-no-default-conflict/a.js rename to test/function/samples/export-from-multiple-no-default-conflict/a.js diff --git a/test/function/export-from-multiple-no-default-conflict/b.js b/test/function/samples/export-from-multiple-no-default-conflict/b.js similarity index 100% rename from test/function/export-from-multiple-no-default-conflict/b.js rename to test/function/samples/export-from-multiple-no-default-conflict/b.js diff --git a/test/function/export-from-multiple-no-default-conflict/main.js b/test/function/samples/export-from-multiple-no-default-conflict/main.js similarity index 100% rename from test/function/export-from-multiple-no-default-conflict/main.js rename to test/function/samples/export-from-multiple-no-default-conflict/main.js diff --git a/test/function/export-from-no-local-binding-var/_config.js b/test/function/samples/export-from-no-local-binding-var/_config.js similarity index 100% rename from test/function/export-from-no-local-binding-var/_config.js rename to test/function/samples/export-from-no-local-binding-var/_config.js diff --git a/test/function/export-from-no-local-binding-var/foo.js b/test/function/samples/export-from-no-local-binding-var/foo.js similarity index 100% rename from test/function/export-from-no-local-binding-var/foo.js rename to test/function/samples/export-from-no-local-binding-var/foo.js diff --git a/test/function/export-from-no-local-binding-var/main.js b/test/function/samples/export-from-no-local-binding-var/main.js similarity index 100% rename from test/function/export-from-no-local-binding-var/main.js rename to test/function/samples/export-from-no-local-binding-var/main.js diff --git a/test/function/export-from-no-local-binding/_config.js b/test/function/samples/export-from-no-local-binding/_config.js similarity index 100% rename from test/function/export-from-no-local-binding/_config.js rename to test/function/samples/export-from-no-local-binding/_config.js diff --git a/test/function/export-from-no-local-binding/first.js b/test/function/samples/export-from-no-local-binding/first.js similarity index 100% rename from test/function/export-from-no-local-binding/first.js rename to test/function/samples/export-from-no-local-binding/first.js diff --git a/test/function/export-from-no-local-binding/main.js b/test/function/samples/export-from-no-local-binding/main.js similarity index 100% rename from test/function/export-from-no-local-binding/main.js rename to test/function/samples/export-from-no-local-binding/main.js diff --git a/test/function/export-from-no-local-binding/second.js b/test/function/samples/export-from-no-local-binding/second.js similarity index 100% rename from test/function/export-from-no-local-binding/second.js rename to test/function/samples/export-from-no-local-binding/second.js diff --git a/test/function/export-from-renamed/_config.js b/test/function/samples/export-from-renamed/_config.js similarity index 100% rename from test/function/export-from-renamed/_config.js rename to test/function/samples/export-from-renamed/_config.js diff --git a/test/function/export-from-renamed/foo.js b/test/function/samples/export-from-renamed/foo.js similarity index 100% rename from test/function/export-from-renamed/foo.js rename to test/function/samples/export-from-renamed/foo.js diff --git a/test/function/export-from-renamed/main.js b/test/function/samples/export-from-renamed/main.js similarity index 100% rename from test/function/export-from-renamed/main.js rename to test/function/samples/export-from-renamed/main.js diff --git a/test/function/export-from-with-definition-conflict/_config.js b/test/function/samples/export-from-with-definition-conflict/_config.js similarity index 100% rename from test/function/export-from-with-definition-conflict/_config.js rename to test/function/samples/export-from-with-definition-conflict/_config.js diff --git a/test/function/export-from-with-definition-conflict/a.js b/test/function/samples/export-from-with-definition-conflict/a.js similarity index 100% rename from test/function/export-from-with-definition-conflict/a.js rename to test/function/samples/export-from-with-definition-conflict/a.js diff --git a/test/function/export-from-with-definition-conflict/main.js b/test/function/samples/export-from-with-definition-conflict/main.js similarity index 100% rename from test/function/export-from-with-definition-conflict/main.js rename to test/function/samples/export-from-with-definition-conflict/main.js diff --git a/test/function/export-from-with-import-conflict/_config.js b/test/function/samples/export-from-with-import-conflict/_config.js similarity index 100% rename from test/function/export-from-with-import-conflict/_config.js rename to test/function/samples/export-from-with-import-conflict/_config.js diff --git a/test/function/export-from-with-import-conflict/a.js b/test/function/samples/export-from-with-import-conflict/a.js similarity index 100% rename from test/function/export-from-with-import-conflict/a.js rename to test/function/samples/export-from-with-import-conflict/a.js diff --git a/test/function/export-from-with-import-conflict/b.js b/test/function/samples/export-from-with-import-conflict/b.js similarity index 100% rename from test/function/export-from-with-import-conflict/b.js rename to test/function/samples/export-from-with-import-conflict/b.js diff --git a/test/function/export-from-with-import-conflict/main.js b/test/function/samples/export-from-with-import-conflict/main.js similarity index 100% rename from test/function/export-from-with-import-conflict/main.js rename to test/function/samples/export-from-with-import-conflict/main.js diff --git a/test/function/export-global/_config.js b/test/function/samples/export-global/_config.js similarity index 100% rename from test/function/export-global/_config.js rename to test/function/samples/export-global/_config.js diff --git a/test/function/export-global/main.js b/test/function/samples/export-global/main.js similarity index 100% rename from test/function/export-global/main.js rename to test/function/samples/export-global/main.js diff --git a/test/function/export-not-at-top-level-fails/_config.js b/test/function/samples/export-not-at-top-level-fails/_config.js similarity index 100% rename from test/function/export-not-at-top-level-fails/_config.js rename to test/function/samples/export-not-at-top-level-fails/_config.js diff --git a/test/function/export-not-at-top-level-fails/main.js b/test/function/samples/export-not-at-top-level-fails/main.js similarity index 100% rename from test/function/export-not-at-top-level-fails/main.js rename to test/function/samples/export-not-at-top-level-fails/main.js diff --git a/test/function/export-two-ways-default-b/_config.js b/test/function/samples/export-two-ways-default-b/_config.js similarity index 100% rename from test/function/export-two-ways-default-b/_config.js rename to test/function/samples/export-two-ways-default-b/_config.js diff --git a/test/function/export-two-ways-default-b/bar.js b/test/function/samples/export-two-ways-default-b/bar.js similarity index 100% rename from test/function/export-two-ways-default-b/bar.js rename to test/function/samples/export-two-ways-default-b/bar.js diff --git a/test/function/export-two-ways-default-b/foo.js b/test/function/samples/export-two-ways-default-b/foo.js similarity index 100% rename from test/function/export-two-ways-default-b/foo.js rename to test/function/samples/export-two-ways-default-b/foo.js diff --git a/test/function/export-two-ways-default-b/main.js b/test/function/samples/export-two-ways-default-b/main.js similarity index 100% rename from test/function/export-two-ways-default-b/main.js rename to test/function/samples/export-two-ways-default-b/main.js diff --git a/test/function/export-two-ways-default-b/x.js b/test/function/samples/export-two-ways-default-b/x.js similarity index 100% rename from test/function/export-two-ways-default-b/x.js rename to test/function/samples/export-two-ways-default-b/x.js diff --git a/test/function/export-two-ways-default/_config.js b/test/function/samples/export-two-ways-default/_config.js similarity index 100% rename from test/function/export-two-ways-default/_config.js rename to test/function/samples/export-two-ways-default/_config.js diff --git a/test/function/export-two-ways-default/bar.js b/test/function/samples/export-two-ways-default/bar.js similarity index 100% rename from test/function/export-two-ways-default/bar.js rename to test/function/samples/export-two-ways-default/bar.js diff --git a/test/function/export-two-ways-default/foo.js b/test/function/samples/export-two-ways-default/foo.js similarity index 100% rename from test/function/export-two-ways-default/foo.js rename to test/function/samples/export-two-ways-default/foo.js diff --git a/test/function/export-two-ways-default/main.js b/test/function/samples/export-two-ways-default/main.js similarity index 100% rename from test/function/export-two-ways-default/main.js rename to test/function/samples/export-two-ways-default/main.js diff --git a/test/function/export-two-ways-default/x.js b/test/function/samples/export-two-ways-default/x.js similarity index 100% rename from test/function/export-two-ways-default/x.js rename to test/function/samples/export-two-ways-default/x.js diff --git a/test/function/export-two-ways-function/_config.js b/test/function/samples/export-two-ways-function/_config.js similarity index 100% rename from test/function/export-two-ways-function/_config.js rename to test/function/samples/export-two-ways-function/_config.js diff --git a/test/function/export-two-ways-function/main.js b/test/function/samples/export-two-ways-function/main.js similarity index 100% rename from test/function/export-two-ways-function/main.js rename to test/function/samples/export-two-ways-function/main.js diff --git a/test/function/export-two-ways/_config.js b/test/function/samples/export-two-ways/_config.js similarity index 100% rename from test/function/export-two-ways/_config.js rename to test/function/samples/export-two-ways/_config.js diff --git a/test/function/export-two-ways/foo.js b/test/function/samples/export-two-ways/foo.js similarity index 100% rename from test/function/export-two-ways/foo.js rename to test/function/samples/export-two-ways/foo.js diff --git a/test/function/export-two-ways/main.js b/test/function/samples/export-two-ways/main.js similarity index 100% rename from test/function/export-two-ways/main.js rename to test/function/samples/export-two-ways/main.js diff --git a/test/function/export-type-mismatch-b/_config.js b/test/function/samples/export-type-mismatch-b/_config.js similarity index 100% rename from test/function/export-type-mismatch-b/_config.js rename to test/function/samples/export-type-mismatch-b/_config.js diff --git a/test/function/export-type-mismatch-b/main.js b/test/function/samples/export-type-mismatch-b/main.js similarity index 100% rename from test/function/export-type-mismatch-b/main.js rename to test/function/samples/export-type-mismatch-b/main.js diff --git a/test/function/export-type-mismatch-c/_config.js b/test/function/samples/export-type-mismatch-c/_config.js similarity index 100% rename from test/function/export-type-mismatch-c/_config.js rename to test/function/samples/export-type-mismatch-c/_config.js diff --git a/test/function/export-type-mismatch-c/main.js b/test/function/samples/export-type-mismatch-c/main.js similarity index 100% rename from test/function/export-type-mismatch-c/main.js rename to test/function/samples/export-type-mismatch-c/main.js diff --git a/test/function/export-type-mismatch/_config.js b/test/function/samples/export-type-mismatch/_config.js similarity index 100% rename from test/function/export-type-mismatch/_config.js rename to test/function/samples/export-type-mismatch/_config.js diff --git a/test/function/export-type-mismatch/main.js b/test/function/samples/export-type-mismatch/main.js similarity index 100% rename from test/function/export-type-mismatch/main.js rename to test/function/samples/export-type-mismatch/main.js diff --git a/test/function/exports-flag-allowed-in-options/_config.js b/test/function/samples/exports-flag-allowed-in-options/_config.js similarity index 100% rename from test/function/exports-flag-allowed-in-options/_config.js rename to test/function/samples/exports-flag-allowed-in-options/_config.js diff --git a/test/function/exports-flag-allowed-in-options/foo.js b/test/function/samples/exports-flag-allowed-in-options/foo.js similarity index 100% rename from test/function/exports-flag-allowed-in-options/foo.js rename to test/function/samples/exports-flag-allowed-in-options/foo.js diff --git a/test/function/exports-flag-allowed-in-options/main.js b/test/function/samples/exports-flag-allowed-in-options/main.js similarity index 100% rename from test/function/exports-flag-allowed-in-options/main.js rename to test/function/samples/exports-flag-allowed-in-options/main.js diff --git a/test/function/exports-named-values/_config.js b/test/function/samples/exports-named-values/_config.js similarity index 100% rename from test/function/exports-named-values/_config.js rename to test/function/samples/exports-named-values/_config.js diff --git a/test/function/exports-named-values/main.js b/test/function/samples/exports-named-values/main.js similarity index 100% rename from test/function/exports-named-values/main.js rename to test/function/samples/exports-named-values/main.js diff --git a/test/function/external-alias/_config.js b/test/function/samples/external-alias/_config.js similarity index 100% rename from test/function/external-alias/_config.js rename to test/function/samples/external-alias/_config.js diff --git a/test/function/external-alias/first/main.js b/test/function/samples/external-alias/first/main.js similarity index 100% rename from test/function/external-alias/first/main.js rename to test/function/samples/external-alias/first/main.js diff --git a/test/function/external-alias/first/module.js b/test/function/samples/external-alias/first/module.js similarity index 100% rename from test/function/external-alias/first/module.js rename to test/function/samples/external-alias/first/module.js diff --git a/test/function/external-function-always-true/_config.js b/test/function/samples/external-function-always-true/_config.js similarity index 100% rename from test/function/external-function-always-true/_config.js rename to test/function/samples/external-function-always-true/_config.js diff --git a/test/function/external-function-always-true/main.js b/test/function/samples/external-function-always-true/main.js similarity index 100% rename from test/function/external-function-always-true/main.js rename to test/function/samples/external-function-always-true/main.js diff --git a/test/function/external-function/_config.js b/test/function/samples/external-function/_config.js similarity index 100% rename from test/function/external-function/_config.js rename to test/function/samples/external-function/_config.js diff --git a/test/function/external-function/main.js b/test/function/samples/external-function/main.js similarity index 100% rename from test/function/external-function/main.js rename to test/function/samples/external-function/main.js diff --git a/test/function/external-ids-not-resolved/_config.js b/test/function/samples/external-ids-not-resolved/_config.js similarity index 100% rename from test/function/external-ids-not-resolved/_config.js rename to test/function/samples/external-ids-not-resolved/_config.js diff --git a/test/function/external-ids-not-resolved/main.js b/test/function/samples/external-ids-not-resolved/main.js similarity index 100% rename from test/function/external-ids-not-resolved/main.js rename to test/function/samples/external-ids-not-resolved/main.js diff --git a/test/function/external-normalization/_config.js b/test/function/samples/external-normalization/_config.js similarity index 100% rename from test/function/external-normalization/_config.js rename to test/function/samples/external-normalization/_config.js diff --git a/test/function/external-normalization/main.js b/test/function/samples/external-normalization/main.js similarity index 100% rename from test/function/external-normalization/main.js rename to test/function/samples/external-normalization/main.js diff --git a/test/function/function-side-effects/_config.js b/test/function/samples/function-side-effects/_config.js similarity index 100% rename from test/function/function-side-effects/_config.js rename to test/function/samples/function-side-effects/_config.js diff --git a/test/function/function-side-effects/main.js b/test/function/samples/function-side-effects/main.js similarity index 100% rename from test/function/function-side-effects/main.js rename to test/function/samples/function-side-effects/main.js diff --git a/test/function/function-side-effects/mutate.js b/test/function/samples/function-side-effects/mutate.js similarity index 100% rename from test/function/function-side-effects/mutate.js rename to test/function/samples/function-side-effects/mutate.js diff --git a/test/function/function-side-effects/object.js b/test/function/samples/function-side-effects/object.js similarity index 100% rename from test/function/function-side-effects/object.js rename to test/function/samples/function-side-effects/object.js diff --git a/test/function/functions-renamed-correctly/_config.js b/test/function/samples/functions-renamed-correctly/_config.js similarity index 100% rename from test/function/functions-renamed-correctly/_config.js rename to test/function/samples/functions-renamed-correctly/_config.js diff --git a/test/function/functions-renamed-correctly/after.js b/test/function/samples/functions-renamed-correctly/after.js similarity index 100% rename from test/function/functions-renamed-correctly/after.js rename to test/function/samples/functions-renamed-correctly/after.js diff --git a/test/function/functions-renamed-correctly/before.js b/test/function/samples/functions-renamed-correctly/before.js similarity index 100% rename from test/function/functions-renamed-correctly/before.js rename to test/function/samples/functions-renamed-correctly/before.js diff --git a/test/function/functions-renamed-correctly/factorial.js b/test/function/samples/functions-renamed-correctly/factorial.js similarity index 100% rename from test/function/functions-renamed-correctly/factorial.js rename to test/function/samples/functions-renamed-correctly/factorial.js diff --git a/test/function/functions-renamed-correctly/main.js b/test/function/samples/functions-renamed-correctly/main.js similarity index 100% rename from test/function/functions-renamed-correctly/main.js rename to test/function/samples/functions-renamed-correctly/main.js diff --git a/test/function/globally-called-modifying-function/_config.js b/test/function/samples/globally-called-modifying-function/_config.js similarity index 100% rename from test/function/globally-called-modifying-function/_config.js rename to test/function/samples/globally-called-modifying-function/_config.js diff --git a/test/function/globally-called-modifying-function/main.js b/test/function/samples/globally-called-modifying-function/main.js similarity index 100% rename from test/function/globally-called-modifying-function/main.js rename to test/function/samples/globally-called-modifying-function/main.js diff --git a/test/function/globally-called-modifying-function/module.js b/test/function/samples/globally-called-modifying-function/module.js similarity index 100% rename from test/function/globally-called-modifying-function/module.js rename to test/function/samples/globally-called-modifying-function/module.js diff --git a/test/function/handle-calling-uncallable/_config.js b/test/function/samples/handle-calling-uncallable/_config.js similarity index 100% rename from test/function/handle-calling-uncallable/_config.js rename to test/function/samples/handle-calling-uncallable/_config.js diff --git a/test/function/handle-calling-uncallable/foo.js b/test/function/samples/handle-calling-uncallable/foo.js similarity index 100% rename from test/function/handle-calling-uncallable/foo.js rename to test/function/samples/handle-calling-uncallable/foo.js diff --git a/test/function/handle-calling-uncallable/main.js b/test/function/samples/handle-calling-uncallable/main.js similarity index 100% rename from test/function/handle-calling-uncallable/main.js rename to test/function/samples/handle-calling-uncallable/main.js diff --git a/test/function/handles-stringified-sourcemaps/_config.js b/test/function/samples/handles-stringified-sourcemaps/_config.js similarity index 100% rename from test/function/handles-stringified-sourcemaps/_config.js rename to test/function/samples/handles-stringified-sourcemaps/_config.js diff --git a/test/function/handles-stringified-sourcemaps/main.js b/test/function/samples/handles-stringified-sourcemaps/main.js similarity index 100% rename from test/function/handles-stringified-sourcemaps/main.js rename to test/function/samples/handles-stringified-sourcemaps/main.js diff --git a/test/function/has-modules-array/_config.js b/test/function/samples/has-modules-array/_config.js similarity index 100% rename from test/function/has-modules-array/_config.js rename to test/function/samples/has-modules-array/_config.js diff --git a/test/function/has-modules-array/foo.js b/test/function/samples/has-modules-array/foo.js similarity index 100% rename from test/function/has-modules-array/foo.js rename to test/function/samples/has-modules-array/foo.js diff --git a/test/function/has-modules-array/main.js b/test/function/samples/has-modules-array/main.js similarity index 100% rename from test/function/has-modules-array/main.js rename to test/function/samples/has-modules-array/main.js diff --git a/test/function/has-resolved-ids/_config.js b/test/function/samples/has-resolved-ids/_config.js similarity index 100% rename from test/function/has-resolved-ids/_config.js rename to test/function/samples/has-resolved-ids/_config.js diff --git a/test/function/has-resolved-ids/foo.js b/test/function/samples/has-resolved-ids/foo.js similarity index 100% rename from test/function/has-resolved-ids/foo.js rename to test/function/samples/has-resolved-ids/foo.js diff --git a/test/function/has-resolved-ids/main.js b/test/function/samples/has-resolved-ids/main.js similarity index 100% rename from test/function/has-resolved-ids/main.js rename to test/function/samples/has-resolved-ids/main.js diff --git a/test/function/hidden-directories/.foo/bar.js b/test/function/samples/hidden-directories/.foo/bar.js similarity index 100% rename from test/function/hidden-directories/.foo/bar.js rename to test/function/samples/hidden-directories/.foo/bar.js diff --git a/test/function/hidden-directories/_config.js b/test/function/samples/hidden-directories/_config.js similarity index 100% rename from test/function/hidden-directories/_config.js rename to test/function/samples/hidden-directories/_config.js diff --git a/test/function/hidden-directories/main.js b/test/function/samples/hidden-directories/main.js similarity index 100% rename from test/function/hidden-directories/main.js rename to test/function/samples/hidden-directories/main.js diff --git a/test/function/identifiers-in-template-literals/_config.js b/test/function/samples/identifiers-in-template-literals/_config.js similarity index 100% rename from test/function/identifiers-in-template-literals/_config.js rename to test/function/samples/identifiers-in-template-literals/_config.js diff --git a/test/function/identifiers-in-template-literals/a.js b/test/function/samples/identifiers-in-template-literals/a.js similarity index 100% rename from test/function/identifiers-in-template-literals/a.js rename to test/function/samples/identifiers-in-template-literals/a.js diff --git a/test/function/identifiers-in-template-literals/b.js b/test/function/samples/identifiers-in-template-literals/b.js similarity index 100% rename from test/function/identifiers-in-template-literals/b.js rename to test/function/samples/identifiers-in-template-literals/b.js diff --git a/test/function/identifiers-in-template-literals/main.js b/test/function/samples/identifiers-in-template-literals/main.js similarity index 100% rename from test/function/identifiers-in-template-literals/main.js rename to test/function/samples/identifiers-in-template-literals/main.js diff --git a/test/function/if-statement-with-assignment/_config.js b/test/function/samples/if-statement-with-assignment/_config.js similarity index 100% rename from test/function/if-statement-with-assignment/_config.js rename to test/function/samples/if-statement-with-assignment/_config.js diff --git a/test/function/if-statement-with-assignment/main.js b/test/function/samples/if-statement-with-assignment/main.js similarity index 100% rename from test/function/if-statement-with-assignment/main.js rename to test/function/samples/if-statement-with-assignment/main.js diff --git a/test/function/if-statement-with-false-condition/_config.js b/test/function/samples/if-statement-with-false-condition/_config.js similarity index 100% rename from test/function/if-statement-with-false-condition/_config.js rename to test/function/samples/if-statement-with-false-condition/_config.js diff --git a/test/function/if-statement-with-false-condition/main.js b/test/function/samples/if-statement-with-false-condition/main.js similarity index 100% rename from test/function/if-statement-with-false-condition/main.js rename to test/function/samples/if-statement-with-false-condition/main.js diff --git a/test/function/if-statement-with-update/_config.js b/test/function/samples/if-statement-with-update/_config.js similarity index 100% rename from test/function/if-statement-with-update/_config.js rename to test/function/samples/if-statement-with-update/_config.js diff --git a/test/function/if-statement-with-update/main.js b/test/function/samples/if-statement-with-update/main.js similarity index 100% rename from test/function/if-statement-with-update/main.js rename to test/function/samples/if-statement-with-update/main.js diff --git a/test/function/iife-comments/_config.js b/test/function/samples/iife-comments/_config.js similarity index 100% rename from test/function/iife-comments/_config.js rename to test/function/samples/iife-comments/_config.js diff --git a/test/function/iife-comments/main.js b/test/function/samples/iife-comments/main.js similarity index 100% rename from test/function/iife-comments/main.js rename to test/function/samples/iife-comments/main.js diff --git a/test/function/iife-strong-dependencies/A.js b/test/function/samples/iife-strong-dependencies/A.js similarity index 100% rename from test/function/iife-strong-dependencies/A.js rename to test/function/samples/iife-strong-dependencies/A.js diff --git a/test/function/iife-strong-dependencies/B.js b/test/function/samples/iife-strong-dependencies/B.js similarity index 100% rename from test/function/iife-strong-dependencies/B.js rename to test/function/samples/iife-strong-dependencies/B.js diff --git a/test/function/iife-strong-dependencies/C.js b/test/function/samples/iife-strong-dependencies/C.js similarity index 100% rename from test/function/iife-strong-dependencies/C.js rename to test/function/samples/iife-strong-dependencies/C.js diff --git a/test/function/iife-strong-dependencies/D.js b/test/function/samples/iife-strong-dependencies/D.js similarity index 100% rename from test/function/iife-strong-dependencies/D.js rename to test/function/samples/iife-strong-dependencies/D.js diff --git a/test/function/iife-strong-dependencies/_config.js b/test/function/samples/iife-strong-dependencies/_config.js similarity index 100% rename from test/function/iife-strong-dependencies/_config.js rename to test/function/samples/iife-strong-dependencies/_config.js diff --git a/test/function/iife-strong-dependencies/main.js b/test/function/samples/iife-strong-dependencies/main.js similarity index 100% rename from test/function/iife-strong-dependencies/main.js rename to test/function/samples/iife-strong-dependencies/main.js diff --git a/test/function/import-as/_config.js b/test/function/samples/import-as/_config.js similarity index 100% rename from test/function/import-as/_config.js rename to test/function/samples/import-as/_config.js diff --git a/test/function/import-as/foo.js b/test/function/samples/import-as/foo.js similarity index 100% rename from test/function/import-as/foo.js rename to test/function/samples/import-as/foo.js diff --git a/test/function/import-as/main.js b/test/function/samples/import-as/main.js similarity index 100% rename from test/function/import-as/main.js rename to test/function/samples/import-as/main.js diff --git a/test/function/import-binding/_config.js b/test/function/samples/import-binding/_config.js similarity index 100% rename from test/function/import-binding/_config.js rename to test/function/samples/import-binding/_config.js diff --git a/test/function/import-binding/foo.js b/test/function/samples/import-binding/foo.js similarity index 100% rename from test/function/import-binding/foo.js rename to test/function/samples/import-binding/foo.js diff --git a/test/function/import-binding/main.js b/test/function/samples/import-binding/main.js similarity index 100% rename from test/function/import-binding/main.js rename to test/function/samples/import-binding/main.js diff --git a/test/function/import-chain-as/_config.js b/test/function/samples/import-chain-as/_config.js similarity index 100% rename from test/function/import-chain-as/_config.js rename to test/function/samples/import-chain-as/_config.js diff --git a/test/function/import-chain-as/first.js b/test/function/samples/import-chain-as/first.js similarity index 100% rename from test/function/import-chain-as/first.js rename to test/function/samples/import-chain-as/first.js diff --git a/test/function/import-chain-as/main.js b/test/function/samples/import-chain-as/main.js similarity index 100% rename from test/function/import-chain-as/main.js rename to test/function/samples/import-chain-as/main.js diff --git a/test/function/import-chain-as/second.js b/test/function/samples/import-chain-as/second.js similarity index 100% rename from test/function/import-chain-as/second.js rename to test/function/samples/import-chain-as/second.js diff --git a/test/function/import-chain/_config.js b/test/function/samples/import-chain/_config.js similarity index 100% rename from test/function/import-chain/_config.js rename to test/function/samples/import-chain/_config.js diff --git a/test/function/import-chain/first.js b/test/function/samples/import-chain/first.js similarity index 100% rename from test/function/import-chain/first.js rename to test/function/samples/import-chain/first.js diff --git a/test/function/import-chain/main.js b/test/function/samples/import-chain/main.js similarity index 100% rename from test/function/import-chain/main.js rename to test/function/samples/import-chain/main.js diff --git a/test/function/import-chain/second.js b/test/function/samples/import-chain/second.js similarity index 100% rename from test/function/import-chain/second.js rename to test/function/samples/import-chain/second.js diff --git a/test/function/import-default-and-named-function/_config.js b/test/function/samples/import-default-and-named-function/_config.js similarity index 100% rename from test/function/import-default-and-named-function/_config.js rename to test/function/samples/import-default-and-named-function/_config.js diff --git a/test/function/import-default-and-named-function/foo.js b/test/function/samples/import-default-and-named-function/foo.js similarity index 100% rename from test/function/import-default-and-named-function/foo.js rename to test/function/samples/import-default-and-named-function/foo.js diff --git a/test/function/import-default-and-named-function/main.js b/test/function/samples/import-default-and-named-function/main.js similarity index 100% rename from test/function/import-default-and-named-function/main.js rename to test/function/samples/import-default-and-named-function/main.js diff --git a/test/function/import-default-as-named/_config.js b/test/function/samples/import-default-as-named/_config.js similarity index 100% rename from test/function/import-default-as-named/_config.js rename to test/function/samples/import-default-as-named/_config.js diff --git a/test/function/import-default-as-named/foo.js b/test/function/samples/import-default-as-named/foo.js similarity index 100% rename from test/function/import-default-as-named/foo.js rename to test/function/samples/import-default-as-named/foo.js diff --git a/test/function/import-default-as-named/main.js b/test/function/samples/import-default-as-named/main.js similarity index 100% rename from test/function/import-default-as-named/main.js rename to test/function/samples/import-default-as-named/main.js diff --git a/test/function/import-default-as-other/_config.js b/test/function/samples/import-default-as-other/_config.js similarity index 100% rename from test/function/import-default-as-other/_config.js rename to test/function/samples/import-default-as-other/_config.js diff --git a/test/function/import-default-as-other/foo.js b/test/function/samples/import-default-as-other/foo.js similarity index 100% rename from test/function/import-default-as-other/foo.js rename to test/function/samples/import-default-as-other/foo.js diff --git a/test/function/import-default-as-other/main.js b/test/function/samples/import-default-as-other/main.js similarity index 100% rename from test/function/import-default-as-other/main.js rename to test/function/samples/import-default-as-other/main.js diff --git a/test/function/import-default-class/_config.js b/test/function/samples/import-default-class/_config.js similarity index 100% rename from test/function/import-default-class/_config.js rename to test/function/samples/import-default-class/_config.js diff --git a/test/function/import-default-class/main.js b/test/function/samples/import-default-class/main.js similarity index 100% rename from test/function/import-default-class/main.js rename to test/function/samples/import-default-class/main.js diff --git a/test/function/import-default-class/point.js b/test/function/samples/import-default-class/point.js similarity index 100% rename from test/function/import-default-class/point.js rename to test/function/samples/import-default-class/point.js diff --git a/test/function/import-default-expression/_config.js b/test/function/samples/import-default-expression/_config.js similarity index 100% rename from test/function/import-default-expression/_config.js rename to test/function/samples/import-default-expression/_config.js diff --git a/test/function/import-default-expression/foo.js b/test/function/samples/import-default-expression/foo.js similarity index 100% rename from test/function/import-default-expression/foo.js rename to test/function/samples/import-default-expression/foo.js diff --git a/test/function/import-default-expression/main.js b/test/function/samples/import-default-expression/main.js similarity index 100% rename from test/function/import-default-expression/main.js rename to test/function/samples/import-default-expression/main.js diff --git a/test/function/import-default-from-external/_config.js b/test/function/samples/import-default-from-external/_config.js similarity index 100% rename from test/function/import-default-from-external/_config.js rename to test/function/samples/import-default-from-external/_config.js diff --git a/test/function/import-default-from-external/main.js b/test/function/samples/import-default-from-external/main.js similarity index 100% rename from test/function/import-default-from-external/main.js rename to test/function/samples/import-default-from-external/main.js diff --git a/test/function/import-default-function/_config.js b/test/function/samples/import-default-function/_config.js similarity index 100% rename from test/function/import-default-function/_config.js rename to test/function/samples/import-default-function/_config.js diff --git a/test/function/import-default-function/foo.js b/test/function/samples/import-default-function/foo.js similarity index 100% rename from test/function/import-default-function/foo.js rename to test/function/samples/import-default-function/foo.js diff --git a/test/function/import-default-function/main.js b/test/function/samples/import-default-function/main.js similarity index 100% rename from test/function/import-default-function/main.js rename to test/function/samples/import-default-function/main.js diff --git a/test/function/import-dependency-in-other-module/_config.js b/test/function/samples/import-dependency-in-other-module/_config.js similarity index 100% rename from test/function/import-dependency-in-other-module/_config.js rename to test/function/samples/import-dependency-in-other-module/_config.js diff --git a/test/function/import-dependency-in-other-module/bar.js b/test/function/samples/import-dependency-in-other-module/bar.js similarity index 100% rename from test/function/import-dependency-in-other-module/bar.js rename to test/function/samples/import-dependency-in-other-module/bar.js diff --git a/test/function/import-dependency-in-other-module/foo.js b/test/function/samples/import-dependency-in-other-module/foo.js similarity index 100% rename from test/function/import-dependency-in-other-module/foo.js rename to test/function/samples/import-dependency-in-other-module/foo.js diff --git a/test/function/import-dependency-in-other-module/main.js b/test/function/samples/import-dependency-in-other-module/main.js similarity index 100% rename from test/function/import-dependency-in-other-module/main.js rename to test/function/samples/import-dependency-in-other-module/main.js diff --git a/test/function/import-dependency-in-same-module/_config.js b/test/function/samples/import-dependency-in-same-module/_config.js similarity index 100% rename from test/function/import-dependency-in-same-module/_config.js rename to test/function/samples/import-dependency-in-same-module/_config.js diff --git a/test/function/import-dependency-in-same-module/foo.js b/test/function/samples/import-dependency-in-same-module/foo.js similarity index 100% rename from test/function/import-dependency-in-same-module/foo.js rename to test/function/samples/import-dependency-in-same-module/foo.js diff --git a/test/function/import-dependency-in-same-module/main.js b/test/function/samples/import-dependency-in-same-module/main.js similarity index 100% rename from test/function/import-dependency-in-same-module/main.js rename to test/function/samples/import-dependency-in-same-module/main.js diff --git a/test/function/import-empty-from-external/_config.js b/test/function/samples/import-empty-from-external/_config.js similarity index 100% rename from test/function/import-empty-from-external/_config.js rename to test/function/samples/import-empty-from-external/_config.js diff --git a/test/function/import-empty-from-external/foo.js b/test/function/samples/import-empty-from-external/foo.js similarity index 100% rename from test/function/import-empty-from-external/foo.js rename to test/function/samples/import-empty-from-external/foo.js diff --git a/test/function/import-empty-from-external/main.js b/test/function/samples/import-empty-from-external/main.js similarity index 100% rename from test/function/import-empty-from-external/main.js rename to test/function/samples/import-empty-from-external/main.js diff --git a/test/function/import-named-class/_config.js b/test/function/samples/import-named-class/_config.js similarity index 100% rename from test/function/import-named-class/_config.js rename to test/function/samples/import-named-class/_config.js diff --git a/test/function/import-named-class/foo.js b/test/function/samples/import-named-class/foo.js similarity index 100% rename from test/function/import-named-class/foo.js rename to test/function/samples/import-named-class/foo.js diff --git a/test/function/import-named-class/main.js b/test/function/samples/import-named-class/main.js similarity index 100% rename from test/function/import-named-class/main.js rename to test/function/samples/import-named-class/main.js diff --git a/test/function/import-named-from-external/_config.js b/test/function/samples/import-named-from-external/_config.js similarity index 100% rename from test/function/import-named-from-external/_config.js rename to test/function/samples/import-named-from-external/_config.js diff --git a/test/function/import-named-from-external/main.js b/test/function/samples/import-named-from-external/main.js similarity index 100% rename from test/function/import-named-from-external/main.js rename to test/function/samples/import-named-from-external/main.js diff --git a/test/function/import-named-function-as-other/_config.js b/test/function/samples/import-named-function-as-other/_config.js similarity index 100% rename from test/function/import-named-function-as-other/_config.js rename to test/function/samples/import-named-function-as-other/_config.js diff --git a/test/function/import-named-function-as-other/foo.js b/test/function/samples/import-named-function-as-other/foo.js similarity index 100% rename from test/function/import-named-function-as-other/foo.js rename to test/function/samples/import-named-function-as-other/foo.js diff --git a/test/function/import-named-function-as-other/main.js b/test/function/samples/import-named-function-as-other/main.js similarity index 100% rename from test/function/import-named-function-as-other/main.js rename to test/function/samples/import-named-function-as-other/main.js diff --git a/test/function/import-named-function/_config.js b/test/function/samples/import-named-function/_config.js similarity index 100% rename from test/function/import-named-function/_config.js rename to test/function/samples/import-named-function/_config.js diff --git a/test/function/import-named-function/foo.js b/test/function/samples/import-named-function/foo.js similarity index 100% rename from test/function/import-named-function/foo.js rename to test/function/samples/import-named-function/foo.js diff --git a/test/function/import-named-function/main.js b/test/function/samples/import-named-function/main.js similarity index 100% rename from test/function/import-named-function/main.js rename to test/function/samples/import-named-function/main.js diff --git a/test/function/import-nameless-class-expression/_config.js b/test/function/samples/import-nameless-class-expression/_config.js similarity index 100% rename from test/function/import-nameless-class-expression/_config.js rename to test/function/samples/import-nameless-class-expression/_config.js diff --git a/test/function/import-nameless-class-expression/foo.js b/test/function/samples/import-nameless-class-expression/foo.js similarity index 100% rename from test/function/import-nameless-class-expression/foo.js rename to test/function/samples/import-nameless-class-expression/foo.js diff --git a/test/function/import-nameless-class-expression/main.js b/test/function/samples/import-nameless-class-expression/main.js similarity index 100% rename from test/function/import-nameless-class-expression/main.js rename to test/function/samples/import-nameless-class-expression/main.js diff --git a/test/function/import-namespace-from-external-module-renamed/_config.js b/test/function/samples/import-namespace-from-external-module-renamed/_config.js similarity index 100% rename from test/function/import-namespace-from-external-module-renamed/_config.js rename to test/function/samples/import-namespace-from-external-module-renamed/_config.js diff --git a/test/function/import-namespace-from-external-module-renamed/main.js b/test/function/samples/import-namespace-from-external-module-renamed/main.js similarity index 100% rename from test/function/import-namespace-from-external-module-renamed/main.js rename to test/function/samples/import-namespace-from-external-module-renamed/main.js diff --git a/test/function/import-namespace-from-external-module/_config.js b/test/function/samples/import-namespace-from-external-module/_config.js similarity index 100% rename from test/function/import-namespace-from-external-module/_config.js rename to test/function/samples/import-namespace-from-external-module/_config.js diff --git a/test/function/import-namespace-from-external-module/main.js b/test/function/samples/import-namespace-from-external-module/main.js similarity index 100% rename from test/function/import-namespace-from-external-module/main.js rename to test/function/samples/import-namespace-from-external-module/main.js diff --git a/test/function/import-namespace-from-internal-module-renamed/_config.js b/test/function/samples/import-namespace-from-internal-module-renamed/_config.js similarity index 100% rename from test/function/import-namespace-from-internal-module-renamed/_config.js rename to test/function/samples/import-namespace-from-internal-module-renamed/_config.js diff --git a/test/function/import-namespace-from-internal-module-renamed/foo.js b/test/function/samples/import-namespace-from-internal-module-renamed/foo.js similarity index 100% rename from test/function/import-namespace-from-internal-module-renamed/foo.js rename to test/function/samples/import-namespace-from-internal-module-renamed/foo.js diff --git a/test/function/import-namespace-from-internal-module-renamed/main.js b/test/function/samples/import-namespace-from-internal-module-renamed/main.js similarity index 100% rename from test/function/import-namespace-from-internal-module-renamed/main.js rename to test/function/samples/import-namespace-from-internal-module-renamed/main.js diff --git a/test/function/import-namespace-from-internal-module/_config.js b/test/function/samples/import-namespace-from-internal-module/_config.js similarity index 100% rename from test/function/import-namespace-from-internal-module/_config.js rename to test/function/samples/import-namespace-from-internal-module/_config.js diff --git a/test/function/import-namespace-from-internal-module/foo.js b/test/function/samples/import-namespace-from-internal-module/foo.js similarity index 100% rename from test/function/import-namespace-from-internal-module/foo.js rename to test/function/samples/import-namespace-from-internal-module/foo.js diff --git a/test/function/import-namespace-from-internal-module/main.js b/test/function/samples/import-namespace-from-internal-module/main.js similarity index 100% rename from test/function/import-namespace-from-internal-module/main.js rename to test/function/samples/import-namespace-from-internal-module/main.js diff --git a/test/function/import-not-at-top-level-fails/_config.js b/test/function/samples/import-not-at-top-level-fails/_config.js similarity index 100% rename from test/function/import-not-at-top-level-fails/_config.js rename to test/function/samples/import-not-at-top-level-fails/_config.js diff --git a/test/function/import-not-at-top-level-fails/main.js b/test/function/samples/import-not-at-top-level-fails/main.js similarity index 100% rename from test/function/import-not-at-top-level-fails/main.js rename to test/function/samples/import-not-at-top-level-fails/main.js diff --git a/test/function/import-of-unexported-fails/_config.js b/test/function/samples/import-of-unexported-fails/_config.js similarity index 100% rename from test/function/import-of-unexported-fails/_config.js rename to test/function/samples/import-of-unexported-fails/_config.js diff --git a/test/function/import-of-unexported-fails/empty.js b/test/function/samples/import-of-unexported-fails/empty.js similarity index 100% rename from test/function/import-of-unexported-fails/empty.js rename to test/function/samples/import-of-unexported-fails/empty.js diff --git a/test/function/import-of-unexported-fails/main.js b/test/function/samples/import-of-unexported-fails/main.js similarity index 100% rename from test/function/import-of-unexported-fails/main.js rename to test/function/samples/import-of-unexported-fails/main.js diff --git a/test/function/import-var-declaration/_config.js b/test/function/samples/import-var-declaration/_config.js similarity index 100% rename from test/function/import-var-declaration/_config.js rename to test/function/samples/import-var-declaration/_config.js diff --git a/test/function/import-var-declaration/foo.js b/test/function/samples/import-var-declaration/foo.js similarity index 100% rename from test/function/import-var-declaration/foo.js rename to test/function/samples/import-var-declaration/foo.js diff --git a/test/function/import-var-declaration/main.js b/test/function/samples/import-var-declaration/main.js similarity index 100% rename from test/function/import-var-declaration/main.js rename to test/function/samples/import-var-declaration/main.js diff --git a/test/function/imports-are-deconflicted-b/_config.js b/test/function/samples/imports-are-deconflicted-b/_config.js similarity index 100% rename from test/function/imports-are-deconflicted-b/_config.js rename to test/function/samples/imports-are-deconflicted-b/_config.js diff --git a/test/function/imports-are-deconflicted-b/bar.js b/test/function/samples/imports-are-deconflicted-b/bar.js similarity index 100% rename from test/function/imports-are-deconflicted-b/bar.js rename to test/function/samples/imports-are-deconflicted-b/bar.js diff --git a/test/function/imports-are-deconflicted-b/foo.js b/test/function/samples/imports-are-deconflicted-b/foo.js similarity index 100% rename from test/function/imports-are-deconflicted-b/foo.js rename to test/function/samples/imports-are-deconflicted-b/foo.js diff --git a/test/function/imports-are-deconflicted-b/main.js b/test/function/samples/imports-are-deconflicted-b/main.js similarity index 100% rename from test/function/imports-are-deconflicted-b/main.js rename to test/function/samples/imports-are-deconflicted-b/main.js diff --git a/test/function/imports-are-deconflicted-c/_config.js b/test/function/samples/imports-are-deconflicted-c/_config.js similarity index 100% rename from test/function/imports-are-deconflicted-c/_config.js rename to test/function/samples/imports-are-deconflicted-c/_config.js diff --git a/test/function/imports-are-deconflicted-c/bar.js b/test/function/samples/imports-are-deconflicted-c/bar.js similarity index 100% rename from test/function/imports-are-deconflicted-c/bar.js rename to test/function/samples/imports-are-deconflicted-c/bar.js diff --git a/test/function/imports-are-deconflicted-c/foo.js b/test/function/samples/imports-are-deconflicted-c/foo.js similarity index 100% rename from test/function/imports-are-deconflicted-c/foo.js rename to test/function/samples/imports-are-deconflicted-c/foo.js diff --git a/test/function/imports-are-deconflicted-c/main.js b/test/function/samples/imports-are-deconflicted-c/main.js similarity index 100% rename from test/function/imports-are-deconflicted-c/main.js rename to test/function/samples/imports-are-deconflicted-c/main.js diff --git a/test/function/imports-are-deconflicted/_config.js b/test/function/samples/imports-are-deconflicted/_config.js similarity index 100% rename from test/function/imports-are-deconflicted/_config.js rename to test/function/samples/imports-are-deconflicted/_config.js diff --git a/test/function/imports-are-deconflicted/bar.js b/test/function/samples/imports-are-deconflicted/bar.js similarity index 100% rename from test/function/imports-are-deconflicted/bar.js rename to test/function/samples/imports-are-deconflicted/bar.js diff --git a/test/function/imports-are-deconflicted/foo.js b/test/function/samples/imports-are-deconflicted/foo.js similarity index 100% rename from test/function/imports-are-deconflicted/foo.js rename to test/function/samples/imports-are-deconflicted/foo.js diff --git a/test/function/imports-are-deconflicted/main.js b/test/function/samples/imports-are-deconflicted/main.js similarity index 100% rename from test/function/imports-are-deconflicted/main.js rename to test/function/samples/imports-are-deconflicted/main.js diff --git a/test/function/includes-internally-used-default-export/_config.js b/test/function/samples/includes-internally-used-default-export/_config.js similarity index 100% rename from test/function/includes-internally-used-default-export/_config.js rename to test/function/samples/includes-internally-used-default-export/_config.js diff --git a/test/function/includes-internally-used-default-export/main.js b/test/function/samples/includes-internally-used-default-export/main.js similarity index 100% rename from test/function/includes-internally-used-default-export/main.js rename to test/function/samples/includes-internally-used-default-export/main.js diff --git a/test/function/includes-internally-used-default-export/module.js b/test/function/samples/includes-internally-used-default-export/module.js similarity index 100% rename from test/function/includes-internally-used-default-export/module.js rename to test/function/samples/includes-internally-used-default-export/module.js diff --git a/test/function/includes-reassignments/_config.js b/test/function/samples/includes-reassignments/_config.js similarity index 100% rename from test/function/includes-reassignments/_config.js rename to test/function/samples/includes-reassignments/_config.js diff --git a/test/function/includes-reassignments/foo.js b/test/function/samples/includes-reassignments/foo.js similarity index 100% rename from test/function/includes-reassignments/foo.js rename to test/function/samples/includes-reassignments/foo.js diff --git a/test/function/includes-reassignments/main.js b/test/function/samples/includes-reassignments/main.js similarity index 100% rename from test/function/includes-reassignments/main.js rename to test/function/samples/includes-reassignments/main.js diff --git a/test/function/includes-superclass/_config.js b/test/function/samples/includes-superclass/_config.js similarity index 100% rename from test/function/includes-superclass/_config.js rename to test/function/samples/includes-superclass/_config.js diff --git a/test/function/includes-superclass/base.js b/test/function/samples/includes-superclass/base.js similarity index 100% rename from test/function/includes-superclass/base.js rename to test/function/samples/includes-superclass/base.js diff --git a/test/function/includes-superclass/main.js b/test/function/samples/includes-superclass/main.js similarity index 100% rename from test/function/includes-superclass/main.js rename to test/function/samples/includes-superclass/main.js diff --git a/test/function/includes-superclass/thing.js b/test/function/samples/includes-superclass/thing.js similarity index 100% rename from test/function/includes-superclass/thing.js rename to test/function/samples/includes-superclass/thing.js diff --git a/test/function/legal-import-modification/_config.js b/test/function/samples/legal-import-modification/_config.js similarity index 100% rename from test/function/legal-import-modification/_config.js rename to test/function/samples/legal-import-modification/_config.js diff --git a/test/function/legal-import-modification/foo.js b/test/function/samples/legal-import-modification/foo.js similarity index 100% rename from test/function/legal-import-modification/foo.js rename to test/function/samples/legal-import-modification/foo.js diff --git a/test/function/legal-import-modification/main.js b/test/function/samples/legal-import-modification/main.js similarity index 100% rename from test/function/legal-import-modification/main.js rename to test/function/samples/legal-import-modification/main.js diff --git a/test/function/legal-suggested-names/_config.js b/test/function/samples/legal-suggested-names/_config.js similarity index 100% rename from test/function/legal-suggested-names/_config.js rename to test/function/samples/legal-suggested-names/_config.js diff --git a/test/function/legal-suggested-names/bar.js b/test/function/samples/legal-suggested-names/bar.js similarity index 100% rename from test/function/legal-suggested-names/bar.js rename to test/function/samples/legal-suggested-names/bar.js diff --git a/test/function/legal-suggested-names/foo.js b/test/function/samples/legal-suggested-names/foo.js similarity index 100% rename from test/function/legal-suggested-names/foo.js rename to test/function/samples/legal-suggested-names/foo.js diff --git a/test/function/legal-suggested-names/helpers.js b/test/function/samples/legal-suggested-names/helpers.js similarity index 100% rename from test/function/legal-suggested-names/helpers.js rename to test/function/samples/legal-suggested-names/helpers.js diff --git a/test/function/legal-suggested-names/main.js b/test/function/samples/legal-suggested-names/main.js similarity index 100% rename from test/function/legal-suggested-names/main.js rename to test/function/samples/legal-suggested-names/main.js diff --git a/test/function/load-returns-string-or-null/_config.js b/test/function/samples/load-returns-string-or-null/_config.js similarity index 100% rename from test/function/load-returns-string-or-null/_config.js rename to test/function/samples/load-returns-string-or-null/_config.js diff --git a/test/function/load-returns-string-or-null/main.js b/test/function/samples/load-returns-string-or-null/main.js similarity index 100% rename from test/function/load-returns-string-or-null/main.js rename to test/function/samples/load-returns-string-or-null/main.js diff --git a/test/function/mark-namespace-members/_config.js b/test/function/samples/mark-namespace-members/_config.js similarity index 100% rename from test/function/mark-namespace-members/_config.js rename to test/function/samples/mark-namespace-members/_config.js diff --git a/test/function/mark-namespace-members/bar.js b/test/function/samples/mark-namespace-members/bar.js similarity index 100% rename from test/function/mark-namespace-members/bar.js rename to test/function/samples/mark-namespace-members/bar.js diff --git a/test/function/mark-namespace-members/foo.js b/test/function/samples/mark-namespace-members/foo.js similarity index 100% rename from test/function/mark-namespace-members/foo.js rename to test/function/samples/mark-namespace-members/foo.js diff --git a/test/function/mark-namespace-members/main.js b/test/function/samples/mark-namespace-members/main.js similarity index 100% rename from test/function/mark-namespace-members/main.js rename to test/function/samples/mark-namespace-members/main.js diff --git a/test/function/member-expression-assignment-in-function/_config.js b/test/function/samples/member-expression-assignment-in-function/_config.js similarity index 100% rename from test/function/member-expression-assignment-in-function/_config.js rename to test/function/samples/member-expression-assignment-in-function/_config.js diff --git a/test/function/member-expression-assignment-in-function/main.js b/test/function/samples/member-expression-assignment-in-function/main.js similarity index 100% rename from test/function/member-expression-assignment-in-function/main.js rename to test/function/samples/member-expression-assignment-in-function/main.js diff --git a/test/function/method-call-mutates-this/_config.js b/test/function/samples/method-call-mutates-this/_config.js similarity index 100% rename from test/function/method-call-mutates-this/_config.js rename to test/function/samples/method-call-mutates-this/_config.js diff --git a/test/function/method-call-mutates-this/foo.js b/test/function/samples/method-call-mutates-this/foo.js similarity index 100% rename from test/function/method-call-mutates-this/foo.js rename to test/function/samples/method-call-mutates-this/foo.js diff --git a/test/function/method-call-mutates-this/main.js b/test/function/samples/method-call-mutates-this/main.js similarity index 100% rename from test/function/method-call-mutates-this/main.js rename to test/function/samples/method-call-mutates-this/main.js diff --git a/test/function/method-call-side-effects/_config.js b/test/function/samples/method-call-side-effects/_config.js similarity index 100% rename from test/function/method-call-side-effects/_config.js rename to test/function/samples/method-call-side-effects/_config.js diff --git a/test/function/method-call-side-effects/main.js b/test/function/samples/method-call-side-effects/main.js similarity index 100% rename from test/function/method-call-side-effects/main.js rename to test/function/samples/method-call-side-effects/main.js diff --git a/test/function/method-call-side-effects/object.js b/test/function/samples/method-call-side-effects/object.js similarity index 100% rename from test/function/method-call-side-effects/object.js rename to test/function/samples/method-call-side-effects/object.js diff --git a/test/function/method-call-side-effects/thing.js b/test/function/samples/method-call-side-effects/thing.js similarity index 100% rename from test/function/method-call-side-effects/thing.js rename to test/function/samples/method-call-side-effects/thing.js diff --git a/test/function/modify-assumed-global/_config.js b/test/function/samples/modify-assumed-global/_config.js similarity index 100% rename from test/function/modify-assumed-global/_config.js rename to test/function/samples/modify-assumed-global/_config.js diff --git a/test/function/modify-assumed-global/main.js b/test/function/samples/modify-assumed-global/main.js similarity index 100% rename from test/function/modify-assumed-global/main.js rename to test/function/samples/modify-assumed-global/main.js diff --git a/test/function/modify-assumed-global/math.js b/test/function/samples/modify-assumed-global/math.js similarity index 100% rename from test/function/modify-assumed-global/math.js rename to test/function/samples/modify-assumed-global/math.js diff --git a/test/function/module-sort-order/_config.js b/test/function/samples/module-sort-order/_config.js similarity index 100% rename from test/function/module-sort-order/_config.js rename to test/function/samples/module-sort-order/_config.js diff --git a/test/function/module-sort-order/a.js b/test/function/samples/module-sort-order/a.js similarity index 100% rename from test/function/module-sort-order/a.js rename to test/function/samples/module-sort-order/a.js diff --git a/test/function/module-sort-order/b.js b/test/function/samples/module-sort-order/b.js similarity index 100% rename from test/function/module-sort-order/b.js rename to test/function/samples/module-sort-order/b.js diff --git a/test/function/module-sort-order/c.js b/test/function/samples/module-sort-order/c.js similarity index 100% rename from test/function/module-sort-order/c.js rename to test/function/samples/module-sort-order/c.js diff --git a/test/function/module-sort-order/main.js b/test/function/samples/module-sort-order/main.js similarity index 100% rename from test/function/module-sort-order/main.js rename to test/function/samples/module-sort-order/main.js diff --git a/test/function/module-sort-order/z.js b/test/function/samples/module-sort-order/z.js similarity index 100% rename from test/function/module-sort-order/z.js rename to test/function/samples/module-sort-order/z.js diff --git a/test/function/module-tree/_config.js b/test/function/samples/module-tree/_config.js similarity index 100% rename from test/function/module-tree/_config.js rename to test/function/samples/module-tree/_config.js diff --git a/test/function/module-tree/bar.js b/test/function/samples/module-tree/bar.js similarity index 100% rename from test/function/module-tree/bar.js rename to test/function/samples/module-tree/bar.js diff --git a/test/function/module-tree/foo.js b/test/function/samples/module-tree/foo.js similarity index 100% rename from test/function/module-tree/foo.js rename to test/function/samples/module-tree/foo.js diff --git a/test/function/module-tree/main.js b/test/function/samples/module-tree/main.js similarity index 100% rename from test/function/module-tree/main.js rename to test/function/samples/module-tree/main.js diff --git a/test/function/module-tree/nested/baz.js b/test/function/samples/module-tree/nested/baz.js similarity index 100% rename from test/function/module-tree/nested/baz.js rename to test/function/samples/module-tree/nested/baz.js diff --git a/test/function/module-tree/nested/qux.js b/test/function/samples/module-tree/nested/qux.js similarity index 100% rename from test/function/module-tree/nested/qux.js rename to test/function/samples/module-tree/nested/qux.js diff --git a/test/function/named-external-method-in-prototype/_config.js b/test/function/samples/named-external-method-in-prototype/_config.js similarity index 100% rename from test/function/named-external-method-in-prototype/_config.js rename to test/function/samples/named-external-method-in-prototype/_config.js diff --git a/test/function/named-external-method-in-prototype/bar.js b/test/function/samples/named-external-method-in-prototype/bar.js similarity index 100% rename from test/function/named-external-method-in-prototype/bar.js rename to test/function/samples/named-external-method-in-prototype/bar.js diff --git a/test/function/named-external-method-in-prototype/foo.js b/test/function/samples/named-external-method-in-prototype/foo.js similarity index 100% rename from test/function/named-external-method-in-prototype/foo.js rename to test/function/samples/named-external-method-in-prototype/foo.js diff --git a/test/function/named-external-method-in-prototype/main.js b/test/function/samples/named-external-method-in-prototype/main.js similarity index 100% rename from test/function/named-external-method-in-prototype/main.js rename to test/function/samples/named-external-method-in-prototype/main.js diff --git a/test/function/namespace-missing-export/_config.js b/test/function/samples/namespace-missing-export/_config.js similarity index 100% rename from test/function/namespace-missing-export/_config.js rename to test/function/samples/namespace-missing-export/_config.js diff --git a/test/function/namespace-missing-export/empty.js b/test/function/samples/namespace-missing-export/empty.js similarity index 100% rename from test/function/namespace-missing-export/empty.js rename to test/function/samples/namespace-missing-export/empty.js diff --git a/test/function/namespace-missing-export/main.js b/test/function/samples/namespace-missing-export/main.js similarity index 100% rename from test/function/namespace-missing-export/main.js rename to test/function/samples/namespace-missing-export/main.js diff --git a/test/function/namespace-reassign-import-fails/_config.js b/test/function/samples/namespace-reassign-import-fails/_config.js similarity index 100% rename from test/function/namespace-reassign-import-fails/_config.js rename to test/function/samples/namespace-reassign-import-fails/_config.js diff --git a/test/function/namespace-reassign-import-fails/foo.js b/test/function/samples/namespace-reassign-import-fails/foo.js similarity index 100% rename from test/function/namespace-reassign-import-fails/foo.js rename to test/function/samples/namespace-reassign-import-fails/foo.js diff --git a/test/function/namespace-reassign-import-fails/main.js b/test/function/samples/namespace-reassign-import-fails/main.js similarity index 100% rename from test/function/namespace-reassign-import-fails/main.js rename to test/function/samples/namespace-reassign-import-fails/main.js diff --git a/test/function/namespace-update-import-fails/_config.js b/test/function/samples/namespace-update-import-fails/_config.js similarity index 100% rename from test/function/namespace-update-import-fails/_config.js rename to test/function/samples/namespace-update-import-fails/_config.js diff --git a/test/function/namespace-update-import-fails/foo.js b/test/function/samples/namespace-update-import-fails/foo.js similarity index 100% rename from test/function/namespace-update-import-fails/foo.js rename to test/function/samples/namespace-update-import-fails/foo.js diff --git a/test/function/namespace-update-import-fails/main.js b/test/function/samples/namespace-update-import-fails/main.js similarity index 100% rename from test/function/namespace-update-import-fails/main.js rename to test/function/samples/namespace-update-import-fails/main.js diff --git a/test/function/namespaces-are-frozen/_config.js b/test/function/samples/namespaces-are-frozen/_config.js similarity index 100% rename from test/function/namespaces-are-frozen/_config.js rename to test/function/samples/namespaces-are-frozen/_config.js diff --git a/test/function/namespaces-are-frozen/main.js b/test/function/samples/namespaces-are-frozen/main.js similarity index 100% rename from test/function/namespaces-are-frozen/main.js rename to test/function/samples/namespaces-are-frozen/main.js diff --git a/test/function/namespaces-are-frozen/mod.js b/test/function/samples/namespaces-are-frozen/mod.js similarity index 100% rename from test/function/namespaces-are-frozen/mod.js rename to test/function/samples/namespaces-are-frozen/mod.js diff --git a/test/function/namespacing-collisions-2/Material.js b/test/function/samples/namespacing-collisions-2/Material.js similarity index 100% rename from test/function/namespacing-collisions-2/Material.js rename to test/function/samples/namespacing-collisions-2/Material.js diff --git a/test/function/namespacing-collisions-2/MaterialAgain.js b/test/function/samples/namespacing-collisions-2/MaterialAgain.js similarity index 100% rename from test/function/namespacing-collisions-2/MaterialAgain.js rename to test/function/samples/namespacing-collisions-2/MaterialAgain.js diff --git a/test/function/namespacing-collisions-2/Something.js b/test/function/samples/namespacing-collisions-2/Something.js similarity index 100% rename from test/function/namespacing-collisions-2/Something.js rename to test/function/samples/namespacing-collisions-2/Something.js diff --git a/test/function/namespacing-collisions-2/SomethingAgain.js b/test/function/samples/namespacing-collisions-2/SomethingAgain.js similarity index 100% rename from test/function/namespacing-collisions-2/SomethingAgain.js rename to test/function/samples/namespacing-collisions-2/SomethingAgain.js diff --git a/test/function/namespacing-collisions-2/_config.js b/test/function/samples/namespacing-collisions-2/_config.js similarity index 100% rename from test/function/namespacing-collisions-2/_config.js rename to test/function/samples/namespacing-collisions-2/_config.js diff --git a/test/function/namespacing-collisions-2/main.js b/test/function/samples/namespacing-collisions-2/main.js similarity index 100% rename from test/function/namespacing-collisions-2/main.js rename to test/function/samples/namespacing-collisions-2/main.js diff --git a/test/function/namespacing-collisions/Material.js b/test/function/samples/namespacing-collisions/Material.js similarity index 100% rename from test/function/namespacing-collisions/Material.js rename to test/function/samples/namespacing-collisions/Material.js diff --git a/test/function/namespacing-collisions/Something.js b/test/function/samples/namespacing-collisions/Something.js similarity index 100% rename from test/function/namespacing-collisions/Something.js rename to test/function/samples/namespacing-collisions/Something.js diff --git a/test/function/namespacing-collisions/_config.js b/test/function/samples/namespacing-collisions/_config.js similarity index 100% rename from test/function/namespacing-collisions/_config.js rename to test/function/samples/namespacing-collisions/_config.js diff --git a/test/function/namespacing-collisions/main.js b/test/function/samples/namespacing-collisions/main.js similarity index 100% rename from test/function/namespacing-collisions/main.js rename to test/function/samples/namespacing-collisions/main.js diff --git a/test/function/namespacing-in-sub-functions/_config.js b/test/function/samples/namespacing-in-sub-functions/_config.js similarity index 100% rename from test/function/namespacing-in-sub-functions/_config.js rename to test/function/samples/namespacing-in-sub-functions/_config.js diff --git a/test/function/namespacing-in-sub-functions/main.js b/test/function/samples/namespacing-in-sub-functions/main.js similarity index 100% rename from test/function/namespacing-in-sub-functions/main.js rename to test/function/samples/namespacing-in-sub-functions/main.js diff --git a/test/function/namespacing-in-sub-functions/problematicFunc.js b/test/function/samples/namespacing-in-sub-functions/problematicFunc.js similarity index 100% rename from test/function/namespacing-in-sub-functions/problematicFunc.js rename to test/function/samples/namespacing-in-sub-functions/problematicFunc.js diff --git a/test/function/newline-after-comment/_config.js b/test/function/samples/newline-after-comment/_config.js similarity index 100% rename from test/function/newline-after-comment/_config.js rename to test/function/samples/newline-after-comment/_config.js diff --git a/test/function/newline-after-comment/main.js b/test/function/samples/newline-after-comment/main.js similarity index 100% rename from test/function/newline-after-comment/main.js rename to test/function/samples/newline-after-comment/main.js diff --git a/test/function/no-imports/_config.js b/test/function/samples/no-imports/_config.js similarity index 100% rename from test/function/no-imports/_config.js rename to test/function/samples/no-imports/_config.js diff --git a/test/function/no-imports/main.js b/test/function/samples/no-imports/main.js similarity index 100% rename from test/function/no-imports/main.js rename to test/function/samples/no-imports/main.js diff --git a/test/function/no-relative-external/_config.js b/test/function/samples/no-relative-external/_config.js similarity index 100% rename from test/function/no-relative-external/_config.js rename to test/function/samples/no-relative-external/_config.js diff --git a/test/function/no-relative-external/main.js b/test/function/samples/no-relative-external/main.js similarity index 100% rename from test/function/no-relative-external/main.js rename to test/function/samples/no-relative-external/main.js diff --git a/test/function/non-extension-dot/_config.js b/test/function/samples/non-extension-dot/_config.js similarity index 100% rename from test/function/non-extension-dot/_config.js rename to test/function/samples/non-extension-dot/_config.js diff --git a/test/function/non-extension-dot/foo.bar.js b/test/function/samples/non-extension-dot/foo.bar.js similarity index 100% rename from test/function/non-extension-dot/foo.bar.js rename to test/function/samples/non-extension-dot/foo.bar.js diff --git a/test/function/non-extension-dot/main.js b/test/function/samples/non-extension-dot/main.js similarity index 100% rename from test/function/non-extension-dot/main.js rename to test/function/samples/non-extension-dot/main.js diff --git a/test/function/non-js-extensions/_config.js b/test/function/samples/non-js-extensions/_config.js similarity index 100% rename from test/function/non-js-extensions/_config.js rename to test/function/samples/non-js-extensions/_config.js diff --git a/test/function/non-js-extensions/info.json b/test/function/samples/non-js-extensions/info.json similarity index 100% rename from test/function/non-js-extensions/info.json rename to test/function/samples/non-js-extensions/info.json diff --git a/test/function/non-js-extensions/main.js b/test/function/samples/non-js-extensions/main.js similarity index 100% rename from test/function/non-js-extensions/main.js rename to test/function/samples/non-js-extensions/main.js diff --git a/test/function/object-destructuring-renaming/_config.js b/test/function/samples/object-destructuring-renaming/_config.js similarity index 100% rename from test/function/object-destructuring-renaming/_config.js rename to test/function/samples/object-destructuring-renaming/_config.js diff --git a/test/function/object-destructuring-renaming/main.js b/test/function/samples/object-destructuring-renaming/main.js similarity index 100% rename from test/function/object-destructuring-renaming/main.js rename to test/function/samples/object-destructuring-renaming/main.js diff --git a/test/function/object-destructuring-renaming/module.js b/test/function/samples/object-destructuring-renaming/module.js similarity index 100% rename from test/function/object-destructuring-renaming/module.js rename to test/function/samples/object-destructuring-renaming/module.js diff --git a/test/function/object-dynamic-properties/_config.js b/test/function/samples/object-dynamic-properties/_config.js similarity index 100% rename from test/function/object-dynamic-properties/_config.js rename to test/function/samples/object-dynamic-properties/_config.js diff --git a/test/function/object-dynamic-properties/main.js b/test/function/samples/object-dynamic-properties/main.js similarity index 100% rename from test/function/object-dynamic-properties/main.js rename to test/function/samples/object-dynamic-properties/main.js diff --git a/test/function/object-dynamic-properties/tags.js b/test/function/samples/object-dynamic-properties/tags.js similarity index 100% rename from test/function/object-dynamic-properties/tags.js rename to test/function/samples/object-dynamic-properties/tags.js diff --git a/test/function/object-properties/_config.js b/test/function/samples/object-properties/_config.js similarity index 100% rename from test/function/object-properties/_config.js rename to test/function/samples/object-properties/_config.js diff --git a/test/function/object-properties/main.js b/test/function/samples/object-properties/main.js similarity index 100% rename from test/function/object-properties/main.js rename to test/function/samples/object-properties/main.js diff --git a/test/function/object-properties/object.js b/test/function/samples/object-properties/object.js similarity index 100% rename from test/function/object-properties/object.js rename to test/function/samples/object-properties/object.js diff --git a/test/function/object-prototype-properties/_config.js b/test/function/samples/object-prototype-properties/_config.js similarity index 100% rename from test/function/object-prototype-properties/_config.js rename to test/function/samples/object-prototype-properties/_config.js diff --git a/test/function/object-prototype-properties/foo.js b/test/function/samples/object-prototype-properties/foo.js similarity index 100% rename from test/function/object-prototype-properties/foo.js rename to test/function/samples/object-prototype-properties/foo.js diff --git a/test/function/object-prototype-properties/main.js b/test/function/samples/object-prototype-properties/main.js similarity index 100% rename from test/function/object-prototype-properties/main.js rename to test/function/samples/object-prototype-properties/main.js diff --git a/test/function/parenthesised-default-export/_config.js b/test/function/samples/parenthesised-default-export/_config.js similarity index 100% rename from test/function/parenthesised-default-export/_config.js rename to test/function/samples/parenthesised-default-export/_config.js diff --git a/test/function/parenthesised-default-export/main.js b/test/function/samples/parenthesised-default-export/main.js similarity index 100% rename from test/function/parenthesised-default-export/main.js rename to test/function/samples/parenthesised-default-export/main.js diff --git a/test/function/pass-namespace-to-function/_config.js b/test/function/samples/pass-namespace-to-function/_config.js similarity index 100% rename from test/function/pass-namespace-to-function/_config.js rename to test/function/samples/pass-namespace-to-function/_config.js diff --git a/test/function/pass-namespace-to-function/bar.js b/test/function/samples/pass-namespace-to-function/bar.js similarity index 100% rename from test/function/pass-namespace-to-function/bar.js rename to test/function/samples/pass-namespace-to-function/bar.js diff --git a/test/function/pass-namespace-to-function/foo.js b/test/function/samples/pass-namespace-to-function/foo.js similarity index 100% rename from test/function/pass-namespace-to-function/foo.js rename to test/function/samples/pass-namespace-to-function/foo.js diff --git a/test/function/pass-namespace-to-function/main.js b/test/function/samples/pass-namespace-to-function/main.js similarity index 100% rename from test/function/pass-namespace-to-function/main.js rename to test/function/samples/pass-namespace-to-function/main.js diff --git a/test/function/paths-are-case-sensitive/Foo.js b/test/function/samples/paths-are-case-sensitive/Foo.js similarity index 100% rename from test/function/paths-are-case-sensitive/Foo.js rename to test/function/samples/paths-are-case-sensitive/Foo.js diff --git a/test/function/paths-are-case-sensitive/_config.js b/test/function/samples/paths-are-case-sensitive/_config.js similarity index 100% rename from test/function/paths-are-case-sensitive/_config.js rename to test/function/samples/paths-are-case-sensitive/_config.js diff --git a/test/function/paths-are-case-sensitive/main.js b/test/function/samples/paths-are-case-sensitive/main.js similarity index 100% rename from test/function/paths-are-case-sensitive/main.js rename to test/function/samples/paths-are-case-sensitive/main.js diff --git a/test/function/plugin-error-loc-instead-pos/_config.js b/test/function/samples/plugin-error-loc-instead-pos/_config.js similarity index 100% rename from test/function/plugin-error-loc-instead-pos/_config.js rename to test/function/samples/plugin-error-loc-instead-pos/_config.js diff --git a/test/function/plugin-error-loc-instead-pos/main.js b/test/function/samples/plugin-error-loc-instead-pos/main.js similarity index 100% rename from test/function/plugin-error-loc-instead-pos/main.js rename to test/function/samples/plugin-error-loc-instead-pos/main.js diff --git a/test/function/plugin-error-only-first-transform-bundle/_config.js b/test/function/samples/plugin-error-only-first-transform-bundle/_config.js similarity index 100% rename from test/function/plugin-error-only-first-transform-bundle/_config.js rename to test/function/samples/plugin-error-only-first-transform-bundle/_config.js diff --git a/test/function/plugin-error-only-first-transform-bundle/main.js b/test/function/samples/plugin-error-only-first-transform-bundle/main.js similarity index 100% rename from test/function/plugin-error-only-first-transform-bundle/main.js rename to test/function/samples/plugin-error-only-first-transform-bundle/main.js diff --git a/test/function/plugin-error-only-first-transform/_config.js b/test/function/samples/plugin-error-only-first-transform/_config.js similarity index 100% rename from test/function/plugin-error-only-first-transform/_config.js rename to test/function/samples/plugin-error-only-first-transform/_config.js diff --git a/test/function/plugin-error-only-first-transform/main.js b/test/function/samples/plugin-error-only-first-transform/main.js similarity index 100% rename from test/function/plugin-error-only-first-transform/main.js rename to test/function/samples/plugin-error-only-first-transform/main.js diff --git a/test/function/plugin-error/_config.js b/test/function/samples/plugin-error/_config.js similarity index 100% rename from test/function/plugin-error/_config.js rename to test/function/samples/plugin-error/_config.js diff --git a/test/function/plugin-error/main.js b/test/function/samples/plugin-error/main.js similarity index 100% rename from test/function/plugin-error/main.js rename to test/function/samples/plugin-error/main.js diff --git a/test/function/plugin-warn-loc-instead-pos/_config.js b/test/function/samples/plugin-warn-loc-instead-pos/_config.js similarity index 100% rename from test/function/plugin-warn-loc-instead-pos/_config.js rename to test/function/samples/plugin-warn-loc-instead-pos/_config.js diff --git a/test/function/plugin-warn-loc-instead-pos/main.js b/test/function/samples/plugin-warn-loc-instead-pos/main.js similarity index 100% rename from test/function/plugin-warn-loc-instead-pos/main.js rename to test/function/samples/plugin-warn-loc-instead-pos/main.js diff --git a/test/function/plugin-warn/_config.js b/test/function/samples/plugin-warn/_config.js similarity index 100% rename from test/function/plugin-warn/_config.js rename to test/function/samples/plugin-warn/_config.js diff --git a/test/function/plugin-warn/main.js b/test/function/samples/plugin-warn/main.js similarity index 100% rename from test/function/plugin-warn/main.js rename to test/function/samples/plugin-warn/main.js diff --git a/test/function/plugins-can-manipulate-options/_config.js b/test/function/samples/plugins-can-manipulate-options/_config.js similarity index 100% rename from test/function/plugins-can-manipulate-options/_config.js rename to test/function/samples/plugins-can-manipulate-options/_config.js diff --git a/test/function/plugins-can-manipulate-options/answer.js b/test/function/samples/plugins-can-manipulate-options/answer.js similarity index 100% rename from test/function/plugins-can-manipulate-options/answer.js rename to test/function/samples/plugins-can-manipulate-options/answer.js diff --git a/test/function/preserves-catch-argument/_config.js b/test/function/samples/preserves-catch-argument/_config.js similarity index 100% rename from test/function/preserves-catch-argument/_config.js rename to test/function/samples/preserves-catch-argument/_config.js diff --git a/test/function/preserves-catch-argument/main.js b/test/function/samples/preserves-catch-argument/main.js similarity index 100% rename from test/function/preserves-catch-argument/main.js rename to test/function/samples/preserves-catch-argument/main.js diff --git a/test/function/preserves-default-exports-used-locally/_config.js b/test/function/samples/preserves-default-exports-used-locally/_config.js similarity index 100% rename from test/function/preserves-default-exports-used-locally/_config.js rename to test/function/samples/preserves-default-exports-used-locally/_config.js diff --git a/test/function/preserves-default-exports-used-locally/foo.js b/test/function/samples/preserves-default-exports-used-locally/foo.js similarity index 100% rename from test/function/preserves-default-exports-used-locally/foo.js rename to test/function/samples/preserves-default-exports-used-locally/foo.js diff --git a/test/function/preserves-default-exports-used-locally/main.js b/test/function/samples/preserves-default-exports-used-locally/main.js similarity index 100% rename from test/function/preserves-default-exports-used-locally/main.js rename to test/function/samples/preserves-default-exports-used-locally/main.js diff --git a/test/function/preserves-function-expression-names/_config.js b/test/function/samples/preserves-function-expression-names/_config.js similarity index 100% rename from test/function/preserves-function-expression-names/_config.js rename to test/function/samples/preserves-function-expression-names/_config.js diff --git a/test/function/preserves-function-expression-names/main.js b/test/function/samples/preserves-function-expression-names/main.js similarity index 100% rename from test/function/preserves-function-expression-names/main.js rename to test/function/samples/preserves-function-expression-names/main.js diff --git a/test/function/preserves-var-declarations-in-dead-branches/_config.js b/test/function/samples/preserves-var-declarations-in-dead-branches/_config.js similarity index 100% rename from test/function/preserves-var-declarations-in-dead-branches/_config.js rename to test/function/samples/preserves-var-declarations-in-dead-branches/_config.js diff --git a/test/function/preserves-var-declarations-in-dead-branches/main.js b/test/function/samples/preserves-var-declarations-in-dead-branches/main.js similarity index 100% rename from test/function/preserves-var-declarations-in-dead-branches/main.js rename to test/function/samples/preserves-var-declarations-in-dead-branches/main.js diff --git a/test/function/property-keys-not-renamed/_config.js b/test/function/samples/property-keys-not-renamed/_config.js similarity index 100% rename from test/function/property-keys-not-renamed/_config.js rename to test/function/samples/property-keys-not-renamed/_config.js diff --git a/test/function/property-keys-not-renamed/main.js b/test/function/samples/property-keys-not-renamed/main.js similarity index 100% rename from test/function/property-keys-not-renamed/main.js rename to test/function/samples/property-keys-not-renamed/main.js diff --git a/test/function/property-keys-not-renamed/one.js b/test/function/samples/property-keys-not-renamed/one.js similarity index 100% rename from test/function/property-keys-not-renamed/one.js rename to test/function/samples/property-keys-not-renamed/one.js diff --git a/test/function/property-keys-not-renamed/three.js b/test/function/samples/property-keys-not-renamed/three.js similarity index 100% rename from test/function/property-keys-not-renamed/three.js rename to test/function/samples/property-keys-not-renamed/three.js diff --git a/test/function/property-keys-not-renamed/two.js b/test/function/samples/property-keys-not-renamed/two.js similarity index 100% rename from test/function/property-keys-not-renamed/two.js rename to test/function/samples/property-keys-not-renamed/two.js diff --git a/test/function/re-export-default-import/_config.js b/test/function/samples/re-export-default-import/_config.js similarity index 100% rename from test/function/re-export-default-import/_config.js rename to test/function/samples/re-export-default-import/_config.js diff --git a/test/function/re-export-default-import/first.js b/test/function/samples/re-export-default-import/first.js similarity index 100% rename from test/function/re-export-default-import/first.js rename to test/function/samples/re-export-default-import/first.js diff --git a/test/function/re-export-default-import/main.js b/test/function/samples/re-export-default-import/main.js similarity index 100% rename from test/function/re-export-default-import/main.js rename to test/function/samples/re-export-default-import/main.js diff --git a/test/function/re-export-default-import/second.js b/test/function/samples/re-export-default-import/second.js similarity index 100% rename from test/function/re-export-default-import/second.js rename to test/function/samples/re-export-default-import/second.js diff --git a/test/function/re-export-namespace-import/_config.js b/test/function/samples/re-export-namespace-import/_config.js similarity index 100% rename from test/function/re-export-namespace-import/_config.js rename to test/function/samples/re-export-namespace-import/_config.js diff --git a/test/function/re-export-namespace-import/first.js b/test/function/samples/re-export-namespace-import/first.js similarity index 100% rename from test/function/re-export-namespace-import/first.js rename to test/function/samples/re-export-namespace-import/first.js diff --git a/test/function/re-export-namespace-import/main.js b/test/function/samples/re-export-namespace-import/main.js similarity index 100% rename from test/function/re-export-namespace-import/main.js rename to test/function/samples/re-export-namespace-import/main.js diff --git a/test/function/re-export-namespace-import/second.js b/test/function/samples/re-export-namespace-import/second.js similarity index 100% rename from test/function/re-export-namespace-import/second.js rename to test/function/samples/re-export-namespace-import/second.js diff --git a/test/function/reassign-import-fails/_config.js b/test/function/samples/reassign-import-fails/_config.js similarity index 100% rename from test/function/reassign-import-fails/_config.js rename to test/function/samples/reassign-import-fails/_config.js diff --git a/test/function/reassign-import-fails/foo.js b/test/function/samples/reassign-import-fails/foo.js similarity index 100% rename from test/function/reassign-import-fails/foo.js rename to test/function/samples/reassign-import-fails/foo.js diff --git a/test/function/reassign-import-fails/main.js b/test/function/samples/reassign-import-fails/main.js similarity index 100% rename from test/function/reassign-import-fails/main.js rename to test/function/samples/reassign-import-fails/main.js diff --git a/test/function/reassign-import-not-at-top-level-fails/_config.js b/test/function/samples/reassign-import-not-at-top-level-fails/_config.js similarity index 100% rename from test/function/reassign-import-not-at-top-level-fails/_config.js rename to test/function/samples/reassign-import-not-at-top-level-fails/_config.js diff --git a/test/function/reassign-import-not-at-top-level-fails/foo.js b/test/function/samples/reassign-import-not-at-top-level-fails/foo.js similarity index 100% rename from test/function/reassign-import-not-at-top-level-fails/foo.js rename to test/function/samples/reassign-import-not-at-top-level-fails/foo.js diff --git a/test/function/reassign-import-not-at-top-level-fails/main.js b/test/function/samples/reassign-import-not-at-top-level-fails/main.js similarity index 100% rename from test/function/reassign-import-not-at-top-level-fails/main.js rename to test/function/samples/reassign-import-not-at-top-level-fails/main.js diff --git a/test/function/reassign-parameter/_config.js b/test/function/samples/reassign-parameter/_config.js similarity index 100% rename from test/function/reassign-parameter/_config.js rename to test/function/samples/reassign-parameter/_config.js diff --git a/test/function/reassign-parameter/main.js b/test/function/samples/reassign-parameter/main.js similarity index 100% rename from test/function/reassign-parameter/main.js rename to test/function/samples/reassign-parameter/main.js diff --git a/test/function/reexport-missing-error/_config.js b/test/function/samples/reexport-missing-error/_config.js similarity index 100% rename from test/function/reexport-missing-error/_config.js rename to test/function/samples/reexport-missing-error/_config.js diff --git a/test/function/reexport-missing-error/empty.js b/test/function/samples/reexport-missing-error/empty.js similarity index 100% rename from test/function/reexport-missing-error/empty.js rename to test/function/samples/reexport-missing-error/empty.js diff --git a/test/function/reexport-missing-error/main.js b/test/function/samples/reexport-missing-error/main.js similarity index 100% rename from test/function/reexport-missing-error/main.js rename to test/function/samples/reexport-missing-error/main.js diff --git a/test/function/reexports-from-external/_config.js b/test/function/samples/reexports-from-external/_config.js similarity index 100% rename from test/function/reexports-from-external/_config.js rename to test/function/samples/reexports-from-external/_config.js diff --git a/test/function/reexports-from-external/main.js b/test/function/samples/reexports-from-external/main.js similarity index 100% rename from test/function/reexports-from-external/main.js rename to test/function/samples/reexports-from-external/main.js diff --git a/test/function/relative-external-include-once-nested/_config.js b/test/function/samples/relative-external-include-once-nested/_config.js similarity index 100% rename from test/function/relative-external-include-once-nested/_config.js rename to test/function/samples/relative-external-include-once-nested/_config.js diff --git a/test/function/relative-external-include-once-nested/first/foo.js b/test/function/samples/relative-external-include-once-nested/first/foo.js similarity index 100% rename from test/function/relative-external-include-once-nested/first/foo.js rename to test/function/samples/relative-external-include-once-nested/first/foo.js diff --git a/test/function/relative-external-include-once-nested/first/module.js b/test/function/samples/relative-external-include-once-nested/first/module.js similarity index 100% rename from test/function/relative-external-include-once-nested/first/module.js rename to test/function/samples/relative-external-include-once-nested/first/module.js diff --git a/test/function/relative-external-include-once-nested/first/second/module.js b/test/function/samples/relative-external-include-once-nested/first/second/module.js similarity index 100% rename from test/function/relative-external-include-once-nested/first/second/module.js rename to test/function/samples/relative-external-include-once-nested/first/second/module.js diff --git a/test/function/relative-external-include-once-nested/main.js b/test/function/samples/relative-external-include-once-nested/main.js similarity index 100% rename from test/function/relative-external-include-once-nested/main.js rename to test/function/samples/relative-external-include-once-nested/main.js diff --git a/test/function/relative-external-include-once-two-external/_config.js b/test/function/samples/relative-external-include-once-two-external/_config.js similarity index 100% rename from test/function/relative-external-include-once-two-external/_config.js rename to test/function/samples/relative-external-include-once-two-external/_config.js diff --git a/test/function/relative-external-include-once-two-external/first/foo.js b/test/function/samples/relative-external-include-once-two-external/first/foo.js similarity index 100% rename from test/function/relative-external-include-once-two-external/first/foo.js rename to test/function/samples/relative-external-include-once-two-external/first/foo.js diff --git a/test/function/relative-external-include-once-two-external/first/module.js b/test/function/samples/relative-external-include-once-two-external/first/module.js similarity index 100% rename from test/function/relative-external-include-once-two-external/first/module.js rename to test/function/samples/relative-external-include-once-two-external/first/module.js diff --git a/test/function/relative-external-include-once-two-external/foo.js b/test/function/samples/relative-external-include-once-two-external/foo.js similarity index 100% rename from test/function/relative-external-include-once-two-external/foo.js rename to test/function/samples/relative-external-include-once-two-external/foo.js diff --git a/test/function/relative-external-include-once-two-external/main.js b/test/function/samples/relative-external-include-once-two-external/main.js similarity index 100% rename from test/function/relative-external-include-once-two-external/main.js rename to test/function/samples/relative-external-include-once-two-external/main.js diff --git a/test/function/relative-external-include-once-up/_config.js b/test/function/samples/relative-external-include-once-up/_config.js similarity index 100% rename from test/function/relative-external-include-once-up/_config.js rename to test/function/samples/relative-external-include-once-up/_config.js diff --git a/test/function/relative-external-include-once-up/first/main.js b/test/function/samples/relative-external-include-once-up/first/main.js similarity index 100% rename from test/function/relative-external-include-once-up/first/main.js rename to test/function/samples/relative-external-include-once-up/first/main.js diff --git a/test/function/relative-external-include-once-up/first/module.js b/test/function/samples/relative-external-include-once-up/first/module.js similarity index 100% rename from test/function/relative-external-include-once-up/first/module.js rename to test/function/samples/relative-external-include-once-up/first/module.js diff --git a/test/function/relative-external-include-once-up/first/second/module.js b/test/function/samples/relative-external-include-once-up/first/second/module.js similarity index 100% rename from test/function/relative-external-include-once-up/first/second/module.js rename to test/function/samples/relative-external-include-once-up/first/second/module.js diff --git a/test/function/relative-external-include-once-up/foo.js b/test/function/samples/relative-external-include-once-up/foo.js similarity index 100% rename from test/function/relative-external-include-once-up/foo.js rename to test/function/samples/relative-external-include-once-up/foo.js diff --git a/test/function/relative-external-include-once/_config.js b/test/function/samples/relative-external-include-once/_config.js similarity index 100% rename from test/function/relative-external-include-once/_config.js rename to test/function/samples/relative-external-include-once/_config.js diff --git a/test/function/relative-external-include-once/first/module.js b/test/function/samples/relative-external-include-once/first/module.js similarity index 100% rename from test/function/relative-external-include-once/first/module.js rename to test/function/samples/relative-external-include-once/first/module.js diff --git a/test/function/relative-external-include-once/first/second/module.js b/test/function/samples/relative-external-include-once/first/second/module.js similarity index 100% rename from test/function/relative-external-include-once/first/second/module.js rename to test/function/samples/relative-external-include-once/first/second/module.js diff --git a/test/function/relative-external-include-once/foo.js b/test/function/samples/relative-external-include-once/foo.js similarity index 100% rename from test/function/relative-external-include-once/foo.js rename to test/function/samples/relative-external-include-once/foo.js diff --git a/test/function/relative-external-include-once/main.js b/test/function/samples/relative-external-include-once/main.js similarity index 100% rename from test/function/relative-external-include-once/main.js rename to test/function/samples/relative-external-include-once/main.js diff --git a/test/function/removes-empty-exported-vars/_config.js b/test/function/samples/removes-empty-exported-vars/_config.js similarity index 100% rename from test/function/removes-empty-exported-vars/_config.js rename to test/function/samples/removes-empty-exported-vars/_config.js diff --git a/test/function/removes-empty-exported-vars/main.js b/test/function/samples/removes-empty-exported-vars/main.js similarity index 100% rename from test/function/removes-empty-exported-vars/main.js rename to test/function/samples/removes-empty-exported-vars/main.js diff --git a/test/function/rename-conditional-expression-children/_config.js b/test/function/samples/rename-conditional-expression-children/_config.js similarity index 100% rename from test/function/rename-conditional-expression-children/_config.js rename to test/function/samples/rename-conditional-expression-children/_config.js diff --git a/test/function/rename-conditional-expression-children/foo.js b/test/function/samples/rename-conditional-expression-children/foo.js similarity index 100% rename from test/function/rename-conditional-expression-children/foo.js rename to test/function/samples/rename-conditional-expression-children/foo.js diff --git a/test/function/rename-conditional-expression-children/main.js b/test/function/samples/rename-conditional-expression-children/main.js similarity index 100% rename from test/function/rename-conditional-expression-children/main.js rename to test/function/samples/rename-conditional-expression-children/main.js diff --git a/test/function/rename-default-export/_config.js b/test/function/samples/rename-default-export/_config.js similarity index 100% rename from test/function/rename-default-export/_config.js rename to test/function/samples/rename-default-export/_config.js diff --git a/test/function/rename-default-export/bar.js b/test/function/samples/rename-default-export/bar.js similarity index 100% rename from test/function/rename-default-export/bar.js rename to test/function/samples/rename-default-export/bar.js diff --git a/test/function/rename-default-export/baz.js b/test/function/samples/rename-default-export/baz.js similarity index 100% rename from test/function/rename-default-export/baz.js rename to test/function/samples/rename-default-export/baz.js diff --git a/test/function/rename-default-export/foo.js b/test/function/samples/rename-default-export/foo.js similarity index 100% rename from test/function/rename-default-export/foo.js rename to test/function/samples/rename-default-export/foo.js diff --git a/test/function/rename-default-export/main.js b/test/function/samples/rename-default-export/main.js similarity index 100% rename from test/function/rename-default-export/main.js rename to test/function/samples/rename-default-export/main.js diff --git a/test/function/renamed-arguments/_config.js b/test/function/samples/renamed-arguments/_config.js similarity index 100% rename from test/function/renamed-arguments/_config.js rename to test/function/samples/renamed-arguments/_config.js diff --git a/test/function/renamed-arguments/bar.js b/test/function/samples/renamed-arguments/bar.js similarity index 100% rename from test/function/renamed-arguments/bar.js rename to test/function/samples/renamed-arguments/bar.js diff --git a/test/function/renamed-arguments/foo.js b/test/function/samples/renamed-arguments/foo.js similarity index 100% rename from test/function/renamed-arguments/foo.js rename to test/function/samples/renamed-arguments/foo.js diff --git a/test/function/renamed-arguments/main.js b/test/function/samples/renamed-arguments/main.js similarity index 100% rename from test/function/renamed-arguments/main.js rename to test/function/samples/renamed-arguments/main.js diff --git a/test/function/resolves-namespace-default/_config.js b/test/function/samples/resolves-namespace-default/_config.js similarity index 100% rename from test/function/resolves-namespace-default/_config.js rename to test/function/samples/resolves-namespace-default/_config.js diff --git a/test/function/resolves-namespace-default/main.js b/test/function/samples/resolves-namespace-default/main.js similarity index 100% rename from test/function/resolves-namespace-default/main.js rename to test/function/samples/resolves-namespace-default/main.js diff --git a/test/function/resolves-namespace-default/mod.js b/test/function/samples/resolves-namespace-default/mod.js similarity index 100% rename from test/function/resolves-namespace-default/mod.js rename to test/function/samples/resolves-namespace-default/mod.js diff --git a/test/function/retains-sort-order-b/_config.js b/test/function/samples/retains-sort-order-b/_config.js similarity index 100% rename from test/function/retains-sort-order-b/_config.js rename to test/function/samples/retains-sort-order-b/_config.js diff --git a/test/function/retains-sort-order-b/bar.js b/test/function/samples/retains-sort-order-b/bar.js similarity index 100% rename from test/function/retains-sort-order-b/bar.js rename to test/function/samples/retains-sort-order-b/bar.js diff --git a/test/function/retains-sort-order-b/foo.js b/test/function/samples/retains-sort-order-b/foo.js similarity index 100% rename from test/function/retains-sort-order-b/foo.js rename to test/function/samples/retains-sort-order-b/foo.js diff --git a/test/function/retains-sort-order-b/main.js b/test/function/samples/retains-sort-order-b/main.js similarity index 100% rename from test/function/retains-sort-order-b/main.js rename to test/function/samples/retains-sort-order-b/main.js diff --git a/test/function/retains-sort-order/_config.js b/test/function/samples/retains-sort-order/_config.js similarity index 100% rename from test/function/retains-sort-order/_config.js rename to test/function/samples/retains-sort-order/_config.js diff --git a/test/function/retains-sort-order/baz.js b/test/function/samples/retains-sort-order/baz.js similarity index 100% rename from test/function/retains-sort-order/baz.js rename to test/function/samples/retains-sort-order/baz.js diff --git a/test/function/retains-sort-order/foobar.js b/test/function/samples/retains-sort-order/foobar.js similarity index 100% rename from test/function/retains-sort-order/foobar.js rename to test/function/samples/retains-sort-order/foobar.js diff --git a/test/function/retains-sort-order/main.js b/test/function/samples/retains-sort-order/main.js similarity index 100% rename from test/function/retains-sort-order/main.js rename to test/function/samples/retains-sort-order/main.js diff --git a/test/function/rewrite-member-expressions/_config.js b/test/function/samples/rewrite-member-expressions/_config.js similarity index 100% rename from test/function/rewrite-member-expressions/_config.js rename to test/function/samples/rewrite-member-expressions/_config.js diff --git a/test/function/rewrite-member-expressions/getLengthOfOtherQueue.js b/test/function/samples/rewrite-member-expressions/getLengthOfOtherQueue.js similarity index 100% rename from test/function/rewrite-member-expressions/getLengthOfOtherQueue.js rename to test/function/samples/rewrite-member-expressions/getLengthOfOtherQueue.js diff --git a/test/function/rewrite-member-expressions/main.js b/test/function/samples/rewrite-member-expressions/main.js similarity index 100% rename from test/function/rewrite-member-expressions/main.js rename to test/function/samples/rewrite-member-expressions/main.js diff --git a/test/function/rewrite-member-expressions/mainQueue.js b/test/function/samples/rewrite-member-expressions/mainQueue.js similarity index 100% rename from test/function/rewrite-member-expressions/mainQueue.js rename to test/function/samples/rewrite-member-expressions/mainQueue.js diff --git a/test/function/shadowed-external-export/_config.js b/test/function/samples/shadowed-external-export/_config.js similarity index 100% rename from test/function/shadowed-external-export/_config.js rename to test/function/samples/shadowed-external-export/_config.js diff --git a/test/function/shadowed-external-export/main.js b/test/function/samples/shadowed-external-export/main.js similarity index 100% rename from test/function/shadowed-external-export/main.js rename to test/function/samples/shadowed-external-export/main.js diff --git a/test/function/shadowed-namespace-b/_config.js b/test/function/samples/shadowed-namespace-b/_config.js similarity index 100% rename from test/function/shadowed-namespace-b/_config.js rename to test/function/samples/shadowed-namespace-b/_config.js diff --git a/test/function/shadowed-namespace-b/bar.js b/test/function/samples/shadowed-namespace-b/bar.js similarity index 100% rename from test/function/shadowed-namespace-b/bar.js rename to test/function/samples/shadowed-namespace-b/bar.js diff --git a/test/function/shadowed-namespace-b/main.js b/test/function/samples/shadowed-namespace-b/main.js similarity index 100% rename from test/function/shadowed-namespace-b/main.js rename to test/function/samples/shadowed-namespace-b/main.js diff --git a/test/function/shadowed-namespace/_config.js b/test/function/samples/shadowed-namespace/_config.js similarity index 100% rename from test/function/shadowed-namespace/_config.js rename to test/function/samples/shadowed-namespace/_config.js diff --git a/test/function/shadowed-namespace/bar.js b/test/function/samples/shadowed-namespace/bar.js similarity index 100% rename from test/function/shadowed-namespace/bar.js rename to test/function/samples/shadowed-namespace/bar.js diff --git a/test/function/shadowed-namespace/main.js b/test/function/samples/shadowed-namespace/main.js similarity index 100% rename from test/function/shadowed-namespace/main.js rename to test/function/samples/shadowed-namespace/main.js diff --git a/test/function/shadowed-variables/_config.js b/test/function/samples/shadowed-variables/_config.js similarity index 100% rename from test/function/shadowed-variables/_config.js rename to test/function/samples/shadowed-variables/_config.js diff --git a/test/function/shadowed-variables/foo.js b/test/function/samples/shadowed-variables/foo.js similarity index 100% rename from test/function/shadowed-variables/foo.js rename to test/function/samples/shadowed-variables/foo.js diff --git a/test/function/shadowed-variables/main.js b/test/function/samples/shadowed-variables/main.js similarity index 100% rename from test/function/shadowed-variables/main.js rename to test/function/samples/shadowed-variables/main.js diff --git a/test/function/sourcemapping-url-comment/_config.js b/test/function/samples/sourcemapping-url-comment/_config.js similarity index 100% rename from test/function/sourcemapping-url-comment/_config.js rename to test/function/samples/sourcemapping-url-comment/_config.js diff --git a/test/function/sourcemapping-url-comment/main.js b/test/function/samples/sourcemapping-url-comment/main.js similarity index 100% rename from test/function/sourcemapping-url-comment/main.js rename to test/function/samples/sourcemapping-url-comment/main.js diff --git a/test/function/sourcemapping-url-multiline/_config.js b/test/function/samples/sourcemapping-url-multiline/_config.js similarity index 100% rename from test/function/sourcemapping-url-multiline/_config.js rename to test/function/samples/sourcemapping-url-multiline/_config.js diff --git a/test/function/sourcemapping-url-multiline/main.js b/test/function/samples/sourcemapping-url-multiline/main.js similarity index 100% rename from test/function/sourcemapping-url-multiline/main.js rename to test/function/samples/sourcemapping-url-multiline/main.js diff --git a/test/function/statement-order/_config.js b/test/function/samples/statement-order/_config.js similarity index 100% rename from test/function/statement-order/_config.js rename to test/function/samples/statement-order/_config.js diff --git a/test/function/statement-order/answer.js b/test/function/samples/statement-order/answer.js similarity index 100% rename from test/function/statement-order/answer.js rename to test/function/samples/statement-order/answer.js diff --git a/test/function/statement-order/main.js b/test/function/samples/statement-order/main.js similarity index 100% rename from test/function/statement-order/main.js rename to test/function/samples/statement-order/main.js diff --git a/test/function/symlink/_config.js b/test/function/samples/symlink/_config.js similarity index 100% rename from test/function/symlink/_config.js rename to test/function/samples/symlink/_config.js diff --git a/test/function/symlink/foo.js b/test/function/samples/symlink/foo.js similarity index 100% rename from test/function/symlink/foo.js rename to test/function/samples/symlink/foo.js diff --git a/test/function/symlink/main.js b/test/function/samples/symlink/main.js similarity index 100% rename from test/function/symlink/main.js rename to test/function/samples/symlink/main.js diff --git a/test/function/symlink/symlinked/bar.js b/test/function/samples/symlink/symlinked/bar.js similarity index 100% rename from test/function/symlink/symlinked/bar.js rename to test/function/samples/symlink/symlinked/bar.js diff --git a/test/function/symlink/symlinked/baz.js b/test/function/samples/symlink/symlinked/baz.js similarity index 100% rename from test/function/symlink/symlinked/baz.js rename to test/function/samples/symlink/symlinked/baz.js diff --git a/test/function/this-not-namespace/_config.js b/test/function/samples/this-not-namespace/_config.js similarity index 100% rename from test/function/this-not-namespace/_config.js rename to test/function/samples/this-not-namespace/_config.js diff --git a/test/function/this-not-namespace/main.js b/test/function/samples/this-not-namespace/main.js similarity index 100% rename from test/function/this-not-namespace/main.js rename to test/function/samples/this-not-namespace/main.js diff --git a/test/function/throws-not-found-module/_config.js b/test/function/samples/throws-not-found-module/_config.js similarity index 100% rename from test/function/throws-not-found-module/_config.js rename to test/function/samples/throws-not-found-module/_config.js diff --git a/test/function/throws-not-found-module/main.js b/test/function/samples/throws-not-found-module/main.js similarity index 100% rename from test/function/throws-not-found-module/main.js rename to test/function/samples/throws-not-found-module/main.js diff --git a/test/function/top-level-arrow-function/_config.js b/test/function/samples/top-level-arrow-function/_config.js similarity index 100% rename from test/function/top-level-arrow-function/_config.js rename to test/function/samples/top-level-arrow-function/_config.js diff --git a/test/function/top-level-arrow-function/main.js b/test/function/samples/top-level-arrow-function/main.js similarity index 100% rename from test/function/top-level-arrow-function/main.js rename to test/function/samples/top-level-arrow-function/main.js diff --git a/test/function/top-level-block/_config.js b/test/function/samples/top-level-block/_config.js similarity index 100% rename from test/function/top-level-block/_config.js rename to test/function/samples/top-level-block/_config.js diff --git a/test/function/top-level-block/main.js b/test/function/samples/top-level-block/main.js similarity index 100% rename from test/function/top-level-block/main.js rename to test/function/samples/top-level-block/main.js diff --git a/test/function/top-level-side-effect-on-imported/_config.js b/test/function/samples/top-level-side-effect-on-imported/_config.js similarity index 100% rename from test/function/top-level-side-effect-on-imported/_config.js rename to test/function/samples/top-level-side-effect-on-imported/_config.js diff --git a/test/function/top-level-side-effect-on-imported/lib.js b/test/function/samples/top-level-side-effect-on-imported/lib.js similarity index 100% rename from test/function/top-level-side-effect-on-imported/lib.js rename to test/function/samples/top-level-side-effect-on-imported/lib.js diff --git a/test/function/top-level-side-effect-on-imported/main.js b/test/function/samples/top-level-side-effect-on-imported/main.js similarity index 100% rename from test/function/top-level-side-effect-on-imported/main.js rename to test/function/samples/top-level-side-effect-on-imported/main.js diff --git a/test/function/top-level-side-effect-on-imported/obj.js b/test/function/samples/top-level-side-effect-on-imported/obj.js similarity index 100% rename from test/function/top-level-side-effect-on-imported/obj.js rename to test/function/samples/top-level-side-effect-on-imported/obj.js diff --git a/test/function/top-level-side-effects-are-preserved/_config.js b/test/function/samples/top-level-side-effects-are-preserved/_config.js similarity index 100% rename from test/function/top-level-side-effects-are-preserved/_config.js rename to test/function/samples/top-level-side-effects-are-preserved/_config.js diff --git a/test/function/top-level-side-effects-are-preserved/asap.js b/test/function/samples/top-level-side-effects-are-preserved/asap.js similarity index 100% rename from test/function/top-level-side-effects-are-preserved/asap.js rename to test/function/samples/top-level-side-effects-are-preserved/asap.js diff --git a/test/function/top-level-side-effects-are-preserved/config.js b/test/function/samples/top-level-side-effects-are-preserved/config.js similarity index 100% rename from test/function/top-level-side-effects-are-preserved/config.js rename to test/function/samples/top-level-side-effects-are-preserved/config.js diff --git a/test/function/top-level-side-effects-are-preserved/defer.js b/test/function/samples/top-level-side-effects-are-preserved/defer.js similarity index 100% rename from test/function/top-level-side-effects-are-preserved/defer.js rename to test/function/samples/top-level-side-effects-are-preserved/defer.js diff --git a/test/function/top-level-side-effects-are-preserved/main.js b/test/function/samples/top-level-side-effects-are-preserved/main.js similarity index 100% rename from test/function/top-level-side-effects-are-preserved/main.js rename to test/function/samples/top-level-side-effects-are-preserved/main.js diff --git a/test/function/top-level-side-effects-are-preserved/rsvp.js b/test/function/samples/top-level-side-effects-are-preserved/rsvp.js similarity index 100% rename from test/function/top-level-side-effects-are-preserved/rsvp.js rename to test/function/samples/top-level-side-effects-are-preserved/rsvp.js diff --git a/test/function/tracks-alias-mutations-b/_config.js b/test/function/samples/tracks-alias-mutations-b/_config.js similarity index 100% rename from test/function/tracks-alias-mutations-b/_config.js rename to test/function/samples/tracks-alias-mutations-b/_config.js diff --git a/test/function/tracks-alias-mutations-b/main.js b/test/function/samples/tracks-alias-mutations-b/main.js similarity index 100% rename from test/function/tracks-alias-mutations-b/main.js rename to test/function/samples/tracks-alias-mutations-b/main.js diff --git a/test/function/tracks-alias-mutations/_config.js b/test/function/samples/tracks-alias-mutations/_config.js similarity index 100% rename from test/function/tracks-alias-mutations/_config.js rename to test/function/samples/tracks-alias-mutations/_config.js diff --git a/test/function/tracks-alias-mutations/bar.js b/test/function/samples/tracks-alias-mutations/bar.js similarity index 100% rename from test/function/tracks-alias-mutations/bar.js rename to test/function/samples/tracks-alias-mutations/bar.js diff --git a/test/function/tracks-alias-mutations/foo.js b/test/function/samples/tracks-alias-mutations/foo.js similarity index 100% rename from test/function/tracks-alias-mutations/foo.js rename to test/function/samples/tracks-alias-mutations/foo.js diff --git a/test/function/tracks-alias-mutations/main.js b/test/function/samples/tracks-alias-mutations/main.js similarity index 100% rename from test/function/tracks-alias-mutations/main.js rename to test/function/samples/tracks-alias-mutations/main.js diff --git a/test/function/transformer-async/_config.js b/test/function/samples/transformer-async/_config.js similarity index 100% rename from test/function/transformer-async/_config.js rename to test/function/samples/transformer-async/_config.js diff --git a/test/function/transformer-async/main.js b/test/function/samples/transformer-async/main.js similarity index 100% rename from test/function/transformer-async/main.js rename to test/function/samples/transformer-async/main.js diff --git a/test/function/transformer-multiple/_config.js b/test/function/samples/transformer-multiple/_config.js similarity index 100% rename from test/function/transformer-multiple/_config.js rename to test/function/samples/transformer-multiple/_config.js diff --git a/test/function/transformer-multiple/foo.js b/test/function/samples/transformer-multiple/foo.js similarity index 100% rename from test/function/transformer-multiple/foo.js rename to test/function/samples/transformer-multiple/foo.js diff --git a/test/function/transformer-multiple/main.js b/test/function/samples/transformer-multiple/main.js similarity index 100% rename from test/function/transformer-multiple/main.js rename to test/function/samples/transformer-multiple/main.js diff --git a/test/function/transformer-single/_config.js b/test/function/samples/transformer-single/_config.js similarity index 100% rename from test/function/transformer-single/_config.js rename to test/function/samples/transformer-single/_config.js diff --git a/test/function/transformer-single/foo.js b/test/function/samples/transformer-single/foo.js similarity index 100% rename from test/function/transformer-single/foo.js rename to test/function/samples/transformer-single/foo.js diff --git a/test/function/transformer-single/main.js b/test/function/samples/transformer-single/main.js similarity index 100% rename from test/function/transformer-single/main.js rename to test/function/samples/transformer-single/main.js diff --git a/test/function/trim-conditional-branches-in-exports/_config.js b/test/function/samples/trim-conditional-branches-in-exports/_config.js similarity index 100% rename from test/function/trim-conditional-branches-in-exports/_config.js rename to test/function/samples/trim-conditional-branches-in-exports/_config.js diff --git a/test/function/trim-conditional-branches-in-exports/foo.js b/test/function/samples/trim-conditional-branches-in-exports/foo.js similarity index 100% rename from test/function/trim-conditional-branches-in-exports/foo.js rename to test/function/samples/trim-conditional-branches-in-exports/foo.js diff --git a/test/function/trim-conditional-branches-in-exports/main.js b/test/function/samples/trim-conditional-branches-in-exports/main.js similarity index 100% rename from test/function/trim-conditional-branches-in-exports/main.js rename to test/function/samples/trim-conditional-branches-in-exports/main.js diff --git a/test/function/try-catch-scoping/_config.js b/test/function/samples/try-catch-scoping/_config.js similarity index 100% rename from test/function/try-catch-scoping/_config.js rename to test/function/samples/try-catch-scoping/_config.js diff --git a/test/function/try-catch-scoping/foo.js b/test/function/samples/try-catch-scoping/foo.js similarity index 100% rename from test/function/try-catch-scoping/foo.js rename to test/function/samples/try-catch-scoping/foo.js diff --git a/test/function/try-catch-scoping/main.js b/test/function/samples/try-catch-scoping/main.js similarity index 100% rename from test/function/try-catch-scoping/main.js rename to test/function/samples/try-catch-scoping/main.js diff --git a/test/function/unused-import/_config.js b/test/function/samples/unused-import/_config.js similarity index 100% rename from test/function/unused-import/_config.js rename to test/function/samples/unused-import/_config.js diff --git a/test/function/unused-import/main.js b/test/function/samples/unused-import/main.js similarity index 100% rename from test/function/unused-import/main.js rename to test/function/samples/unused-import/main.js diff --git a/test/function/unused-var-a/_config.js b/test/function/samples/unused-var-a/_config.js similarity index 100% rename from test/function/unused-var-a/_config.js rename to test/function/samples/unused-var-a/_config.js diff --git a/test/function/unused-var-a/foo.js b/test/function/samples/unused-var-a/foo.js similarity index 100% rename from test/function/unused-var-a/foo.js rename to test/function/samples/unused-var-a/foo.js diff --git a/test/function/unused-var-a/main.js b/test/function/samples/unused-var-a/main.js similarity index 100% rename from test/function/unused-var-a/main.js rename to test/function/samples/unused-var-a/main.js diff --git a/test/function/unused-var-b/_config.js b/test/function/samples/unused-var-b/_config.js similarity index 100% rename from test/function/unused-var-b/_config.js rename to test/function/samples/unused-var-b/_config.js diff --git a/test/function/unused-var-b/foo.js b/test/function/samples/unused-var-b/foo.js similarity index 100% rename from test/function/unused-var-b/foo.js rename to test/function/samples/unused-var-b/foo.js diff --git a/test/function/unused-var-b/main.js b/test/function/samples/unused-var-b/main.js similarity index 100% rename from test/function/unused-var-b/main.js rename to test/function/samples/unused-var-b/main.js diff --git a/test/function/unused-var-c/_config.js b/test/function/samples/unused-var-c/_config.js similarity index 100% rename from test/function/unused-var-c/_config.js rename to test/function/samples/unused-var-c/_config.js diff --git a/test/function/unused-var-c/foo.js b/test/function/samples/unused-var-c/foo.js similarity index 100% rename from test/function/unused-var-c/foo.js rename to test/function/samples/unused-var-c/foo.js diff --git a/test/function/unused-var-c/main.js b/test/function/samples/unused-var-c/main.js similarity index 100% rename from test/function/unused-var-c/main.js rename to test/function/samples/unused-var-c/main.js diff --git a/test/function/unused-var-d/_config.js b/test/function/samples/unused-var-d/_config.js similarity index 100% rename from test/function/unused-var-d/_config.js rename to test/function/samples/unused-var-d/_config.js diff --git a/test/function/unused-var-d/foo.js b/test/function/samples/unused-var-d/foo.js similarity index 100% rename from test/function/unused-var-d/foo.js rename to test/function/samples/unused-var-d/foo.js diff --git a/test/function/unused-var-d/main.js b/test/function/samples/unused-var-d/main.js similarity index 100% rename from test/function/unused-var-d/main.js rename to test/function/samples/unused-var-d/main.js diff --git a/test/function/update-expression-of-import-fails/_config.js b/test/function/samples/update-expression-of-import-fails/_config.js similarity index 100% rename from test/function/update-expression-of-import-fails/_config.js rename to test/function/samples/update-expression-of-import-fails/_config.js diff --git a/test/function/update-expression-of-import-fails/foo.js b/test/function/samples/update-expression-of-import-fails/foo.js similarity index 100% rename from test/function/update-expression-of-import-fails/foo.js rename to test/function/samples/update-expression-of-import-fails/foo.js diff --git a/test/function/update-expression-of-import-fails/main.js b/test/function/samples/update-expression-of-import-fails/main.js similarity index 100% rename from test/function/update-expression-of-import-fails/main.js rename to test/function/samples/update-expression-of-import-fails/main.js diff --git a/test/function/uses-supplied-ast/_config.js b/test/function/samples/uses-supplied-ast/_config.js similarity index 100% rename from test/function/uses-supplied-ast/_config.js rename to test/function/samples/uses-supplied-ast/_config.js diff --git a/test/function/vars-in-for-loop-head/_config.js b/test/function/samples/vars-in-for-loop-head/_config.js similarity index 100% rename from test/function/vars-in-for-loop-head/_config.js rename to test/function/samples/vars-in-for-loop-head/_config.js diff --git a/test/function/vars-in-for-loop-head/main.js b/test/function/samples/vars-in-for-loop-head/main.js similarity index 100% rename from test/function/vars-in-for-loop-head/main.js rename to test/function/samples/vars-in-for-loop-head/main.js diff --git a/test/function/vars-not-removed-in-if-block/_config.js b/test/function/samples/vars-not-removed-in-if-block/_config.js similarity index 100% rename from test/function/vars-not-removed-in-if-block/_config.js rename to test/function/samples/vars-not-removed-in-if-block/_config.js diff --git a/test/function/vars-not-removed-in-if-block/main.js b/test/function/samples/vars-not-removed-in-if-block/main.js similarity index 100% rename from test/function/vars-not-removed-in-if-block/main.js rename to test/function/samples/vars-not-removed-in-if-block/main.js diff --git a/test/function/vars-not-removed/_config.js b/test/function/samples/vars-not-removed/_config.js similarity index 100% rename from test/function/vars-not-removed/_config.js rename to test/function/samples/vars-not-removed/_config.js diff --git a/test/function/vars-not-removed/bar.js b/test/function/samples/vars-not-removed/bar.js similarity index 100% rename from test/function/vars-not-removed/bar.js rename to test/function/samples/vars-not-removed/bar.js diff --git a/test/function/vars-not-removed/foo.js b/test/function/samples/vars-not-removed/foo.js similarity index 100% rename from test/function/vars-not-removed/foo.js rename to test/function/samples/vars-not-removed/foo.js diff --git a/test/function/vars-not-removed/main.js b/test/function/samples/vars-not-removed/main.js similarity index 100% rename from test/function/vars-not-removed/main.js rename to test/function/samples/vars-not-removed/main.js diff --git a/test/function/vars-with-init-in-dead-branch/_config.js b/test/function/samples/vars-with-init-in-dead-branch/_config.js similarity index 100% rename from test/function/vars-with-init-in-dead-branch/_config.js rename to test/function/samples/vars-with-init-in-dead-branch/_config.js diff --git a/test/function/vars-with-init-in-dead-branch/main.js b/test/function/samples/vars-with-init-in-dead-branch/main.js similarity index 100% rename from test/function/vars-with-init-in-dead-branch/main.js rename to test/function/samples/vars-with-init-in-dead-branch/main.js diff --git a/test/function/warn-on-auto-named-default-exports/_config.js b/test/function/samples/warn-on-auto-named-default-exports/_config.js similarity index 100% rename from test/function/warn-on-auto-named-default-exports/_config.js rename to test/function/samples/warn-on-auto-named-default-exports/_config.js diff --git a/test/function/warn-on-auto-named-default-exports/main.js b/test/function/samples/warn-on-auto-named-default-exports/main.js similarity index 100% rename from test/function/warn-on-auto-named-default-exports/main.js rename to test/function/samples/warn-on-auto-named-default-exports/main.js diff --git a/test/function/warn-on-empty-bundle/_config.js b/test/function/samples/warn-on-empty-bundle/_config.js similarity index 100% rename from test/function/warn-on-empty-bundle/_config.js rename to test/function/samples/warn-on-empty-bundle/_config.js diff --git a/test/function/warn-on-empty-bundle/main.js b/test/function/samples/warn-on-empty-bundle/main.js similarity index 100% rename from test/function/warn-on-empty-bundle/main.js rename to test/function/samples/warn-on-empty-bundle/main.js diff --git a/test/function/warn-on-eval/_config.js b/test/function/samples/warn-on-eval/_config.js similarity index 100% rename from test/function/warn-on-eval/_config.js rename to test/function/samples/warn-on-eval/_config.js diff --git a/test/function/warn-on-eval/main.js b/test/function/samples/warn-on-eval/main.js similarity index 100% rename from test/function/warn-on-eval/main.js rename to test/function/samples/warn-on-eval/main.js diff --git a/test/function/warn-on-namespace-conflict/_config.js b/test/function/samples/warn-on-namespace-conflict/_config.js similarity index 100% rename from test/function/warn-on-namespace-conflict/_config.js rename to test/function/samples/warn-on-namespace-conflict/_config.js diff --git a/test/function/warn-on-namespace-conflict/bar.js b/test/function/samples/warn-on-namespace-conflict/bar.js similarity index 100% rename from test/function/warn-on-namespace-conflict/bar.js rename to test/function/samples/warn-on-namespace-conflict/bar.js diff --git a/test/function/warn-on-namespace-conflict/deep.js b/test/function/samples/warn-on-namespace-conflict/deep.js similarity index 100% rename from test/function/warn-on-namespace-conflict/deep.js rename to test/function/samples/warn-on-namespace-conflict/deep.js diff --git a/test/function/warn-on-namespace-conflict/foo.js b/test/function/samples/warn-on-namespace-conflict/foo.js similarity index 100% rename from test/function/warn-on-namespace-conflict/foo.js rename to test/function/samples/warn-on-namespace-conflict/foo.js diff --git a/test/function/warn-on-namespace-conflict/main.js b/test/function/samples/warn-on-namespace-conflict/main.js similarity index 100% rename from test/function/warn-on-namespace-conflict/main.js rename to test/function/samples/warn-on-namespace-conflict/main.js diff --git a/test/function/warn-on-top-level-this/_config.js b/test/function/samples/warn-on-top-level-this/_config.js similarity index 100% rename from test/function/warn-on-top-level-this/_config.js rename to test/function/samples/warn-on-top-level-this/_config.js diff --git a/test/function/warn-on-top-level-this/main.js b/test/function/samples/warn-on-top-level-this/main.js similarity index 100% rename from test/function/warn-on-top-level-this/main.js rename to test/function/samples/warn-on-top-level-this/main.js diff --git a/test/function/warn-on-unused-missing-imports/_config.js b/test/function/samples/warn-on-unused-missing-imports/_config.js similarity index 100% rename from test/function/warn-on-unused-missing-imports/_config.js rename to test/function/samples/warn-on-unused-missing-imports/_config.js diff --git a/test/function/warn-on-unused-missing-imports/foo.js b/test/function/samples/warn-on-unused-missing-imports/foo.js similarity index 100% rename from test/function/warn-on-unused-missing-imports/foo.js rename to test/function/samples/warn-on-unused-missing-imports/foo.js diff --git a/test/function/warn-on-unused-missing-imports/main.js b/test/function/samples/warn-on-unused-missing-imports/main.js similarity index 100% rename from test/function/warn-on-unused-missing-imports/main.js rename to test/function/samples/warn-on-unused-missing-imports/main.js diff --git a/test/function/watch-option/_config.js b/test/function/samples/watch-option/_config.js similarity index 100% rename from test/function/watch-option/_config.js rename to test/function/samples/watch-option/_config.js diff --git a/test/function/watch-option/main.js b/test/function/samples/watch-option/main.js similarity index 100% rename from test/function/watch-option/main.js rename to test/function/samples/watch-option/main.js diff --git a/test/hooks/index.js b/test/hooks/index.js new file mode 100644 index 00000000000..c6404b82145 --- /dev/null +++ b/test/hooks/index.js @@ -0,0 +1,103 @@ +const path = require('path'); +const assert = require('assert'); +const sander = require('sander'); +const { loader } = require('../utils.js'); +const rollup = require('../../dist/rollup.js'); + +describe('hooks', () => { + it('passes bundle & output object to ongenerate & onwrite hooks', () => { + const dest = path.join(__dirname, 'tmp/bundle.js'); + + return rollup + .rollup({ + entry: 'entry', + plugins: [ + loader({ entry: `alert('hello')` }), + { + ongenerate(bundle, out) { + out.ongenerate = true; + }, + + onwrite(bundle, out) { + assert.equal(out.ongenerate, true); + } + } + ] + }) + .then(bundle => { + return bundle.write({ + dest, + format: 'es' + }); + }) + .then(() => { + return sander.unlink(dest); + }); + }); + + it('calls ongenerate hooks in sequence', () => { + const result = []; + + return rollup + .rollup({ + entry: 'entry', + plugins: [ + loader({ entry: `alert('hello')` }), + { + ongenerate(info) { + result.push({ a: info.format }); + } + }, + { + ongenerate(info) { + result.push({ b: info.format }); + } + } + ] + }) + .then(bundle => bundle.generate({ format: 'cjs' })) + .then(() => { + assert.deepEqual(result, [{ a: 'cjs' }, { b: 'cjs' }]); + }); + }); + + it('calls onwrite hooks in sequence', () => { + const result = []; + const dest = path.join(__dirname, 'tmp/bundle.js'); + + return rollup + .rollup({ + entry: 'entry', + plugins: [ + loader({ entry: `alert('hello')` }), + { + onwrite(info) { + return new Promise(fulfil => { + result.push({ a: info.dest, format: info.format }); + fulfil(); + }); + } + }, + { + onwrite(info) { + result.push({ b: info.dest, format: info.format }); + } + } + ] + }) + .then(bundle => { + return bundle.write({ + dest, + format: 'cjs' + }); + }) + .then(() => { + assert.deepEqual(result, [ + { a: dest, format: 'cjs' }, + { b: dest, format: 'cjs' } + ]); + + return sander.unlink(dest); + }); + }); +}); diff --git a/test/incremental/index.js b/test/incremental/index.js new file mode 100644 index 00000000000..95fd9f791e9 --- /dev/null +++ b/test/incremental/index.js @@ -0,0 +1,237 @@ +const assert = require('assert'); +const acorn = require('acorn'); +const rollup = require('../../dist/rollup'); + +describe('incremental', () => { + function executeBundle(bundle) { + return bundle + .generate({ + format: 'cjs' + }) + .then(cjs => { + const m = new Function('module', 'exports', cjs.code); + + const module = { exports: {} }; + m(module, module.exports); + + return module.exports; + }); + } + + let resolveIdCalls; + let transformCalls; + let modules; + + const plugin = { + resolveId: id => { + resolveIdCalls += 1; + return id; + }, + + load: id => { + return modules[id]; + }, + + transform: code => { + transformCalls += 1; + return code; + } + }; + + beforeEach(() => { + resolveIdCalls = 0; + transformCalls = 0; + + modules = { + entry: `import foo from 'foo'; export default foo;`, + foo: `export default 42`, + bar: `export default 21` + }; + }); + + it('does not resolves id and transforms in the second time', () => { + return rollup + .rollup({ + entry: 'entry', + plugins: [plugin] + }) + .then(bundle => { + assert.equal(resolveIdCalls, 2); + assert.equal(transformCalls, 2); + return rollup.rollup({ + entry: 'entry', + plugins: [plugin], + cache: bundle + }); + }) + .then(bundle => { + assert.equal(resolveIdCalls, 3); // +1 for entry point which is resolved every time + assert.equal(transformCalls, 2); + + return executeBundle(bundle); + }) + .then(result => { + assert.equal(result, 42); + }); + }); + + it('transforms modified sources', () => { + let cache; + + return rollup + .rollup({ + entry: 'entry', + plugins: [plugin] + }) + .then(bundle => { + assert.equal(transformCalls, 2); + + return executeBundle(bundle).then(result => { + assert.equal(result, 42); + + modules.foo = `export default 43`; + cache = bundle; + }); + }) + .then(() => { + return rollup.rollup({ + entry: 'entry', + plugins: [plugin], + cache + }); + }) + .then(bundle => { + assert.equal(transformCalls, 3); + + return executeBundle(bundle); + }) + .then(result => { + assert.equal(result, 43); + }); + }); + + it('resolves id of new imports', () => { + let cache; + + return rollup + .rollup({ + entry: 'entry', + plugins: [plugin] + }) + .then(bundle => { + assert.equal(resolveIdCalls, 2); + + return executeBundle(bundle).then(result => { + assert.equal(result, 42); + + modules.entry = `import bar from 'bar'; export default bar;`; + cache = bundle; + }); + }) + .then(() => { + return rollup.rollup({ + entry: 'entry', + plugins: [plugin], + cache + }); + }) + .then(bundle => { + assert.equal(resolveIdCalls, 4); + + return executeBundle(bundle); + }) + .then(result => { + assert.equal(result, 21); + }); + }); + + it('keeps ASTs between runs', () => { + return rollup + .rollup({ + entry: 'entry', + plugins: [plugin] + }) + .then(bundle => { + const asts = {}; + bundle.modules.forEach(module => { + asts[module.id] = module.ast; + }); + + assert.deepEqual( + asts.entry, + acorn.parse(modules.entry, { sourceType: 'module' }) + ); + assert.deepEqual( + asts.foo, + acorn.parse(modules.foo, { sourceType: 'module' }) + ); + }); + }); + + it('recovers from errors', () => { + modules.entry = `import foo from 'foo'; import bar from 'bar'; export default foo + bar;`; + + return rollup + .rollup({ + entry: 'entry', + plugins: [plugin] + }) + .then(cache => { + modules.foo = `var 42 = nope;`; + + return rollup + .rollup({ + entry: 'entry', + plugins: [plugin], + cache + }) + .catch(err => { + return cache; + }); + }) + .then(cache => { + modules.foo = `export default 42;`; + + return rollup + .rollup({ + entry: 'entry', + plugins: [plugin], + cache + }) + .then(bundle => { + return executeBundle(bundle); + }) + .then(result => { + assert.equal(result, 63); + }); + }); + }); + + it('separates resolvedIds from resolvedExternalIds', () => { + modules = { + entry: `import foo from 'foo'; import external from 'external'; console.log(foo(external));`, + foo: `export default 42` + }; + + return rollup + .rollup({ + entry: 'entry', + external: ['external'], + plugins: [plugin] + }) + .then(bundle => { + assert.deepEqual(bundle.imports, ['external']); + + assert.equal(bundle.modules[0].id, 'foo'); + assert.equal(bundle.modules[1].id, 'entry'); + + assert.deepEqual(bundle.modules[1].resolvedIds, { + foo: 'foo' + }); + + assert.deepEqual(bundle.modules[1].resolvedExternalIds, { + external: 'external' + }); + }); + }); +}); diff --git a/test/leak/index.js b/test/leak/index.js index 6312f0ac1b0..791fd183897 100644 --- a/test/leak/index.js +++ b/test/leak/index.js @@ -1 +1,53 @@ -console.log(42); \ No newline at end of file +var path = require('path') +var rollup = require('../..') + +function test() { + var weak = require('weak'); + + var shouldCollect = false; + var isCollected = false; + + function onCollect () { + isCollected = true; + } + + var cache; + function run () { + return rollup.rollup({ + entry: path.resolve(__dirname, 'main.js'), + cache + }).then(function (bundle) { + weak(bundle, onCollect); + cache = bundle; + global.gc(); + if (shouldCollect && !isCollected) { + throw new Error('Memory leak detected') + } + shouldCollect = true; + }); + }; + + run() + .then(run) + .then(function () { + console.log('Success'); + }). + catch(function (err) { + console.error(err.message); + process.exit(1); + }); +} + +try { + require.resolve('weak'); + test(); +} catch (err) { + console.log('installing weak'); + require('child_process').exec('npm i --no-save --silent weak@1.0.1', function (err, stdout, stderr) { + if (err) { + console.log('failed to install weak'); + } else { + test(); + } + }); +} \ No newline at end of file diff --git a/test/leak/main.js b/test/leak/main.js new file mode 100644 index 00000000000..6312f0ac1b0 --- /dev/null +++ b/test/leak/main.js @@ -0,0 +1 @@ +console.log(42); \ No newline at end of file diff --git a/test/leak/test.js b/test/leak/test.js deleted file mode 100644 index 6b366f7228d..00000000000 --- a/test/leak/test.js +++ /dev/null @@ -1,53 +0,0 @@ -var path = require('path') -var rollup = require('../..') - -function test() { - var weak = require('weak'); - - var shouldCollect = false; - var isCollected = false; - - function onCollect () { - isCollected = true; - } - - var cache; - function run () { - return rollup.rollup({ - entry: path.resolve(__dirname, 'index.js'), - cache - }).then(function (bundle) { - weak(bundle, onCollect); - cache = bundle; - global.gc(); - if (shouldCollect && !isCollected) { - throw new Error('Memory leak detected') - } - shouldCollect = true; - }); - }; - - run() - .then(run) - .then(function () { - console.log('Success'); - }). - catch(function (err) { - console.error(err.message); - process.exit(1); - }); -} - -try { - require.resolve('weak'); - test(); -} catch (err) { - console.log('installing weak'); - require('child_process').exec('npm i --no-save --silent weak@1.0.1', function (err, stdout, stderr) { - if (err) { - console.log('failed to install weak'); - } else { - test(); - } - }); -} \ No newline at end of file diff --git a/test/misc/index.js b/test/misc/index.js new file mode 100644 index 00000000000..1eaab5c143c --- /dev/null +++ b/test/misc/index.js @@ -0,0 +1,240 @@ +const assert = require('assert'); +const rollup = require('../../dist/rollup'); +const { loader } = require('../utils.js'); + +describe('sanity checks', () => { + it('exists', () => { + assert.ok(!!rollup); + }); + + it('has a rollup method', () => { + assert.equal(typeof rollup.rollup, 'function'); + }); + + it('fails without options', () => { + return rollup + .rollup() + .then(() => { + throw new Error('Missing expected error'); + }) + .catch(err => { + assert.equal( + err.message, + 'You must supply an options object to rollup' + ); + }); + }); + + it('fails without options.entry', () => { + return rollup + .rollup({}) + .then(() => { + throw new Error('Missing expected error'); + }) + .catch(err => { + assert.equal(err.message, 'You must supply options.entry to rollup'); + }); + }); + + it('fails with invalid keys', () => { + return rollup.rollup({ entry: 'x', plUgins: [] }).then( + () => { + throw new Error('Missing expected error'); + }, + err => { + assert.equal( + err.message, + "Unexpected key 'plUgins' found, expected one of: acorn, amd, banner, cache, context, dest, entry, exports, extend, external, footer, format, globals, indent, interop, intro, legacy, moduleContext, moduleName, noConflict, onwarn, outro, paths, plugins, preferConst, pureExternalModules, sourceMap, sourceMapFile, targets, treeshake, useStrict, watch" + ); + } + ); + }); + + it('treats Literals as leaf nodes, even if first literal encountered is null', () => { + // this test has to be up here, otherwise the bug doesn't have + // an opportunity to present itself + return rollup.rollup({ + entry: 'x', + plugins: [loader({ x: `var a = null; a = 'a string';` })] + }); + }); + + it('includes a newline at the end of the bundle', () => { + return rollup + .rollup({ + entry: 'x', + plugins: [loader({ x: `console.log( 42 );` })] + }) + .then(bundle => { + return bundle.generate({ format: 'iife' }); + }) + .then(({ code }) => { + assert.ok(code[code.length - 1] === '\n'); + }); + }); + + it('throws on missing format option', () => { + const warnings = []; + + return rollup + .rollup({ + entry: 'x', + plugins: [loader({ x: `console.log( 42 );` })], + onwarn: warning => warnings.push(warning) + }) + .then(bundle => { + assert.throws(() => { + bundle.generate(); + }, /You must supply an output format/); + }); + }); +}); + +describe('deprecations', () => { + it('throws a useful error on accessing code/map properties of bundle.generate promise', () => { + return rollup + .rollup({ + entry: 'x', + plugins: [loader({ x: `console.log( 42 );` })] + }) + .then(bundle => { + let errored = false; + + try { + const { code, map } = bundle.generate({ format: 'es' }); + console.log(code, map); + } catch (err) { + assert.equal( + err.message, + `bundle.generate(...) now returns a Promise instead of a { code, map } object` + ); + errored = true; + } + + assert.ok(errored); + }); + }); +}); + +describe('bundle.write()', () => { + it('fails without options or options.dest', () => { + return rollup + .rollup({ + entry: 'x', + plugins: [ + { + resolveId: () => { + return 'test'; + }, + load: () => { + return '// empty'; + } + } + ] + }) + .then(bundle => { + assert.throws(() => { + bundle.write(); + }, /must supply options\.dest/); + + assert.throws(() => { + bundle.write({}); + }, /must supply options\.dest/); + }); + }); + + it('expects options.moduleName for IIFE and UMD bundles', () => { + let bundle; + + return rollup + .rollup({ + entry: 'x', + plugins: [ + { + resolveId: () => { + return 'test'; + }, + load: () => { + return 'export var foo = 42;'; + } + } + ] + }) + .then(rollupInstance => { + bundle = rollupInstance; + return bundle.generate({ + format: 'umd' + }); + }) + .catch(err => { + assert.throws(() => { + throw err; + }, /You must supply options\.moduleName for UMD bundles/); + }) + .then(() => { + return bundle.generate({ + format: 'iife' + }); + }) + .catch(err => { + assert.throws(() => { + throw err; + }, /You must supply options\.moduleName for IIFE bundles/); + }); + }); + + it('throws on es6 format', () => { + return rollup + .rollup({ + entry: 'x', + plugins: [ + { + resolveId: () => { + return 'test'; + }, + load: () => { + return '// empty'; + } + } + ] + }) + .then(bundle => { + assert.throws(() => { + return bundle.generate({ format: 'es6' }); + }, /The `es6` output format is deprecated – use `es` instead/); + }); + }); +}); + +describe('misc', () => { + it('warns if node builtins are unresolved in a non-CJS, non-ES bundle (#1051)', () => { + const warnings = []; + + return rollup + .rollup({ + entry: 'entry', + plugins: [ + loader({ + entry: `import { format } from 'util';\nexport default format( 'this is a %s', 'formatted string' );` + }) + ], + onwarn: warning => warnings.push(warning) + }) + .then(bundle => + bundle.generate({ + format: 'iife', + moduleName: 'myBundle' + }) + ) + .then(() => { + const relevantWarnings = warnings.filter( + warning => warning.code === 'MISSING_NODE_BUILTINS' + ); + assert.equal(relevantWarnings.length, 1); + assert.equal( + relevantWarnings[0].message, + `Creating a browser bundle that depends on Node.js built-in module ('util'). You might need to include https://www.npmjs.com/package/rollup-plugin-node-builtins` + ); + }); + }); +}); diff --git a/test/utils/getLocation.js b/test/sourcemaps/getLocation.js similarity index 100% rename from test/utils/getLocation.js rename to test/sourcemaps/getLocation.js diff --git a/test/sourcemaps/index.js b/test/sourcemaps/index.js new file mode 100644 index 00000000000..36b380370fe --- /dev/null +++ b/test/sourcemaps/index.js @@ -0,0 +1,77 @@ +const path = require('path'); +const sander = require('sander'); +const rollup = require('../../dist/rollup'); +const { compareWarnings, extend, loadConfig } = require('../utils.js'); + +const samples = path.resolve(__dirname, 'samples'); + +const FORMATS = ['amd', 'cjs', 'es', 'iife', 'umd']; + +describe('sourcemaps', () => { + sander.readdirSync(samples).sort().forEach(dir => { + if (dir[0] === '.') return; // .DS_Store... + + describe(dir, () => { + const config = loadConfig(samples + '/' + dir + '/_config.js'); + + const entry = path.resolve(samples, dir, 'main.js'); + const dest = path.resolve(samples, dir, '_actual/bundle'); + + let warnings; + + const options = extend({}, config.options, { + entry, + onwarn: warning => warnings.push(warning) + }); + + FORMATS.forEach(format => { + (config.skip ? it.skip : config.solo ? it.only : it)( + 'generates ' + format, + () => { + warnings = []; + + const testBundle = bundle => { + const options = extend( + {}, + { + format, + sourceMap: true, + dest: `${dest}.${format}.js` + }, + config.options + ); + + bundle.write(options); + + bundle.generate(options).then(({ code, map }) => { + if (config.test) { + config.test(code, map, { format }); + } + + if (config.warnings) { + compareWarnings(warnings, config.warnings); + } else if (warnings.length) { + throw new Error(`Unexpected warnings`); + } + }); + }; + + return rollup.rollup(options).then(bundle => { + testBundle(bundle); + // cache rebuild does not reemit warnings. + if (config.warnings) { + return; + } + // test cache noop rebuild + return rollup + .rollup(extend({ cache: bundle }, options)) + .then(bundle => { + testBundle(bundle); + }); + }); + } + ); + }); + }); + }); +}); diff --git a/test/sourcemaps/basic-support/_config.js b/test/sourcemaps/samples/basic-support/_config.js similarity index 95% rename from test/sourcemaps/basic-support/_config.js rename to test/sourcemaps/samples/basic-support/_config.js index 53a452630af..76922f7a892 100644 --- a/test/sourcemaps/basic-support/_config.js +++ b/test/sourcemaps/samples/basic-support/_config.js @@ -1,5 +1,5 @@ var assert = require( 'assert' ); -var getLocation = require( '../../utils/getLocation' ); +var getLocation = require( '../../getLocation' ); var SourceMapConsumer = require( 'source-map' ).SourceMapConsumer; module.exports = { diff --git a/test/sourcemaps/basic-support/bar.js b/test/sourcemaps/samples/basic-support/bar.js similarity index 100% rename from test/sourcemaps/basic-support/bar.js rename to test/sourcemaps/samples/basic-support/bar.js diff --git a/test/sourcemaps/basic-support/foo.js b/test/sourcemaps/samples/basic-support/foo.js similarity index 100% rename from test/sourcemaps/basic-support/foo.js rename to test/sourcemaps/samples/basic-support/foo.js diff --git a/test/sourcemaps/basic-support/main.js b/test/sourcemaps/samples/basic-support/main.js similarity index 100% rename from test/sourcemaps/basic-support/main.js rename to test/sourcemaps/samples/basic-support/main.js diff --git a/test/sourcemaps/excludes-plugin-helpers/_config.js b/test/sourcemaps/samples/excludes-plugin-helpers/_config.js similarity index 100% rename from test/sourcemaps/excludes-plugin-helpers/_config.js rename to test/sourcemaps/samples/excludes-plugin-helpers/_config.js diff --git a/test/sourcemaps/excludes-plugin-helpers/helper.js b/test/sourcemaps/samples/excludes-plugin-helpers/helper.js similarity index 100% rename from test/sourcemaps/excludes-plugin-helpers/helper.js rename to test/sourcemaps/samples/excludes-plugin-helpers/helper.js diff --git a/test/sourcemaps/excludes-plugin-helpers/main.js b/test/sourcemaps/samples/excludes-plugin-helpers/main.js similarity index 100% rename from test/sourcemaps/excludes-plugin-helpers/main.js rename to test/sourcemaps/samples/excludes-plugin-helpers/main.js diff --git a/test/sourcemaps/loaders/_config.js b/test/sourcemaps/samples/loaders/_config.js similarity index 97% rename from test/sourcemaps/loaders/_config.js rename to test/sourcemaps/samples/loaders/_config.js index 57ff117f3c6..d177550c35d 100644 --- a/test/sourcemaps/loaders/_config.js +++ b/test/sourcemaps/samples/loaders/_config.js @@ -1,7 +1,7 @@ var buble = require( 'buble' ); var fs = require( 'fs' ); var assert = require( 'assert' ); -var getLocation = require( '../../utils/getLocation' ); +var getLocation = require( '../../getLocation' ); var SourceMapConsumer = require( 'source-map' ).SourceMapConsumer; module.exports = { diff --git a/test/sourcemaps/loaders/bar.js b/test/sourcemaps/samples/loaders/bar.js similarity index 100% rename from test/sourcemaps/loaders/bar.js rename to test/sourcemaps/samples/loaders/bar.js diff --git a/test/sourcemaps/loaders/foo.js b/test/sourcemaps/samples/loaders/foo.js similarity index 100% rename from test/sourcemaps/loaders/foo.js rename to test/sourcemaps/samples/loaders/foo.js diff --git a/test/sourcemaps/loaders/main.js b/test/sourcemaps/samples/loaders/main.js similarity index 100% rename from test/sourcemaps/loaders/main.js rename to test/sourcemaps/samples/loaders/main.js diff --git a/test/sourcemaps/names-transformed/_config.js b/test/sourcemaps/samples/names-transformed/_config.js similarity index 96% rename from test/sourcemaps/names-transformed/_config.js rename to test/sourcemaps/samples/names-transformed/_config.js index 29695311723..85929b5c267 100644 --- a/test/sourcemaps/names-transformed/_config.js +++ b/test/sourcemaps/samples/names-transformed/_config.js @@ -1,7 +1,7 @@ var assert = require( 'assert' ); var uglify = require( 'uglify-js' ); var MagicString = require( 'magic-string' ); -var getLocation = require( '../../utils/getLocation' ); +var getLocation = require( '../../getLocation' ); var SourceMapConsumer = require( 'source-map' ).SourceMapConsumer; module.exports = { diff --git a/test/sourcemaps/names-transformed/a.js b/test/sourcemaps/samples/names-transformed/a.js similarity index 100% rename from test/sourcemaps/names-transformed/a.js rename to test/sourcemaps/samples/names-transformed/a.js diff --git a/test/sourcemaps/names-transformed/b.js b/test/sourcemaps/samples/names-transformed/b.js similarity index 100% rename from test/sourcemaps/names-transformed/b.js rename to test/sourcemaps/samples/names-transformed/b.js diff --git a/test/sourcemaps/names-transformed/main.js b/test/sourcemaps/samples/names-transformed/main.js similarity index 100% rename from test/sourcemaps/names-transformed/main.js rename to test/sourcemaps/samples/names-transformed/main.js diff --git a/test/sourcemaps/names/_config.js b/test/sourcemaps/samples/names/_config.js similarity index 93% rename from test/sourcemaps/names/_config.js rename to test/sourcemaps/samples/names/_config.js index ce0bccb234e..0c5a44ed9fa 100644 --- a/test/sourcemaps/names/_config.js +++ b/test/sourcemaps/samples/names/_config.js @@ -1,5 +1,5 @@ var assert = require( 'assert' ); -var getLocation = require( '../../utils/getLocation' ); +var getLocation = require( '../../getLocation' ); var SourceMapConsumer = require( 'source-map' ).SourceMapConsumer; module.exports = { diff --git a/test/sourcemaps/names/bar.js b/test/sourcemaps/samples/names/bar.js similarity index 100% rename from test/sourcemaps/names/bar.js rename to test/sourcemaps/samples/names/bar.js diff --git a/test/sourcemaps/names/foo.js b/test/sourcemaps/samples/names/foo.js similarity index 100% rename from test/sourcemaps/names/foo.js rename to test/sourcemaps/samples/names/foo.js diff --git a/test/sourcemaps/names/main.js b/test/sourcemaps/samples/names/main.js similarity index 100% rename from test/sourcemaps/names/main.js rename to test/sourcemaps/samples/names/main.js diff --git a/test/sourcemaps/reified-namespace/_config.js b/test/sourcemaps/samples/reified-namespace/_config.js similarity index 92% rename from test/sourcemaps/reified-namespace/_config.js rename to test/sourcemaps/samples/reified-namespace/_config.js index 8870098b7d1..a9385e72ae6 100644 --- a/test/sourcemaps/reified-namespace/_config.js +++ b/test/sourcemaps/samples/reified-namespace/_config.js @@ -1,7 +1,7 @@ const fs = require( 'fs' ); const path = require( 'path' ); const assert = require( 'assert' ); -const getLocation = require( '../../utils/getLocation' ); +const getLocation = require( '../../getLocation' ); const SourceMapConsumer = require( 'source-map' ).SourceMapConsumer; module.exports = { diff --git a/test/sourcemaps/reified-namespace/foo.js b/test/sourcemaps/samples/reified-namespace/foo.js similarity index 100% rename from test/sourcemaps/reified-namespace/foo.js rename to test/sourcemaps/samples/reified-namespace/foo.js diff --git a/test/sourcemaps/reified-namespace/main.js b/test/sourcemaps/samples/reified-namespace/main.js similarity index 100% rename from test/sourcemaps/reified-namespace/main.js rename to test/sourcemaps/samples/reified-namespace/main.js diff --git a/test/sourcemaps/relative-paths/_config.js b/test/sourcemaps/samples/relative-paths/_config.js similarity index 100% rename from test/sourcemaps/relative-paths/_config.js rename to test/sourcemaps/samples/relative-paths/_config.js diff --git a/test/sourcemaps/relative-paths/main.js b/test/sourcemaps/samples/relative-paths/main.js similarity index 100% rename from test/sourcemaps/relative-paths/main.js rename to test/sourcemaps/samples/relative-paths/main.js diff --git a/test/sourcemaps/single-length-segments/_config.js b/test/sourcemaps/samples/single-length-segments/_config.js similarity index 95% rename from test/sourcemaps/single-length-segments/_config.js rename to test/sourcemaps/samples/single-length-segments/_config.js index 76d47e08828..386d834d793 100644 --- a/test/sourcemaps/single-length-segments/_config.js +++ b/test/sourcemaps/samples/single-length-segments/_config.js @@ -1,7 +1,7 @@ var fs = require( 'fs' ); var path = require( 'path' ); var assert = require( 'assert' ); -var getLocation = require( '../../utils/getLocation' ); +var getLocation = require( '../../getLocation' ); var SourceMapConsumer = require( 'source-map' ).SourceMapConsumer; var original = fs.readFileSync( path.resolve( __dirname, 'main.js' ), 'utf-8' ); diff --git a/test/sourcemaps/single-length-segments/main.js b/test/sourcemaps/samples/single-length-segments/main.js similarity index 100% rename from test/sourcemaps/single-length-segments/main.js rename to test/sourcemaps/samples/single-length-segments/main.js diff --git a/test/sourcemaps/single-length-segments/output.js b/test/sourcemaps/samples/single-length-segments/output.js similarity index 100% rename from test/sourcemaps/single-length-segments/output.js rename to test/sourcemaps/samples/single-length-segments/output.js diff --git a/test/sourcemaps/single-length-segments/output.js.map b/test/sourcemaps/samples/single-length-segments/output.js.map similarity index 100% rename from test/sourcemaps/single-length-segments/output.js.map rename to test/sourcemaps/samples/single-length-segments/output.js.map diff --git a/test/sourcemaps/sourcemap-file/_config.js b/test/sourcemaps/samples/sourcemap-file/_config.js similarity index 100% rename from test/sourcemaps/sourcemap-file/_config.js rename to test/sourcemaps/samples/sourcemap-file/_config.js diff --git a/test/sourcemaps/sourcemap-file/main.js b/test/sourcemaps/samples/sourcemap-file/main.js similarity index 100% rename from test/sourcemaps/sourcemap-file/main.js rename to test/sourcemaps/samples/sourcemap-file/main.js diff --git a/test/sourcemaps/transform-bundle-babili/_config.js b/test/sourcemaps/samples/transform-bundle-babili/_config.js similarity index 94% rename from test/sourcemaps/transform-bundle-babili/_config.js rename to test/sourcemaps/samples/transform-bundle-babili/_config.js index 88b139a9200..3a15c5529dd 100644 --- a/test/sourcemaps/transform-bundle-babili/_config.js +++ b/test/sourcemaps/samples/transform-bundle-babili/_config.js @@ -1,6 +1,6 @@ var babiliResults = require( './babili-results' ); var assert = require( 'assert' ); -var getLocation = require( '../../utils/getLocation' ); +var getLocation = require( '../../getLocation' ); var SourceMapConsumer = require( 'source-map' ).SourceMapConsumer; module.exports = { diff --git a/test/sourcemaps/transform-bundle-babili/babili-results.js b/test/sourcemaps/samples/transform-bundle-babili/babili-results.js similarity index 100% rename from test/sourcemaps/transform-bundle-babili/babili-results.js rename to test/sourcemaps/samples/transform-bundle-babili/babili-results.js diff --git a/test/sourcemaps/transform-bundle-babili/main.js b/test/sourcemaps/samples/transform-bundle-babili/main.js similarity index 100% rename from test/sourcemaps/transform-bundle-babili/main.js rename to test/sourcemaps/samples/transform-bundle-babili/main.js diff --git a/test/sourcemaps/transform-bundle/_config.js b/test/sourcemaps/samples/transform-bundle/_config.js similarity index 94% rename from test/sourcemaps/transform-bundle/_config.js rename to test/sourcemaps/samples/transform-bundle/_config.js index a74f390e1b5..87975f7d2a8 100644 --- a/test/sourcemaps/transform-bundle/_config.js +++ b/test/sourcemaps/samples/transform-bundle/_config.js @@ -1,6 +1,6 @@ var uglify = require( 'uglify-js' ); var assert = require( 'assert' ); -var getLocation = require( '../../utils/getLocation' ); +var getLocation = require( '../../getLocation' ); var SourceMapConsumer = require( 'source-map' ).SourceMapConsumer; module.exports = { diff --git a/test/sourcemaps/transform-bundle/main.js b/test/sourcemaps/samples/transform-bundle/main.js similarity index 100% rename from test/sourcemaps/transform-bundle/main.js rename to test/sourcemaps/samples/transform-bundle/main.js diff --git a/test/sourcemaps/transform-without-sourcemap/_config.js b/test/sourcemaps/samples/transform-without-sourcemap/_config.js similarity index 100% rename from test/sourcemaps/transform-without-sourcemap/_config.js rename to test/sourcemaps/samples/transform-without-sourcemap/_config.js diff --git a/test/sourcemaps/transform-without-sourcemap/main.js b/test/sourcemaps/samples/transform-without-sourcemap/main.js similarity index 100% rename from test/sourcemaps/transform-without-sourcemap/main.js rename to test/sourcemaps/samples/transform-without-sourcemap/main.js diff --git a/test/sourcemaps/transforms/_config.js b/test/sourcemaps/samples/transforms/_config.js similarity index 95% rename from test/sourcemaps/transforms/_config.js rename to test/sourcemaps/samples/transforms/_config.js index 77b9354975f..14c1d99f2ca 100644 --- a/test/sourcemaps/transforms/_config.js +++ b/test/sourcemaps/samples/transforms/_config.js @@ -1,7 +1,7 @@ var buble = require( 'buble' ); var MagicString = require( 'magic-string' ); var assert = require( 'assert' ); -var getLocation = require( '../../utils/getLocation' ); +var getLocation = require( '../../getLocation' ); var SourceMapConsumer = require( 'source-map' ).SourceMapConsumer; module.exports = { diff --git a/test/sourcemaps/transforms/foo.js b/test/sourcemaps/samples/transforms/foo.js similarity index 100% rename from test/sourcemaps/transforms/foo.js rename to test/sourcemaps/samples/transforms/foo.js diff --git a/test/sourcemaps/transforms/main.js b/test/sourcemaps/samples/transforms/main.js similarity index 100% rename from test/sourcemaps/transforms/main.js rename to test/sourcemaps/samples/transforms/main.js diff --git a/test/sourcemaps/untransformed-modules/_config.js b/test/sourcemaps/samples/untransformed-modules/_config.js similarity index 100% rename from test/sourcemaps/untransformed-modules/_config.js rename to test/sourcemaps/samples/untransformed-modules/_config.js diff --git a/test/sourcemaps/untransformed-modules/foo.js b/test/sourcemaps/samples/untransformed-modules/foo.js similarity index 100% rename from test/sourcemaps/untransformed-modules/foo.js rename to test/sourcemaps/samples/untransformed-modules/foo.js diff --git a/test/sourcemaps/untransformed-modules/main.js b/test/sourcemaps/samples/untransformed-modules/main.js similarity index 100% rename from test/sourcemaps/untransformed-modules/main.js rename to test/sourcemaps/samples/untransformed-modules/main.js diff --git a/test/test.js b/test/test.js index 6441ce28541..ef5f9091eff 100644 --- a/test/test.js +++ b/test/test.js @@ -1,1226 +1,16 @@ -require( 'source-map-support' ).install(); -require( 'console-group' ).install(); - -const path = require( 'path' ); -const sander = require( 'sander' ); -const assert = require( 'assert' ); -const { exec } = require( 'child_process' ); -const buble = require( 'buble' ); -const acorn = require( 'acorn' ); -const rollup = require( '../dist/rollup' ); - -const FUNCTION = path.resolve( __dirname, 'function' ); -const FORM = path.resolve( __dirname, 'form' ); -const SOURCEMAPS = path.resolve( __dirname, 'sourcemaps' ); -const CLI = path.resolve( __dirname, 'cli' ); - -const cwd = process.cwd(); - -const PROFILES = [ - { format: 'amd' }, - { format: 'cjs' }, - { format: 'es' }, - { format: 'iife' }, - { format: 'umd' } -]; - -function extend ( target ) { - [].slice.call( arguments, 1 ).forEach( source => { - source && Object.keys( source ).forEach( key => { - target[ key ] = source[ key ]; - }); - }); - - return target; -} - -function normaliseOutput ( code ) { - return code.toString().trim().replace( /\r\n/g, '\n' ); -} - -function loadConfig ( path ) { - try { - return require( path ); - } catch ( err ) { - console.error( err.message ); - console.error( err.stack ); - throw new Error( `Failed to load ${path}. An old test perhaps? You should probably delete the directory` ); - } -} - -function loader ( modules ) { - return { - resolveId ( id ) { - return id in modules ? id : null; - }, - - load ( id ) { - return modules[ id ]; - } - }; -} - -function deindent ( str ) { - return str.slice( 1 ).replace( /^\t+/gm, '' ).replace( /\s+$/gm, '' ).trim(); -} - -function compareWarnings ( actual, expected ) { - assert.deepEqual( - actual.map( warning => { - const clone = Object.assign( {}, warning ); - delete clone.toString; - - if ( clone.frame ) { - clone.frame = clone.frame.replace( /\s+$/gm, '' ); - } - - return clone; - }), - expected.map( warning => { - if ( warning.frame ) { - warning.frame = deindent( warning.frame ); - } - return warning; - }) - ); -} - -function compareError ( actual, expected ) { - delete actual.stack; - actual = Object.assign( {}, actual, { - message: actual.message - }); - - if ( actual.frame ) { - actual.frame = actual.frame.replace( /\s+$/gm, '' ); - } - - if ( expected.frame ) { - expected.frame = deindent( expected.frame ); - } - - assert.deepEqual( actual, expected ); -} - -function wait ( ms ) { - return new Promise( fulfil => { - setTimeout( fulfil, ms ); - }); -} - -describe( 'rollup', function () { - this.timeout( 10000 ); - - describe( 'sanity checks', () => { - it( 'exists', () => { - assert.ok( !!rollup ); - }); - - it( 'has a rollup method', () => { - assert.equal( typeof rollup.rollup, 'function' ); - }); - - it( 'fails without options', () => { - return rollup.rollup() - .then( () => { - throw new Error( 'Missing expected error' ); - }) - .catch( err => { - assert.equal( err.message, 'You must supply an options object to rollup' ); - }); - }); - - it( 'fails without options.entry', () => { - return rollup.rollup({}) - .then( () => { - throw new Error( 'Missing expected error' ); - }) - .catch( err => { - assert.equal( err.message, 'You must supply options.entry to rollup' ); - }); - }); - - it( 'fails with invalid keys', () => { - return rollup.rollup({ entry: 'x', plUgins: [] }).then( () => { - throw new Error( 'Missing expected error' ); - }, err => { - assert.equal( err.message, 'Unexpected key \'plUgins\' found, expected one of: acorn, amd, banner, cache, context, dest, entry, exports, extend, external, footer, format, globals, indent, interop, intro, legacy, moduleContext, moduleName, noConflict, onwarn, outro, paths, plugins, preferConst, pureExternalModules, sourceMap, sourceMapFile, targets, treeshake, useStrict, watch' ); - }); - }); - - it( 'treats Literals as leaf nodes, even if first literal encountered is null', () => { - // this test has to be up here, otherwise the bug doesn't have - // an opportunity to present itself - return rollup.rollup({ - entry: 'x', - plugins: [ loader({ x: `var a = null; a = 'a string';` }) ] - }); - }); - - it( 'includes a newline at the end of the bundle', () => { - return rollup.rollup({ - entry: 'x', - plugins: [ loader({ x: `console.log( 42 );` }) ] - }).then( bundle => { - return bundle.generate({ format: 'iife' }); - }).then( ({ code }) => { - assert.ok( code[ code.length - 1 ] === '\n' ); - }); - }); - - it( 'throws on missing format option', () => { - const warnings = []; - - return rollup.rollup({ - entry: 'x', - plugins: [ loader({ x: `console.log( 42 );` }) ], - onwarn: warning => warnings.push( warning ) - }).then( bundle => { - assert.throws(() => { - bundle.generate(); - }, /You must supply an output format/ ); - }); - }); - }); - - describe( 'deprecations', () => { - it( 'throws a useful error on accessing code/map properties of bundle.generate promise', () => { - return rollup.rollup({ - entry: 'x', - plugins: [ loader({ x: `console.log( 42 );` }) ] - }).then( bundle => { - let errored = false; - - try { - const { code, map } = bundle.generate({ format: 'es' }); - console.log( code, map ); - } catch ( err ) { - assert.equal( err.message, `bundle.generate(...) now returns a Promise instead of a { code, map } object` ); - errored = true; - } - - assert.ok( errored ); - }); - }); - }); - - describe( 'bundle.write()', () => { - it( 'fails without options or options.dest', () => { - return rollup.rollup({ - entry: 'x', - plugins: [{ - resolveId: () => { return 'test'; }, - load: () => { - return '// empty'; - } - }] - }).then( bundle => { - assert.throws( () => { - bundle.write(); - }, /must supply options\.dest/ ); - - assert.throws( () => { - bundle.write({}); - }, /must supply options\.dest/ ); - }); - }); - - it( 'expects options.moduleName for IIFE and UMD bundles', () => { - let bundle; - - return rollup.rollup({ - entry: 'x', - plugins: [{ - resolveId: () => { return 'test'; }, - load: () => { - return 'export var foo = 42;'; - } - }] - }).then( rollupInstance => { - bundle = rollupInstance; - return bundle.generate({ - format: 'umd' - }); - }).catch( err => { - assert.throws( () => { - throw err; - }, /You must supply options\.moduleName for UMD bundles/ ); - }).then( () => { - return bundle.generate({ - format: 'iife' - }); - }).catch( err => { - assert.throws( () => { - throw err; - }, /You must supply options\.moduleName for IIFE bundles/ ); - }); - }); - - it( 'throws on es6 format', () => { - return rollup.rollup({ - entry: 'x', - plugins: [{ - resolveId: () => { return 'test'; }, - load: () => { - return '// empty'; - } - }] - }).then( bundle => { - assert.throws(() => { - return bundle.generate({ format: 'es6' }); - }, /The `es6` output format is deprecated – use `es` instead/); - }); - }); - }); - - describe( 'function', () => { - sander.readdirSync( FUNCTION ).sort().forEach( dir => { - if ( dir[0] === '.' ) return; // .DS_Store... - - const config = loadConfig( FUNCTION + '/' + dir + '/_config.js' ); - ( config.skip ? it.skip : config.solo ? it.only : it )( dir, () => { - process.chdir( FUNCTION + '/' + dir ); - - const warnings = []; - const captureWarning = msg => warnings.push( msg ); - - const options = extend( { - entry: FUNCTION + '/' + dir + '/main.js', - onwarn: captureWarning - }, config.options ); - - if ( config.solo ) console.group( dir ); - - return rollup.rollup( options ) - .then( bundle => { - let unintendedError; - - if ( config.error ) { - throw new Error( 'Expected an error while rolling up' ); - } - - let result; - - // try to generate output - return Promise.resolve().then( () => { - return bundle.generate( extend( {}, config.bundleOptions, { - format: 'cjs' - })); - }).then( code => { - if ( config.generateError ) { - unintendedError = new Error( 'Expected an error while generating output' ); - } - - result = code; - }).catch( err => { - if ( config.generateError ) { - compareError( err, config.generateError ); - } else { - unintendedError = err; - } - }).then( () => { - if ( unintendedError ) throw unintendedError; - if ( config.error || config.generateError ) return; - - let code = result.code; - - if ( config.buble ) { - code = buble.transform( code, { - transforms: { modules: false } - }).code; - } - - if ( config.code ) config.code( code ); - - const module = { - exports: {} - }; - - const context = extend({ require, module, assert, exports: module.exports }, config.context || {} ); - - const contextKeys = Object.keys( context ); - const contextValues = contextKeys.map( key => context[ key ] ); - - try { - const fn = new Function( contextKeys, code ); - fn.apply( {}, contextValues ); - - if ( config.runtimeError ) { - unintendedError = new Error( 'Expected an error while executing output' ); - } else { - if ( config.exports ) config.exports( module.exports ); - if ( config.bundle ) config.bundle( bundle ); - } - } catch ( err ) { - if ( config.runtimeError ) { - config.runtimeError( err ); - } else { - unintendedError = err; - } - } - - if ( config.show || unintendedError ) { - console.log( result.code + '\n\n\n' ); - } - - if ( config.warnings ) { - if ( Array.isArray( config.warnings ) ) { - compareWarnings( warnings, config.warnings ); - } else { - config.warnings( warnings ); - } - } else if ( warnings.length ) { - throw new Error( `Got unexpected warnings:\n${warnings.join('\n')}` ); - } - - if ( config.solo ) console.groupEnd(); - - if ( unintendedError ) throw unintendedError; - }); - }) - .catch( err => { - if ( config.error ) { - compareError( err, config.error ); - } else { - throw err; - } - }); - }); - }); - }); - - describe( 'form', () => { - sander.readdirSync( FORM ).sort().forEach( dir => { - if ( dir[0] === '.' ) return; // .DS_Store... - - const config = loadConfig( FORM + '/' + dir + '/_config.js' ); - - if ( config.skipIfWindows && process.platform === 'win32' ) return; - if ( !config.options ) { - config.options = {}; - } - if ( !( 'indent' in config.options ) ) { - config.options.indent = true; - } - - const options = extend( {}, { - entry: FORM + '/' + dir + '/main.js', - onwarn: msg => { - if ( /No name was provided for/.test( msg ) ) return; - if ( /as external dependency/.test( msg ) ) return; - console.error( msg ); - } - }, config.options ); - - ( config.skip ? describe.skip : config.solo ? describe.only : describe )( dir, () => { - let promise; - const createBundle = () => ( promise || ( promise = rollup.rollup( options ) ) ); - - PROFILES.forEach( profile => { - it( 'generates ' + profile.format, () => { - process.chdir( FORM + '/' + dir ); - - return createBundle().then( bundle => { - const options = extend( {}, config.options, { - dest: FORM + '/' + dir + '/_actual/' + profile.format + '.js', - format: profile.format - }); - - return bundle.write( options ).then( () => { - const actualCode = normaliseOutput( sander.readFileSync( FORM, dir, '_actual', profile.format + '.js' ) ); - let expectedCode; - let actualMap; - let expectedMap; - - try { - expectedCode = normaliseOutput( sander.readFileSync( FORM, dir, '_expected', profile.format + '.js' ) ); - } catch ( err ) { - expectedCode = 'missing file'; - } - - try { - actualMap = JSON.parse( sander.readFileSync( FORM, dir, '_actual', profile.format + '.js.map' ).toString() ); - actualMap.sourcesContent = actualMap.sourcesContent.map( normaliseOutput ); - } catch ( err ) { - assert.equal( err.code, 'ENOENT' ); - } - - try { - expectedMap = JSON.parse( sander.readFileSync( FORM, dir, '_expected', profile.format + '.js.map' ).toString() ); - expectedMap.sourcesContent = expectedMap.sourcesContent.map( normaliseOutput ); - } catch ( err ) { - assert.equal( err.code, 'ENOENT' ); - } - - if ( config.show ) { - console.log( actualCode + '\n\n\n' ); - } - - assert.equal( actualCode, expectedCode ); - assert.deepEqual( actualMap, expectedMap ); - }); - }); - }); - }); - }); - }); - }); - - describe( 'sourcemaps', () => { - sander.readdirSync( SOURCEMAPS ).sort().forEach( dir => { - if ( dir[0] === '.' ) return; // .DS_Store... - - describe( dir, () => { - process.chdir( SOURCEMAPS + '/' + dir ); - const config = loadConfig( SOURCEMAPS + '/' + dir + '/_config.js' ); - - const entry = path.resolve( SOURCEMAPS, dir, 'main.js' ); - const dest = path.resolve( SOURCEMAPS, dir, '_actual/bundle' ); - - let warnings; - - const options = extend( {}, config.options, { - entry, - onwarn: warning => warnings.push( warning ) - }); - - PROFILES.forEach( profile => { - ( config.skip ? it.skip : config.solo ? it.only : it )( 'generates ' + profile.format, () => { - process.chdir( SOURCEMAPS + '/' + dir ); - warnings = []; - - const testBundle = (bundle) => { - const options = extend( {}, { - format: profile.format, - sourceMap: true, - dest: `${dest}.${profile.format}.js` - }, config.options ); - - bundle.write( options ); - - bundle.generate( options ).then( ({ code, map }) => { - if ( config.test ) { - config.test( code, map, profile ); - } - - if ( config.warnings ) { - compareWarnings( warnings, config.warnings ); - } else if ( warnings.length ) { - throw new Error( `Unexpected warnings` ); - } - }); - }; - - return rollup.rollup( options ).then(bundle => { - testBundle(bundle); - // cache rebuild does not reemit warnings. - if ( config.warnings ) { - return; - } - // test cache noop rebuild - return rollup.rollup( extend({ cache: bundle }, options) ).then(bundle => { - testBundle(bundle); - }); - }); - }); - }); - }); - }); - }); - - describe( 'cli', () => { - sander.readdirSync( CLI ).sort().forEach( dir => { - if ( dir[0] === '.' ) return; // .DS_Store... - - describe( dir, () => { - const config = loadConfig( CLI + '/' + dir + '/_config.js' ); - - ( config.skip ? it.skip : config.solo ? it.only : it )( dir, done => { - process.chdir( config.cwd || path.resolve( CLI, dir ) ); - - const command = 'node ' + path.resolve( __dirname, '../bin' ) + path.sep + config.command; - - exec( command, {}, ( err, code, stderr ) => { - if ( err ) { - if ( config.error ) { - const shouldContinue = config.error( err ); - if (!shouldContinue) return done(); - } else { - throw err; - } - } - - if ( 'stderr' in config ) { - assert.equal( deindent( config.stderr ), stderr.trim() ); - } else if ( stderr ) { - console.error( stderr ); - } - - let unintendedError; - - if ( config.execute ) { - try { - if ( config.buble ) { - code = buble.transform( code, { - transforms: { modules: false } - }).code; - } - - const fn = new Function( 'require', 'module', 'exports', 'assert', code ); - const module = { - exports: {} - }; - fn( require, module, module.exports, assert ); - - if ( config.error ) { - unintendedError = new Error( 'Expected an error while executing output' ); - } - - if ( config.exports ) { - config.exports( module.exports ); - } - } catch ( err ) { - if ( config.error ) { - config.error( err ); - } else { - unintendedError = err; - } - } - - if ( config.show || unintendedError ) { - console.log( code + '\n\n\n' ); - } - - if ( config.solo ) console.groupEnd(); - - unintendedError ? done( unintendedError ) : done(); - } - - else if ( config.result ) { - try { - config.result( code ); - done(); - } catch ( err ) { - done( err ); - } - } - - else if ( sander.existsSync( '_expected' ) && sander.statSync( '_expected' ).isDirectory() ) { - let error = null; - sander.readdirSync( '_expected' ).forEach( child => { - const expected = sander.readFileSync( path.join( '_expected', child ) ).toString(); - const actual = sander.readFileSync( path.join( '_actual', child ) ).toString(); - try { - assert.equal( normaliseOutput( actual ), normaliseOutput( expected ) ); - } catch ( err ) { - error = err; - } - }); - done( error ); - } - - else { - const expected = sander.readFileSync( '_expected.js' ).toString(); - try { - assert.equal( normaliseOutput( code ), normaliseOutput( expected ) ); - done(); - } catch ( err ) { - done( err ); - } - } - }); - }); - }); - }); - }); - - describe( 'incremental', () => { - function executeBundle ( bundle ) { - return bundle.generate({ - format: 'cjs' - }).then( cjs => { - const m = new Function( 'module', 'exports', cjs.code ); - - const module = { exports: {} }; - m( module, module.exports ); - - return module.exports; - }); - } - - let resolveIdCalls; - let transformCalls; - let modules; - - const plugin = { - resolveId: id => { - resolveIdCalls += 1; - return id; - }, - - load: id => { - return modules[ id ]; - }, - - transform: code => { - transformCalls += 1; - return code; - } - }; - - beforeEach( () => { - resolveIdCalls = 0; - transformCalls = 0; - - modules = { - entry: `import foo from 'foo'; export default foo;`, - foo: `export default 42`, - bar: `export default 21` - }; - }); - - it('does not resolves id and transforms in the second time', () => { - return rollup.rollup({ - entry: 'entry', - plugins: [ plugin ] - }).then( bundle => { - assert.equal( resolveIdCalls, 2 ); - assert.equal( transformCalls, 2 ); - return rollup.rollup({ - entry: 'entry', - plugins: [ plugin ], - cache: bundle - }); - }).then( bundle => { - assert.equal( resolveIdCalls, 3 ); // +1 for entry point which is resolved every time - assert.equal( transformCalls, 2 ); - - return executeBundle( bundle ); - }).then( result => { - assert.equal( result, 42 ); - }); - }); - - it('transforms modified sources', () => { - let cache; - - return rollup.rollup({ - entry: 'entry', - plugins: [ plugin ] - }).then( bundle => { - assert.equal(transformCalls, 2); - - return executeBundle(bundle).then( result => { - assert.equal( result, 42 ); - - modules.foo = `export default 43`; - cache = bundle; - }); - }).then( () => { - return rollup.rollup({ - entry: 'entry', - plugins: [ plugin ], - cache - }); - }).then( bundle => { - assert.equal( transformCalls, 3 ); - - return executeBundle( bundle ); - }).then( result => { - assert.equal( result, 43 ); - }); - }); - - it('resolves id of new imports', () => { - let cache; - - return rollup.rollup({ - entry: 'entry', - plugins: [ plugin ] - }).then( bundle => { - assert.equal( resolveIdCalls, 2 ); - - return executeBundle( bundle ).then( result => { - assert.equal( result, 42 ); - - modules.entry = `import bar from 'bar'; export default bar;`; - cache = bundle; - }); - }).then( () => { - return rollup.rollup({ - entry: 'entry', - plugins: [ plugin ], - cache - }); - }).then( bundle => { - assert.equal( resolveIdCalls, 4 ); - - return executeBundle( bundle ); - }).then( result => { - assert.equal( result, 21 ); - }); - }); - - it( 'keeps ASTs between runs', () => { - return rollup.rollup({ - entry: 'entry', - plugins: [ plugin ] - }).then( bundle => { - const asts = {}; - bundle.modules.forEach( module => { - asts[ module.id ] = module.ast; - }); - - assert.deepEqual( asts.entry, acorn.parse( modules.entry, { sourceType: 'module' }) ); - assert.deepEqual( asts.foo, acorn.parse( modules.foo, { sourceType: 'module' }) ); - }); - }); - - it( 'recovers from errors', () => { - modules.entry = `import foo from 'foo'; import bar from 'bar'; export default foo + bar;`; - - return rollup.rollup({ - entry: 'entry', - plugins: [ plugin ] - }).then( cache => { - modules.foo = `var 42 = nope;`; - - return rollup.rollup({ - entry: 'entry', - plugins: [ plugin ], - cache - }).catch( err => { - return cache; - }); - }).then( cache => { - modules.foo = `export default 42;`; - - return rollup.rollup({ - entry: 'entry', - plugins: [ plugin ], - cache - }).then( bundle => { - return executeBundle( bundle ); - }).then( result => { - assert.equal( result, 63 ); - }); - }); - }); - - it( 'separates resolvedIds from resolvedExternalIds', () => { - modules = { - entry: `import foo from 'foo'; import external from 'external'; console.log(foo(external));`, - foo: `export default 42` - }; - - return rollup.rollup({ - entry: 'entry', - external: ['external'], - plugins: [ plugin ] - }).then( bundle => { - assert.deepEqual(bundle.imports, ['external']); - - assert.equal(bundle.modules[0].id, 'foo'); - assert.equal(bundle.modules[1].id, 'entry'); - - assert.deepEqual(bundle.modules[1].resolvedIds, { - foo: 'foo' - }); - - assert.deepEqual(bundle.modules[1].resolvedExternalIds, { - external: 'external' - }); - }); - }); - }); - - describe( 'hooks', () => { - it( 'passes bundle & output object to ongenerate & onwrite hooks', () => { - const dest = path.join( __dirname, 'tmp/bundle.js' ); - - return rollup.rollup({ - entry: 'entry', - plugins: [ - loader({ entry: `alert('hello')` }), - { - ongenerate ( bundle, out ) { - out.ongenerate = true; - }, - - onwrite (bundle, out ) { - assert.equal(out.ongenerate, true); - } - } - ] - }).then( bundle => { - return bundle.write({ - dest, - format: 'es' - }); - }).then( () => { - return sander.unlink( dest ); - }); - }); - - it( 'calls ongenerate hooks in sequence', () => { - const result = []; - - return rollup.rollup({ - entry: 'entry', - plugins: [ - loader({ entry: `alert('hello')` }), - { - ongenerate ( info ) { - result.push({ a: info.format }); - } - }, - { - ongenerate ( info ) { - result.push({ b: info.format }); - } - } - ] - }) - .then( bundle => bundle.generate({ format: 'cjs' })) - .then( () => { - assert.deepEqual( result, [ - { a: 'cjs' }, - { b: 'cjs' } - ]); - }); - }); - - it( 'calls onwrite hooks in sequence', () => { - const result = []; - const dest = path.join( __dirname, 'tmp/bundle.js' ); - - return rollup.rollup({ - entry: 'entry', - plugins: [ - loader({ entry: `alert('hello')` }), - { - onwrite ( info ) { - return new Promise( ( fulfil ) => { - result.push({ a: info.dest, format: info.format }); - fulfil(); - }); - } - }, - { - onwrite ( info ) { - result.push({ b: info.dest, format: info.format }); - } - } - ] - }).then( bundle => { - return bundle.write({ - dest, - format: 'cjs' - }); - }).then( () => { - assert.deepEqual( result, [ - { a: dest, format: 'cjs' }, - { b: dest, format: 'cjs' } - ]); - - return sander.unlink( dest ); - }); - }); - }); - - describe( 'misc', () => { - it( 'warns if node builtins are unresolved in a non-CJS, non-ES bundle (#1051)', () => { - const warnings = []; - - return rollup.rollup({ - entry: 'entry', - plugins: [ - loader({ entry: `import { format } from 'util';\nexport default format( 'this is a %s', 'formatted string' );` }) - ], - onwarn: warning => warnings.push( warning ) - }) - .then( bundle => bundle.generate({ - format: 'iife', - moduleName: 'myBundle' - })) - .then( () => { - const relevantWarnings = warnings.filter( warning => warning.code === 'MISSING_NODE_BUILTINS' ); - assert.equal( relevantWarnings.length, 1 ); - assert.equal( relevantWarnings[0].message, `Creating a browser bundle that depends on Node.js built-in module ('util'). You might need to include https://www.npmjs.com/package/rollup-plugin-node-builtins` ); - }); - }); - }); - - describe( 'rollup.watch', () => { - beforeEach( () => { - process.chdir(cwd); - return sander.rimraf( 'test/_tmp' ); - }); - - function run ( file ) { - const resolved = require.resolve( file ); - delete require.cache[ resolved ]; - return require( resolved ); - } - - function sequence ( watcher, events ) { - return new Promise( ( fulfil, reject ) => { - function go ( event ) { - const next = events.shift(); - - if ( !next ) { - fulfil(); - } - - else if ( typeof next === 'string' ) { - watcher.once( 'event', event => { - if ( event.code !== next ) { - reject( new Error( `Expected ${next} event, got ${event.code}` ) ); - } else { - go( event ); - } - }); - } - - else { - Promise.resolve() - .then( () => wait( 100 ) ) // gah, this appears to be necessary to fix random errors - .then( () => next( event ) ) - .then( go ) - .catch( reject ); - } - } - - go(); - }); - } - - describe( 'fs.watch', () => { - runTests( false ); - }); - - if ( !process.env.CI ) { - describe( 'chokidar', () => { - runTests( true ); - }); - } - - function runTests ( chokidar ) { - it( 'watches a file', () => { - return sander.copydir( 'test/watch/samples/basic' ).to( 'test/_tmp/input' ).then( () => { - const watcher = rollup.watch({ - entry: 'test/_tmp/input/main.js', - dest: 'test/_tmp/output/bundle.js', - format: 'cjs', - watch: { chokidar } - }); - - return sequence( watcher, [ - 'START', - 'BUNDLE_START', - 'BUNDLE_END', - 'END', - () => { - assert.equal( run( './_tmp/output/bundle.js' ), 42 ); - sander.writeFileSync( 'test/_tmp/input/main.js', 'export default 43;' ); - }, - 'START', - 'BUNDLE_START', - 'BUNDLE_END', - 'END', - () => { - assert.equal( run( './_tmp/output/bundle.js' ), 43 ); - watcher.close(); - } - ]); - }); - }); - - it( 'recovers from an error', () => { - return sander.copydir( 'test/watch/samples/basic' ).to( 'test/_tmp/input' ).then( () => { - const watcher = rollup.watch({ - entry: 'test/_tmp/input/main.js', - dest: 'test/_tmp/output/bundle.js', - format: 'cjs', - watch: { chokidar } - }); - - return sequence( watcher, [ - 'START', - 'BUNDLE_START', - 'BUNDLE_END', - 'END', - () => { - assert.equal( run( './_tmp/output/bundle.js' ), 42 ); - sander.writeFileSync( 'test/_tmp/input/main.js', 'export nope;' ); - }, - 'START', - 'BUNDLE_START', - 'ERROR', - () => { - sander.writeFileSync( 'test/_tmp/input/main.js', 'export default 43;' ); - }, - 'START', - 'BUNDLE_START', - 'BUNDLE_END', - 'END', - () => { - assert.equal( run( './_tmp/output/bundle.js' ), 43 ); - watcher.close(); - } - ]); - }); - }); - - it( 'recovers from an error even when erroring file was "renamed" (#38)', () => { - return sander.copydir( 'test/watch/samples/basic' ).to( 'test/_tmp/input' ).then( () => { - const watcher = rollup.watch({ - entry: 'test/_tmp/input/main.js', - dest: 'test/_tmp/output/bundle.js', - format: 'cjs', - watch: { chokidar } - }); - - return sequence( watcher, [ - 'START', - 'BUNDLE_START', - 'BUNDLE_END', - 'END', - () => { - assert.equal( run( './_tmp/output/bundle.js' ), 42 ); - sander.unlinkSync( 'test/_tmp/input/main.js' ); - sander.writeFileSync( 'test/_tmp/input/main.js', 'export nope;' ); - }, - 'START', - 'BUNDLE_START', - 'ERROR', - () => { - sander.unlinkSync( 'test/_tmp/input/main.js' ); - sander.writeFileSync( 'test/_tmp/input/main.js', 'export default 43;' ); - }, - 'START', - 'BUNDLE_START', - 'BUNDLE_END', - 'END', - () => { - assert.equal( run( './_tmp/output/bundle.js' ), 43 ); - watcher.close(); - } - ]); - }); - }); - - it( 'refuses to watch the output file (#15)', () => { - return sander.copydir( 'test/watch/samples/basic' ).to( 'test/_tmp/input' ).then( () => { - const watcher = rollup.watch({ - entry: 'test/_tmp/input/main.js', - dest: 'test/_tmp/output/bundle.js', - format: 'cjs', - watch: { chokidar } - }); - - return sequence( watcher, [ - 'START', - 'BUNDLE_START', - 'BUNDLE_END', - 'END', - () => { - assert.equal( run( './_tmp/output/bundle.js' ), 42 ); - sander.writeFileSync( 'test/_tmp/input/main.js', `import '../output/bundle.js'` ); - }, - 'START', - 'BUNDLE_START', - 'ERROR', - event => { - assert.equal( event.error.message, 'Cannot import the generated bundle' ); - sander.writeFileSync( 'test/_tmp/input/main.js', 'export default 43;' ); - }, - 'START', - 'BUNDLE_START', - 'BUNDLE_END', - 'END', - () => { - assert.equal( run( './_tmp/output/bundle.js' ), 43 ); - watcher.close(); - } - ]); - }); - }); - - it( 'ignores files that are not specified in options.watch.include, if given', () => { - return sander.copydir( 'test/watch/samples/ignored' ).to( 'test/_tmp/input' ).then( () => { - const watcher = rollup.watch({ - entry: 'test/_tmp/input/main.js', - dest: 'test/_tmp/output/bundle.js', - format: 'cjs', - watch: { - chokidar, - include: ['test/_tmp/input/+(main|foo).js'] - } - }); - - return sequence( watcher, [ - 'START', - 'BUNDLE_START', - 'BUNDLE_END', - 'END', - () => { - assert.deepEqual( run( './_tmp/output/bundle.js' ), { foo: 'foo-1', bar: 'bar-1' }); - sander.writeFileSync( 'test/_tmp/input/foo.js', `export default 'foo-2';` ); - }, - 'START', - 'BUNDLE_START', - 'BUNDLE_END', - 'END', - () => { - assert.deepEqual( run( './_tmp/output/bundle.js' ), { foo: 'foo-2', bar: 'bar-1' }); - sander.writeFileSync( 'test/_tmp/input/bar.js', `export default 'bar-2';` ); - }, - () => { - assert.deepEqual( run( './_tmp/output/bundle.js' ), { foo: 'foo-2', bar: 'bar-1' }); - watcher.close(); - } - ]); - }); - }); - - it( 'ignores files that are specified in options.watch.exclude, if given', () => { - return sander.copydir( 'test/watch/samples/ignored' ).to( 'test/_tmp/input' ).then( () => { - const watcher = rollup.watch({ - entry: 'test/_tmp/input/main.js', - dest: 'test/_tmp/output/bundle.js', - format: 'cjs', - watch: { - chokidar, - exclude: ['test/_tmp/input/bar.js'] - } - }); - - return sequence( watcher, [ - 'START', - 'BUNDLE_START', - 'BUNDLE_END', - 'END', - () => { - assert.deepEqual( run( './_tmp/output/bundle.js' ), { foo: 'foo-1', bar: 'bar-1' }); - sander.writeFileSync( 'test/_tmp/input/foo.js', `export default 'foo-2';` ); - }, - 'START', - 'BUNDLE_START', - 'BUNDLE_END', - 'END', - () => { - assert.deepEqual( run( './_tmp/output/bundle.js' ), { foo: 'foo-2', bar: 'bar-1' }); - sander.writeFileSync( 'test/_tmp/input/bar.js', `export default 'bar-2';` ); - }, - () => { - assert.deepEqual( run( './_tmp/output/bundle.js' ), { foo: 'foo-2', bar: 'bar-1' }); - watcher.close(); - } - ]); - }); - }); - } - }); - +const assert = require('assert'); +const rollup = require('../dist/rollup'); +const { loader } = require('./utils.js'); + +describe('rollup', function() { + this.timeout(10000); + + require('./misc/index.js'); + require('./function/index.js'); + require('./form/index.js'); + require('./sourcemaps/index.js'); + require('./incremental/index.js'); + require('./hooks/index.js'); + require('./cli/index.js'); + require('./watch/index.js'); }); diff --git a/test/utils.js b/test/utils.js new file mode 100644 index 00000000000..cc6f1ce448a --- /dev/null +++ b/test/utils.js @@ -0,0 +1,90 @@ +const assert = require('assert'); + +exports.compareError = compareError; +exports.compareWarnings = compareWarnings; +exports.deindent = deindent; +exports.extend = extend; +exports.loadConfig = loadConfig; +exports.loader = loader; +exports.normaliseOutput = normaliseOutput; + +function compareError ( actual, expected ) { + delete actual.stack; + actual = Object.assign( {}, actual, { + message: actual.message + }); + + if ( actual.frame ) { + actual.frame = actual.frame.replace( /\s+$/gm, '' ); + } + + if ( expected.frame ) { + expected.frame = deindent( expected.frame ); + } + + assert.deepEqual( actual, expected ); +} + +function compareWarnings ( actual, expected ) { + assert.deepEqual( + actual.map( warning => { + const clone = Object.assign( {}, warning ); + delete clone.toString; + + if ( clone.frame ) { + clone.frame = clone.frame.replace( /\s+$/gm, '' ); + } + + return clone; + }), + expected.map( warning => { + if ( warning.frame ) { + warning.frame = deindent( warning.frame ); + } + return warning; + }) + ); +} + +function deindent(str) { + return str.slice(1).replace(/^\t+/gm, '').replace(/\s+$/gm, '').trim(); +} + +function extend(target) { + [].slice.call(arguments, 1).forEach(source => { + source && + Object.keys(source).forEach(key => { + target[key] = source[key]; + }); + }); + + return target; +} + +function loadConfig(path) { + try { + return require(path); + } catch (err) { + console.error(err.message); + console.error(err.stack); + throw new Error( + `Failed to load ${path}. An old test perhaps? You should probably delete the directory` + ); + } +} + +function loader(modules) { + return { + resolveId(id) { + return id in modules ? id : null; + }, + + load(id) { + return modules[id]; + } + }; +} + +function normaliseOutput(code) { + return code.toString().trim().replace(/\r\n/g, '\n'); +} diff --git a/test/utils/promiseSequence.js b/test/utils/promiseSequence.js deleted file mode 100644 index 5eed9535520..00000000000 --- a/test/utils/promiseSequence.js +++ /dev/null @@ -1,28 +0,0 @@ -var Promise = require( 'sander' ).Promise; - -module.exports = function sequence ( arr, callback ) { - var len = arr.length; - var results = new Array( len ); - - var promise = Promise.resolve(); - - function next ( i ) { - return promise - .then( function () { - return callback( arr[i], i ); - }) - .then( function ( result ) { - results[i] = result; - }); - } - - var i; - - for ( i = 0; i < len; i += 1 ) { - promise = next( i ); - } - - return promise.then( function () { - return results; - }); -}; diff --git a/test/watch/index.js b/test/watch/index.js new file mode 100644 index 00000000000..4cc47227220 --- /dev/null +++ b/test/watch/index.js @@ -0,0 +1,345 @@ +const assert = require('assert'); +const sander = require('sander'); +const rollup = require('../../dist/rollup'); + +const cwd = process.cwd(); + +function wait(ms) { + return new Promise(fulfil => { + setTimeout(fulfil, ms); + }); +} + +describe('rollup.watch', () => { + beforeEach(() => { + process.chdir(cwd); + return sander.rimraf('test/_tmp'); + }); + + function run(file) { + const resolved = require.resolve(file); + delete require.cache[resolved]; + return require(resolved); + } + + function sequence(watcher, events) { + return new Promise((fulfil, reject) => { + function go(event) { + const next = events.shift(); + + if (!next) { + fulfil(); + } else if (typeof next === 'string') { + watcher.once('event', event => { + if (event.code !== next) { + reject(new Error(`Expected ${next} event, got ${event.code}`)); + } else { + go(event); + } + }); + } else { + Promise.resolve() + .then(() => wait(100)) // gah, this appears to be necessary to fix random errors + .then(() => next(event)) + .then(go) + .catch(reject); + } + } + + go(); + }); + } + + describe('fs.watch', () => { + runTests(false); + }); + + if (!process.env.CI) { + describe('chokidar', () => { + runTests(true); + }); + } + + function runTests(chokidar) { + it('watches a file', () => { + return sander + .copydir('test/watch/samples/basic') + .to('test/_tmp/input') + .then(() => { + const watcher = rollup.watch({ + entry: 'test/_tmp/input/main.js', + dest: 'test/_tmp/output/bundle.js', + format: 'cjs', + watch: { chokidar } + }); + + return sequence(watcher, [ + 'START', + 'BUNDLE_START', + 'BUNDLE_END', + 'END', + () => { + assert.equal(run('../_tmp/output/bundle.js'), 42); + sander.writeFileSync( + 'test/_tmp/input/main.js', + 'export default 43;' + ); + }, + 'START', + 'BUNDLE_START', + 'BUNDLE_END', + 'END', + () => { + assert.equal(run('../_tmp/output/bundle.js'), 43); + watcher.close(); + } + ]); + }); + }); + + it('recovers from an error', () => { + return sander + .copydir('test/watch/samples/basic') + .to('test/_tmp/input') + .then(() => { + const watcher = rollup.watch({ + entry: 'test/_tmp/input/main.js', + dest: 'test/_tmp/output/bundle.js', + format: 'cjs', + watch: { chokidar } + }); + + return sequence(watcher, [ + 'START', + 'BUNDLE_START', + 'BUNDLE_END', + 'END', + () => { + assert.equal(run('../_tmp/output/bundle.js'), 42); + sander.writeFileSync('test/_tmp/input/main.js', 'export nope;'); + }, + 'START', + 'BUNDLE_START', + 'ERROR', + () => { + sander.writeFileSync( + 'test/_tmp/input/main.js', + 'export default 43;' + ); + }, + 'START', + 'BUNDLE_START', + 'BUNDLE_END', + 'END', + () => { + assert.equal(run('../_tmp/output/bundle.js'), 43); + watcher.close(); + } + ]); + }); + }); + + it('recovers from an error even when erroring file was "renamed" (#38)', () => { + return sander + .copydir('test/watch/samples/basic') + .to('test/_tmp/input') + .then(() => { + const watcher = rollup.watch({ + entry: 'test/_tmp/input/main.js', + dest: 'test/_tmp/output/bundle.js', + format: 'cjs', + watch: { chokidar } + }); + + return sequence(watcher, [ + 'START', + 'BUNDLE_START', + 'BUNDLE_END', + 'END', + () => { + assert.equal(run('../_tmp/output/bundle.js'), 42); + sander.unlinkSync('test/_tmp/input/main.js'); + sander.writeFileSync('test/_tmp/input/main.js', 'export nope;'); + }, + 'START', + 'BUNDLE_START', + 'ERROR', + () => { + sander.unlinkSync('test/_tmp/input/main.js'); + sander.writeFileSync( + 'test/_tmp/input/main.js', + 'export default 43;' + ); + }, + 'START', + 'BUNDLE_START', + 'BUNDLE_END', + 'END', + () => { + assert.equal(run('../_tmp/output/bundle.js'), 43); + watcher.close(); + } + ]); + }); + }); + + it('refuses to watch the output file (#15)', () => { + return sander + .copydir('test/watch/samples/basic') + .to('test/_tmp/input') + .then(() => { + const watcher = rollup.watch({ + entry: 'test/_tmp/input/main.js', + dest: 'test/_tmp/output/bundle.js', + format: 'cjs', + watch: { chokidar } + }); + + return sequence(watcher, [ + 'START', + 'BUNDLE_START', + 'BUNDLE_END', + 'END', + () => { + assert.equal(run('../_tmp/output/bundle.js'), 42); + sander.writeFileSync( + 'test/_tmp/input/main.js', + `import '../output/bundle.js'` + ); + }, + 'START', + 'BUNDLE_START', + 'ERROR', + event => { + assert.equal( + event.error.message, + 'Cannot import the generated bundle' + ); + sander.writeFileSync( + 'test/_tmp/input/main.js', + 'export default 43;' + ); + }, + 'START', + 'BUNDLE_START', + 'BUNDLE_END', + 'END', + () => { + assert.equal(run('../_tmp/output/bundle.js'), 43); + watcher.close(); + } + ]); + }); + }); + + it('ignores files that are not specified in options.watch.include, if given', () => { + return sander + .copydir('test/watch/samples/ignored') + .to('test/_tmp/input') + .then(() => { + const watcher = rollup.watch({ + entry: 'test/_tmp/input/main.js', + dest: 'test/_tmp/output/bundle.js', + format: 'cjs', + watch: { + chokidar, + include: ['test/_tmp/input/+(main|foo).js'] + } + }); + + return sequence(watcher, [ + 'START', + 'BUNDLE_START', + 'BUNDLE_END', + 'END', + () => { + assert.deepEqual(run('../_tmp/output/bundle.js'), { + foo: 'foo-1', + bar: 'bar-1' + }); + sander.writeFileSync( + 'test/_tmp/input/foo.js', + `export default 'foo-2';` + ); + }, + 'START', + 'BUNDLE_START', + 'BUNDLE_END', + 'END', + () => { + assert.deepEqual(run('../_tmp/output/bundle.js'), { + foo: 'foo-2', + bar: 'bar-1' + }); + sander.writeFileSync( + 'test/_tmp/input/bar.js', + `export default 'bar-2';` + ); + }, + () => { + assert.deepEqual(run('../_tmp/output/bundle.js'), { + foo: 'foo-2', + bar: 'bar-1' + }); + watcher.close(); + } + ]); + }); + }); + + it('ignores files that are specified in options.watch.exclude, if given', () => { + return sander + .copydir('test/watch/samples/ignored') + .to('test/_tmp/input') + .then(() => { + const watcher = rollup.watch({ + entry: 'test/_tmp/input/main.js', + dest: 'test/_tmp/output/bundle.js', + format: 'cjs', + watch: { + chokidar, + exclude: ['test/_tmp/input/bar.js'] + } + }); + + return sequence(watcher, [ + 'START', + 'BUNDLE_START', + 'BUNDLE_END', + 'END', + () => { + assert.deepEqual(run('../_tmp/output/bundle.js'), { + foo: 'foo-1', + bar: 'bar-1' + }); + sander.writeFileSync( + 'test/_tmp/input/foo.js', + `export default 'foo-2';` + ); + }, + 'START', + 'BUNDLE_START', + 'BUNDLE_END', + 'END', + () => { + assert.deepEqual(run('../_tmp/output/bundle.js'), { + foo: 'foo-2', + bar: 'bar-1' + }); + sander.writeFileSync( + 'test/_tmp/input/bar.js', + `export default 'bar-2';` + ); + }, + () => { + assert.deepEqual(run('../_tmp/output/bundle.js'), { + foo: 'foo-2', + bar: 'bar-1' + }); + watcher.close(); + } + ]); + }); + }); + } +}); From c02cf69d161b205373a0a43d2ffef4eda2fd9774 Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Fri, 11 Aug 2017 11:15:36 -0400 Subject: [PATCH 02/11] lint --- test/form/index.js | 108 ++++++++++++++++++++++----------------------- test/leak/index.js | 26 +++++------ test/test.js | 4 -- 3 files changed, 67 insertions(+), 71 deletions(-) diff --git a/test/form/index.js b/test/form/index.js index 8d3fc48285f..05b0ca1c959 100644 --- a/test/form/index.js +++ b/test/form/index.js @@ -38,71 +38,71 @@ describe('form', () => { (config.skip ? describe.skip : config.solo ? describe.only : describe)(dir, () => { - let promise; - const createBundle = () => promise || (promise = rollup.rollup(options)); + let promise; + const createBundle = () => promise || (promise = rollup.rollup(options)); - FORMATS.forEach(format => { - it('generates ' + format, () => { - process.chdir(samples + '/' + dir); + FORMATS.forEach(format => { + it('generates ' + format, () => { + process.chdir(samples + '/' + dir); - return createBundle().then(bundle => { - const options = extend({}, config.options, { - dest: samples + '/' + dir + '/_actual/' + format + '.js', - format - }); - - return bundle.write(options).then(() => { - const actualCode = normaliseOutput( - sander.readFileSync(samples, dir, '_actual', format + '.js') - ); - let expectedCode; - let actualMap; - let expectedMap; + return createBundle().then(bundle => { + const options = extend({}, config.options, { + dest: samples + '/' + dir + '/_actual/' + format + '.js', + format + }); - try { - expectedCode = normaliseOutput( - sander.readFileSync(samples, dir, '_expected', format + '.js') + return bundle.write(options).then(() => { + const actualCode = normaliseOutput( + sander.readFileSync(samples, dir, '_actual', format + '.js') ); - } catch (err) { - expectedCode = 'missing file'; - } + let expectedCode; + let actualMap; + let expectedMap; - try { - actualMap = JSON.parse( - sander - .readFileSync(samples, dir, '_actual', format + '.js.map') - .toString() - ); - actualMap.sourcesContent = actualMap.sourcesContent.map( - normaliseOutput - ); - } catch (err) { - assert.equal(err.code, 'ENOENT'); - } + try { + expectedCode = normaliseOutput( + sander.readFileSync(samples, dir, '_expected', format + '.js') + ); + } catch (err) { + expectedCode = 'missing file'; + } - try { - expectedMap = JSON.parse( - sander - .readFileSync(samples, dir, '_expected', format + '.js.map') - .toString() - ); - expectedMap.sourcesContent = expectedMap.sourcesContent.map( - normaliseOutput - ); - } catch (err) { - assert.equal(err.code, 'ENOENT'); - } + try { + actualMap = JSON.parse( + sander + .readFileSync(samples, dir, '_actual', format + '.js.map') + .toString() + ); + actualMap.sourcesContent = actualMap.sourcesContent.map( + normaliseOutput + ); + } catch (err) { + assert.equal(err.code, 'ENOENT'); + } + + try { + expectedMap = JSON.parse( + sander + .readFileSync(samples, dir, '_expected', format + '.js.map') + .toString() + ); + expectedMap.sourcesContent = expectedMap.sourcesContent.map( + normaliseOutput + ); + } catch (err) { + assert.equal(err.code, 'ENOENT'); + } - if (config.show) { - console.log(actualCode + '\n\n\n'); - } + if (config.show) { + console.log(actualCode + '\n\n\n'); + } - assert.equal(actualCode, expectedCode); - assert.deepEqual(actualMap, expectedMap); + assert.equal(actualCode, expectedCode); + assert.deepEqual(actualMap, expectedMap); + }); }); }); }); }); - }); }); }); diff --git a/test/leak/index.js b/test/leak/index.js index 791fd183897..550d46390d7 100644 --- a/test/leak/index.js +++ b/test/leak/index.js @@ -1,38 +1,38 @@ -var path = require('path') -var rollup = require('../..') +const path = require('path'); +const rollup = require('../..'); function test() { - var weak = require('weak'); + const weak = require('weak'); - var shouldCollect = false; - var isCollected = false; + let shouldCollect = false; + let isCollected = false; function onCollect () { isCollected = true; } - var cache; + let cache; function run () { return rollup.rollup({ entry: path.resolve(__dirname, 'main.js'), cache - }).then(function (bundle) { + }).then(bundle => { weak(bundle, onCollect); cache = bundle; global.gc(); if (shouldCollect && !isCollected) { - throw new Error('Memory leak detected') + throw new Error('Memory leak detected'); } shouldCollect = true; }); - }; + } run() .then(run) - .then(function () { + .then(() => { console.log('Success'); - }). - catch(function (err) { + }) + .catch(err => { console.error(err.message); process.exit(1); }); @@ -43,7 +43,7 @@ try { test(); } catch (err) { console.log('installing weak'); - require('child_process').exec('npm i --no-save --silent weak@1.0.1', function (err, stdout, stderr) { + require('child_process').exec('npm i --no-save --silent weak@1.0.1', (err, stdout, stderr) => { if (err) { console.log('failed to install weak'); } else { diff --git a/test/test.js b/test/test.js index ef5f9091eff..c1c5d160b98 100644 --- a/test/test.js +++ b/test/test.js @@ -1,7 +1,3 @@ -const assert = require('assert'); -const rollup = require('../dist/rollup'); -const { loader } = require('./utils.js'); - describe('rollup', function() { this.timeout(10000); From 492c228b99588a72b00c60c4c19ebea362272408 Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Fri, 11 Aug 2017 11:30:00 -0400 Subject: [PATCH 03/11] gah, try now --- package-lock.json | 239 ++++++------------ test/cli/samples/node-config/_config.js | 5 + .../node_modules_rename_me/foo/lib/config.js | 9 + .../node_modules_rename_me/foo/package.json | 3 + 4 files changed, 98 insertions(+), 158 deletions(-) create mode 100644 test/cli/samples/node-config/node_modules_rename_me/foo/lib/config.js create mode 100644 test/cli/samples/node-config/node_modules_rename_me/foo/package.json diff --git a/package-lock.json b/package-lock.json index 20a9568c5fc..5e7d93fd0c0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "rollup", - "version": "0.45.2", + "version": "0.46.0", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -102,13 +102,13 @@ "dev": true }, "anymatch": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.0.tgz", - "integrity": "sha1-o+Uvo5FoyCX/V7AkgSbOWo/5VQc=", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", + "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", "dev": true, "requires": { - "arrify": "1.0.1", - "micromatch": "2.3.11" + "micromatch": "2.3.11", + "normalize-path": "2.1.1" } }, "argparse": { @@ -232,9 +232,9 @@ "dev": true }, "binary-extensions": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.8.0.tgz", - "integrity": "sha1-SOyNFt9Dd+rl+liEaCSAr02Vx3Q=", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.9.0.tgz", + "integrity": "sha1-ZlBsFs5vTWkopbPNajPKQelB43s=", "dev": true }, "bl": { @@ -405,17 +405,6 @@ "has-ansi": "2.0.0", "strip-ansi": "3.0.1", "supports-color": "2.0.0" - }, - "dependencies": { - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "2.1.1" - } - } } }, "chokidar": { @@ -424,7 +413,7 @@ "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=", "dev": true, "requires": { - "anymatch": "1.3.0", + "anymatch": "1.3.2", "async-each": "1.0.1", "fsevents": "1.1.2", "glob-parent": "2.0.0", @@ -436,9 +425,9 @@ } }, "circular-json": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.1.tgz", - "integrity": "sha1-vos2rvzN6LPKeqLWr8B6NyQsDS0=", + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz", + "integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==", "dev": true }, "cli-cursor": { @@ -629,7 +618,7 @@ "integrity": "sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8=", "dev": true, "requires": { - "es5-ext": "0.10.23" + "es5-ext": "0.10.27" } }, "dateformat": { @@ -760,9 +749,9 @@ } }, "es5-ext": { - "version": "0.10.23", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.23.tgz", - "integrity": "sha1-dXi1G+l0IHpUh4IbVlOMIk5Oezg=", + "version": "0.10.27", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.27.tgz", + "integrity": "sha512-3KXJRYzKXTd7xfFy5uZsJCXue55fAYQ035PRjyYk2PicllxIwcW9l3AbM/eGaw3vgVAUW4tl4xg9AXDEI6yw0w==", "dev": true, "requires": { "es6-iterator": "2.0.1", @@ -776,7 +765,7 @@ "dev": true, "requires": { "d": "1.0.0", - "es5-ext": "0.10.23", + "es5-ext": "0.10.27", "es6-symbol": "3.1.1" } }, @@ -787,7 +776,7 @@ "dev": true, "requires": { "d": "1.0.0", - "es5-ext": "0.10.23", + "es5-ext": "0.10.27", "es6-iterator": "2.0.1", "es6-set": "0.1.5", "es6-symbol": "3.1.1", @@ -801,7 +790,7 @@ "dev": true, "requires": { "d": "1.0.0", - "es5-ext": "0.10.23", + "es5-ext": "0.10.27", "es6-iterator": "2.0.1", "es6-symbol": "3.1.1", "event-emitter": "0.3.5" @@ -814,7 +803,7 @@ "dev": true, "requires": { "d": "1.0.0", - "es5-ext": "0.10.23" + "es5-ext": "0.10.27" } }, "es6-weak-map": { @@ -824,7 +813,7 @@ "dev": true, "requires": { "d": "1.0.0", - "es5-ext": "0.10.23", + "es5-ext": "0.10.27", "es6-iterator": "2.0.1", "es6-symbol": "3.1.1" } @@ -896,7 +885,7 @@ "debug": "2.6.8", "doctrine": "2.0.0", "escope": "3.6.0", - "espree": "3.4.3", + "espree": "3.5.0", "esquery": "1.0.0", "estraverse": "4.2.0", "esutils": "2.0.2", @@ -908,7 +897,7 @@ "inquirer": "0.12.0", "is-my-json-valid": "2.16.0", "is-resolvable": "1.0.0", - "js-yaml": "3.9.0", + "js-yaml": "3.9.1", "json-stable-stringify": "1.0.1", "levn": "0.3.0", "lodash": "4.17.4", @@ -934,7 +923,7 @@ "dev": true, "requires": { "debug": "2.6.8", - "resolve": "1.3.3" + "resolve": "1.4.0" } }, "eslint-module-utils": { @@ -984,9 +973,9 @@ } }, "espree": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/espree/-/espree-3.4.3.tgz", - "integrity": "sha1-KRC1zNSc6JPC//+qtP2LOjG4I3Q=", + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-3.5.0.tgz", + "integrity": "sha1-mDWGJb3QVYYeon4oZ+pyn69GPY0=", "dev": true, "requires": { "acorn": "5.1.1", @@ -1043,7 +1032,7 @@ "dev": true, "requires": { "d": "1.0.0", - "es5-ext": "0.10.23" + "es5-ext": "0.10.27" } }, "exit-hook": { @@ -1150,7 +1139,7 @@ "integrity": "sha1-+oZxTnLCHbiGAXYezy9VXRq8a5Y=", "dev": true, "requires": { - "circular-json": "0.3.1", + "circular-json": "0.3.3", "del": "2.2.2", "graceful-fs": "4.1.11", "write": "0.2.1" @@ -2420,17 +2409,6 @@ "string-width": "1.0.2", "strip-ansi": "3.0.1", "through": "2.3.8" - }, - "dependencies": { - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "2.1.1" - } - } } }, "interpret": { @@ -2457,7 +2435,7 @@ "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", "dev": true, "requires": { - "binary-extensions": "1.8.0" + "binary-extensions": "1.9.0" } }, "is-buffer": { @@ -2660,13 +2638,13 @@ "esprima": "2.7.3", "glob": "5.0.15", "handlebars": "4.0.10", - "js-yaml": "3.9.0", + "js-yaml": "3.9.1", "mkdirp": "0.5.1", "nopt": "3.0.6", "once": "1.4.0", "resolve": "1.1.7", "supports-color": "3.2.3", - "which": "1.2.14", + "which": "1.3.0", "wordwrap": "1.0.0" }, "dependencies": { @@ -2719,9 +2697,9 @@ "dev": true }, "js-yaml": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.9.0.tgz", - "integrity": "sha512-0LoUNELX4S+iofCT8f4uEHIiRBR+c2AINyC8qRWfC6QNruLtxVZRJaPcu/xwMgFIgDxF25tGHaDjvxzJCNE9yw==", + "version": "3.9.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.9.1.tgz", + "integrity": "sha512-CbcG379L1e+mWBnLvHWWeLs8GyV/EMw862uLI3c+GxVyDHWZcjZinwuBd3iW2pgxgIlksW/1vNJa4to+RvDOww==", "dev": true, "requires": { "argparse": "1.0.9", @@ -3153,14 +3131,14 @@ } }, "mocha": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-3.4.2.tgz", - "integrity": "sha1-0O9NMyEm2/GNDWQMmzgt1IvpdZQ=", + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-3.5.0.tgz", + "integrity": "sha512-pIU2PJjrPYvYRqVpjXzj76qltO9uBYI7woYAMoxbSefsa+vqAfptjoeevd6bUgwD0mPIO+hv9f7ltvsNreL2PA==", "dev": true, "requires": { "browser-stdout": "1.3.0", "commander": "2.9.0", - "debug": "2.6.0", + "debug": "2.6.8", "diff": "3.2.0", "escape-string-regexp": "1.0.5", "glob": "7.1.1", @@ -3171,15 +3149,6 @@ "supports-color": "3.1.2" }, "dependencies": { - "debug": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.0.tgz", - "integrity": "sha1-vFlryr52F/Edn6FTYe3tVgi4SZs=", - "dev": true, - "requires": { - "ms": "0.7.2" - } - }, "glob": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.1.tgz", @@ -3194,12 +3163,6 @@ "path-is-absolute": "1.0.1" } }, - "ms": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz", - "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=", - "dev": true - }, "supports-color": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.1.2.tgz", @@ -3268,7 +3231,7 @@ "requires": { "hosted-git-info": "2.5.0", "is-builtin-module": "1.0.0", - "semver": "5.3.0", + "semver": "5.4.1", "validate-npm-package-license": "3.0.1" } }, @@ -3685,7 +3648,7 @@ "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=", "dev": true, "requires": { - "resolve": "1.3.3" + "resolve": "1.4.0" } }, "redent": { @@ -3795,9 +3758,9 @@ } }, "resolve": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.3.3.tgz", - "integrity": "sha1-ZVkHw0aahoDcLeOidaj91paR8OU=", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.4.0.tgz", + "integrity": "sha512-aW7sVKPufyHqOmyyLzg/J+8606v5nevBgaliIlV7nUpVMsDnoBGV/cbSLNjZAg9q0Cfd/+easKVKQ8vOu8fn1Q==", "dev": true, "requires": { "path-parse": "1.0.5" @@ -3879,15 +3842,15 @@ } }, "rollup-plugin-commonjs": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/rollup-plugin-commonjs/-/rollup-plugin-commonjs-8.0.2.tgz", - "integrity": "sha1-mLFYm/4ypsD2d5C2DAtJmXKv7Yk=", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/rollup-plugin-commonjs/-/rollup-plugin-commonjs-8.1.0.tgz", + "integrity": "sha512-mxLU0oCZPakY+o1P9OeVG+yT7bGOFyRQf6pk3xden2+sEG2NP40CrKWw1h/BHZuK7yegRcOJMCfr/uzLmodrGQ==", "dev": true, "requires": { "acorn": "4.0.13", "estree-walker": "0.3.1", "magic-string": "0.19.1", - "resolve": "1.3.3", + "resolve": "1.4.0", "rollup-pluginutils": "2.0.1" }, "dependencies": { @@ -3911,16 +3874,6 @@ "requires": { "vlq": "0.2.2" } - }, - "rollup-pluginutils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.0.1.tgz", - "integrity": "sha1-fslbNXP2VDpGpkYb2afFRFJdD8A=", - "dev": true, - "requires": { - "estree-walker": "0.3.1", - "micromatch": "2.3.11" - } } } }, @@ -3931,24 +3884,6 @@ "dev": true, "requires": { "rollup-pluginutils": "2.0.1" - }, - "dependencies": { - "estree-walker": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-0.3.1.tgz", - "integrity": "sha1-5rGlHPcpJSTnI3wxLl/mZgwc4ao=", - "dev": true - }, - "rollup-pluginutils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.0.1.tgz", - "integrity": "sha1-fslbNXP2VDpGpkYb2afFRFJdD8A=", - "dev": true, - "requires": { - "estree-walker": "0.3.1", - "micromatch": "2.3.11" - } - } } }, "rollup-plugin-node-resolve": { @@ -3960,7 +3895,7 @@ "browser-resolve": "1.11.2", "builtin-modules": "1.1.1", "is-module": "1.0.0", - "resolve": "1.3.3" + "resolve": "1.4.0" } }, "rollup-plugin-replace": { @@ -4043,24 +3978,6 @@ "chokidar": "1.7.0", "require-relative": "0.8.7", "rollup-pluginutils": "2.0.1" - }, - "dependencies": { - "estree-walker": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-0.3.1.tgz", - "integrity": "sha1-5rGlHPcpJSTnI3wxLl/mZgwc4ao=", - "dev": true - }, - "rollup-pluginutils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.0.1.tgz", - "integrity": "sha1-fslbNXP2VDpGpkYb2afFRFJdD8A=", - "dev": true, - "requires": { - "estree-walker": "0.3.1", - "micromatch": "2.3.11" - } - } } }, "run-async": { @@ -4096,9 +4013,9 @@ } }, "semver": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz", - "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=", + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", + "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==", "dev": true }, "set-immediate-shim": { @@ -4230,17 +4147,6 @@ "code-point-at": "1.1.0", "is-fullwidth-code-point": "1.0.0", "strip-ansi": "3.0.1" - }, - "dependencies": { - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "2.1.1" - } - } } }, "stringstream": { @@ -4250,6 +4156,15 @@ "dev": true, "optional": true }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "2.1.1" + } + }, "strip-bom": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", @@ -4288,7 +4203,7 @@ "chalk": "1.1.3", "lodash": "4.17.4", "slice-ansi": "0.0.4", - "string-width": "2.1.0" + "string-width": "2.1.1" }, "dependencies": { "ansi-regex": { @@ -4304,9 +4219,9 @@ "dev": true }, "string-width": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.0.tgz", - "integrity": "sha1-AwZkVh/BRslCPsfZeP4kV0N/5tA=", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", "dev": true, "requires": { "is-fullwidth-code-point": "2.0.0", @@ -4434,13 +4349,21 @@ "dev": true }, "uglify-js": { - "version": "3.0.24", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.0.24.tgz", - "integrity": "sha512-IZ7l7MU2j7LIuz6IAFWBOk1dbuQ0QVQsKLffpNPKXuL8NYcFBBQ5QkvMAtfL1+oaBW16344DY4sA26GI9cXzlA==", + "version": "3.0.27", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.0.27.tgz", + "integrity": "sha512-HD8CmxPXUI62v5tweiulMcP/apAtx1DXGcNZkhKQZyC+MTrTsoCBb8yPAwVrbvpgw3EpRU76bRe6axjIiCYcQg==", "dev": true, "requires": { - "commander": "2.9.0", + "commander": "2.11.0", "source-map": "0.5.6" + }, + "dependencies": { + "commander": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.11.0.tgz", + "integrity": "sha512-b0553uYA5YAEGgyYIGYROzKQ7X5RAqedkfjiZxwi0kL1g3bOaBNNZfYkzt/CL0umgD5wc9Jec2FbB98CjkMRvQ==", + "dev": true + } } }, "uglify-to-browserify": { @@ -4502,9 +4425,9 @@ "dev": true }, "which": { - "version": "1.2.14", - "resolved": "https://registry.npmjs.org/which/-/which-1.2.14.tgz", - "integrity": "sha1-mofEN48D6CfOyvGs31bHNsAcFOU=", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz", + "integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==", "dev": true, "requires": { "isexe": "2.0.0" diff --git a/test/cli/samples/node-config/_config.js b/test/cli/samples/node-config/_config.js index 88b1368e750..be5c82f4c30 100644 --- a/test/cli/samples/node-config/_config.js +++ b/test/cli/samples/node-config/_config.js @@ -1,3 +1,8 @@ +const sander = require('sander'); + +sander.rimrafSync(__dirname, 'node_modules'); +sander.copydirSync(__dirname, 'node_modules_rename_me').to(__dirname, 'node_modules'); + module.exports = { description: 'uses config file installed from npm', command: 'rollup --config node:foo', diff --git a/test/cli/samples/node-config/node_modules_rename_me/foo/lib/config.js b/test/cli/samples/node-config/node_modules_rename_me/foo/lib/config.js new file mode 100644 index 00000000000..3cc995e2f4a --- /dev/null +++ b/test/cli/samples/node-config/node_modules_rename_me/foo/lib/config.js @@ -0,0 +1,9 @@ +var replace = require( 'rollup-plugin-replace' ); + +module.exports = { + entry: 'main.js', + format: 'cjs', + plugins: [ + replace({ 'ANSWER': 42 }) + ] +}; diff --git a/test/cli/samples/node-config/node_modules_rename_me/foo/package.json b/test/cli/samples/node-config/node_modules_rename_me/foo/package.json new file mode 100644 index 00000000000..fbd490130d0 --- /dev/null +++ b/test/cli/samples/node-config/node_modules_rename_me/foo/package.json @@ -0,0 +1,3 @@ +{ + "main": "lib/config.js" +} From 082d0de3374fd536cce63de07d83e71b91b72f60 Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Fri, 11 Aug 2017 12:18:14 -0400 Subject: [PATCH 04/11] oh --- test/cli/index.js | 6 ++++++ test/cli/samples/node-config/_config.js | 5 ----- .../node-config/node_modules_rename_me/foo/lib/config.js | 9 --------- .../node-config/node_modules_rename_me/foo/package.json | 3 --- 4 files changed, 6 insertions(+), 17 deletions(-) delete mode 100644 test/cli/samples/node-config/node_modules_rename_me/foo/lib/config.js delete mode 100644 test/cli/samples/node-config/node_modules_rename_me/foo/package.json diff --git a/test/cli/index.js b/test/cli/index.js index 3a506573bbb..115e5ec81e5 100644 --- a/test/cli/index.js +++ b/test/cli/index.js @@ -7,7 +7,13 @@ const { deindent, loadConfig, normaliseOutput } = require('../utils.js'); const samples = path.resolve(__dirname, 'samples'); +const cwd = process.cwd(); + describe('cli', () => { + afterEach(() => { + process.chdir(cwd); + }); + sander.readdirSync(samples).sort().forEach(dir => { if (dir[0] === '.') return; // .DS_Store... diff --git a/test/cli/samples/node-config/_config.js b/test/cli/samples/node-config/_config.js index be5c82f4c30..88b1368e750 100644 --- a/test/cli/samples/node-config/_config.js +++ b/test/cli/samples/node-config/_config.js @@ -1,8 +1,3 @@ -const sander = require('sander'); - -sander.rimrafSync(__dirname, 'node_modules'); -sander.copydirSync(__dirname, 'node_modules_rename_me').to(__dirname, 'node_modules'); - module.exports = { description: 'uses config file installed from npm', command: 'rollup --config node:foo', diff --git a/test/cli/samples/node-config/node_modules_rename_me/foo/lib/config.js b/test/cli/samples/node-config/node_modules_rename_me/foo/lib/config.js deleted file mode 100644 index 3cc995e2f4a..00000000000 --- a/test/cli/samples/node-config/node_modules_rename_me/foo/lib/config.js +++ /dev/null @@ -1,9 +0,0 @@ -var replace = require( 'rollup-plugin-replace' ); - -module.exports = { - entry: 'main.js', - format: 'cjs', - plugins: [ - replace({ 'ANSWER': 42 }) - ] -}; diff --git a/test/cli/samples/node-config/node_modules_rename_me/foo/package.json b/test/cli/samples/node-config/node_modules_rename_me/foo/package.json deleted file mode 100644 index fbd490130d0..00000000000 --- a/test/cli/samples/node-config/node_modules_rename_me/foo/package.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "main": "lib/config.js" -} From 6eba4d163e8ddf765a07a43b803510524008dbf6 Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Fri, 11 Aug 2017 12:22:40 -0400 Subject: [PATCH 05/11] wtf. why are these tests passing locally but not in ci --- test/cli/samples/node-config/_config.js | 1 + 1 file changed, 1 insertion(+) diff --git a/test/cli/samples/node-config/_config.js b/test/cli/samples/node-config/_config.js index 88b1368e750..c17da4b1e3a 100644 --- a/test/cli/samples/node-config/_config.js +++ b/test/cli/samples/node-config/_config.js @@ -1,5 +1,6 @@ module.exports = { description: 'uses config file installed from npm', command: 'rollup --config node:foo', + cwd: __dirname, execute: true }; From b9d07793310ef3aee71cd0582965374a12915c01 Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Fri, 11 Aug 2017 12:28:08 -0400 Subject: [PATCH 06/11] losing my goddamn mind over here --- test/cli/samples/node-config/_config.js | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/test/cli/samples/node-config/_config.js b/test/cli/samples/node-config/_config.js index c17da4b1e3a..13f13e2245f 100644 --- a/test/cli/samples/node-config/_config.js +++ b/test/cli/samples/node-config/_config.js @@ -1,3 +1,10 @@ +const glob = require('glob'); + +console.error( + `contents of ${__dirname}`, + glob.sync('**', {cwd: __dirname}) +); + module.exports = { description: 'uses config file installed from npm', command: 'rollup --config node:foo', From 2c05caa2508a4d646a8b5dd66e589b2e4091b4d1 Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Fri, 11 Aug 2017 12:34:50 -0400 Subject: [PATCH 07/11] please let this work --- test/cli/samples/node-config/_config.js | 8 +++----- .../node-config/node_modules_rename_me/foo/lib/config.js | 9 +++++++++ .../node-config/node_modules_rename_me/foo/package.json | 3 +++ 3 files changed, 15 insertions(+), 5 deletions(-) create mode 100644 test/cli/samples/node-config/node_modules_rename_me/foo/lib/config.js create mode 100644 test/cli/samples/node-config/node_modules_rename_me/foo/package.json diff --git a/test/cli/samples/node-config/_config.js b/test/cli/samples/node-config/_config.js index 13f13e2245f..2bce49c363f 100644 --- a/test/cli/samples/node-config/_config.js +++ b/test/cli/samples/node-config/_config.js @@ -1,9 +1,7 @@ -const glob = require('glob'); +const sander = require('glob'); -console.error( - `contents of ${__dirname}`, - glob.sync('**', {cwd: __dirname}) -); +sander.rimrafSync(__dirname, 'node_modules'); +sander.copydirSync(__dirname, 'node_modules_rename_me').to(__dirname, 'node_modules'); module.exports = { description: 'uses config file installed from npm', diff --git a/test/cli/samples/node-config/node_modules_rename_me/foo/lib/config.js b/test/cli/samples/node-config/node_modules_rename_me/foo/lib/config.js new file mode 100644 index 00000000000..3cc995e2f4a --- /dev/null +++ b/test/cli/samples/node-config/node_modules_rename_me/foo/lib/config.js @@ -0,0 +1,9 @@ +var replace = require( 'rollup-plugin-replace' ); + +module.exports = { + entry: 'main.js', + format: 'cjs', + plugins: [ + replace({ 'ANSWER': 42 }) + ] +}; diff --git a/test/cli/samples/node-config/node_modules_rename_me/foo/package.json b/test/cli/samples/node-config/node_modules_rename_me/foo/package.json new file mode 100644 index 00000000000..fbd490130d0 --- /dev/null +++ b/test/cli/samples/node-config/node_modules_rename_me/foo/package.json @@ -0,0 +1,3 @@ +{ + "main": "lib/config.js" +} From b38632edfb1047f491ee68cd466821d2a4a6837f Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Fri, 11 Aug 2017 12:36:35 -0400 Subject: [PATCH 08/11] AARGGHHHH --- test/cli/samples/node-config/_config.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/cli/samples/node-config/_config.js b/test/cli/samples/node-config/_config.js index 2bce49c363f..a841f1c8687 100644 --- a/test/cli/samples/node-config/_config.js +++ b/test/cli/samples/node-config/_config.js @@ -1,4 +1,4 @@ -const sander = require('glob'); +const sander = require('sander'); sander.rimrafSync(__dirname, 'node_modules'); sander.copydirSync(__dirname, 'node_modules_rename_me').to(__dirname, 'node_modules'); From 75152bf9d14dad71785062e8b0005f97e5342b73 Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Fri, 11 Aug 2017 12:40:56 -0400 Subject: [PATCH 09/11] almost there --- test/cli/index.js | 3 +++ .../node_modules_rename_me/foo/lib/config.js | 0 .../node_modules_rename_me/foo/package.json | 0 .../rollup-config-foo/lib/config.js | 9 +++++++++ .../rollup-config-foo/package.json | 3 +++ test/cli/samples/node-config/_config.js | 5 ----- 6 files changed, 15 insertions(+), 5 deletions(-) rename test/cli/{samples/node-config => }/node_modules_rename_me/foo/lib/config.js (100%) rename test/cli/{samples/node-config => }/node_modules_rename_me/foo/package.json (100%) create mode 100644 test/cli/node_modules_rename_me/rollup-config-foo/lib/config.js create mode 100644 test/cli/node_modules_rename_me/rollup-config-foo/package.json diff --git a/test/cli/index.js b/test/cli/index.js index 115e5ec81e5..2bffdc5e1b0 100644 --- a/test/cli/index.js +++ b/test/cli/index.js @@ -9,6 +9,9 @@ const samples = path.resolve(__dirname, 'samples'); const cwd = process.cwd(); +sander.rimrafSync(__dirname, 'node_modules'); +sander.copydirSync(__dirname, 'node_modules_rename_me').to(__dirname, 'node_modules'); + describe('cli', () => { afterEach(() => { process.chdir(cwd); diff --git a/test/cli/samples/node-config/node_modules_rename_me/foo/lib/config.js b/test/cli/node_modules_rename_me/foo/lib/config.js similarity index 100% rename from test/cli/samples/node-config/node_modules_rename_me/foo/lib/config.js rename to test/cli/node_modules_rename_me/foo/lib/config.js diff --git a/test/cli/samples/node-config/node_modules_rename_me/foo/package.json b/test/cli/node_modules_rename_me/foo/package.json similarity index 100% rename from test/cli/samples/node-config/node_modules_rename_me/foo/package.json rename to test/cli/node_modules_rename_me/foo/package.json diff --git a/test/cli/node_modules_rename_me/rollup-config-foo/lib/config.js b/test/cli/node_modules_rename_me/rollup-config-foo/lib/config.js new file mode 100644 index 00000000000..3cc995e2f4a --- /dev/null +++ b/test/cli/node_modules_rename_me/rollup-config-foo/lib/config.js @@ -0,0 +1,9 @@ +var replace = require( 'rollup-plugin-replace' ); + +module.exports = { + entry: 'main.js', + format: 'cjs', + plugins: [ + replace({ 'ANSWER': 42 }) + ] +}; diff --git a/test/cli/node_modules_rename_me/rollup-config-foo/package.json b/test/cli/node_modules_rename_me/rollup-config-foo/package.json new file mode 100644 index 00000000000..fbd490130d0 --- /dev/null +++ b/test/cli/node_modules_rename_me/rollup-config-foo/package.json @@ -0,0 +1,3 @@ +{ + "main": "lib/config.js" +} diff --git a/test/cli/samples/node-config/_config.js b/test/cli/samples/node-config/_config.js index a841f1c8687..c17da4b1e3a 100644 --- a/test/cli/samples/node-config/_config.js +++ b/test/cli/samples/node-config/_config.js @@ -1,8 +1,3 @@ -const sander = require('sander'); - -sander.rimrafSync(__dirname, 'node_modules'); -sander.copydirSync(__dirname, 'node_modules_rename_me').to(__dirname, 'node_modules'); - module.exports = { description: 'uses config file installed from npm', command: 'rollup --config node:foo', From 7cd8717e358004b1e426e49bb94441d75059fe78 Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Fri, 11 Aug 2017 12:46:25 -0400 Subject: [PATCH 10/11] GODDAMMIT --- test/leak/index.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/test/leak/index.js b/test/leak/index.js index 550d46390d7..4a1ada13db8 100644 --- a/test/leak/index.js +++ b/test/leak/index.js @@ -4,14 +4,14 @@ const rollup = require('../..'); function test() { const weak = require('weak'); - let shouldCollect = false; - let isCollected = false; + var shouldCollect = false; + var isCollected = false; function onCollect () { isCollected = true; } - let cache; + var cache; function run () { return rollup.rollup({ entry: path.resolve(__dirname, 'main.js'), From 0015e052c30fca6a9d42ad91380027e315b8bb12 Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Fri, 11 Aug 2017 12:48:18 -0400 Subject: [PATCH 11/11] about to lose my sense of humour --- .eslintignore | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.eslintignore b/.eslintignore index 5ff20017f6c..285e667feea 100644 --- a/.eslintignore +++ b/.eslintignore @@ -1 +1,2 @@ -test/*/samples/** \ No newline at end of file +test/*/samples/** +test/leak/index.js \ No newline at end of file