diff --git a/test/js/samples/pre-tag/expected.js b/test/js/samples/pre-tag/expected.js deleted file mode 100644 index c037693c30..0000000000 --- a/test/js/samples/pre-tag/expected.js +++ /dev/null @@ -1,86 +0,0 @@ -/* generated by Svelte vX.Y.Z */ -import { - SvelteComponent, - detach, - element, - init, - insert, - noop, - safe_not_equal, - space -} from "svelte/internal"; - -function create_fragment(ctx) { - let pre0; - let t3; - let div0; - let t7; - let div1; - - return { - c() { - pre0 = element("pre"); - - pre0.innerHTML = ` - A - B - - C - D - - E - F -`; - - t3 = space(); - div0 = element("div"); - - div0.innerHTML = `A - B - C - D - E - F`; - - t7 = space(); - div1 = element("div"); - - div1.innerHTML = `
- A
- B
-
- C
- D
-
- E
- F
- `;
- },
- m(target, anchor) {
- insert(target, pre0, anchor);
- insert(target, t3, anchor);
- insert(target, div0, anchor);
- insert(target, t7, anchor);
- insert(target, div1, anchor);
- },
- p: noop,
- i: noop,
- o: noop,
- d(detaching) {
- if (detaching) detach(pre0);
- if (detaching) detach(t3);
- if (detaching) detach(div0);
- if (detaching) detach(t7);
- if (detaching) detach(div1);
- }
- };
-}
-
-class Component extends SvelteComponent {
- constructor(options) {
- super();
- init(this, options, null, create_fragment, safe_not_equal, {});
- }
-}
-
-export default Component;
diff --git a/test/js/samples/preserve-whitespaces/_config.js b/test/js/samples/preserve-whitespaces/_config.js
deleted file mode 100644
index 65ae5c9c93..0000000000
--- a/test/js/samples/preserve-whitespaces/_config.js
+++ /dev/null
@@ -1,5 +0,0 @@
-export default {
- options: {
- preserveWhitespace: true
- }
-};
diff --git a/test/js/samples/preserve-whitespaces/expected.js b/test/js/samples/preserve-whitespaces/expected.js
deleted file mode 100644
index 55e54995cc..0000000000
--- a/test/js/samples/preserve-whitespaces/expected.js
+++ /dev/null
@@ -1,92 +0,0 @@
-/* generated by Svelte vX.Y.Z */
-import {
- SvelteComponent,
- detach,
- element,
- init,
- insert,
- noop,
- safe_not_equal,
- text
-} from "svelte/internal";
-
-function create_fragment(ctx) {
- let pre0;
- let t3;
- let div0;
- let t7;
- let div1;
-
- return {
- c() {
- pre0 = element("pre");
-
- pre0.innerHTML = `
- A
- B
-
- C
- D
-
- E
- F
-`;
-
- t3 = text("\n\n");
- div0 = element("div");
-
- div0.innerHTML = `
- A
- B
-
- C
- D
-
- E
- F
-`;
-
- t7 = text("\n\n");
- div1 = element("div");
-
- div1.innerHTML = `
-
- A
- B
-
- C
- D
-
- E
- F
-
-`;
- },
- m(target, anchor) {
- insert(target, pre0, anchor);
- insert(target, t3, anchor);
- insert(target, div0, anchor);
- insert(target, t7, anchor);
- insert(target, div1, anchor);
- },
- p: noop,
- i: noop,
- o: noop,
- d(detaching) {
- if (detaching) detach(pre0);
- if (detaching) detach(t3);
- if (detaching) detach(div0);
- if (detaching) detach(t7);
- if (detaching) detach(div1);
- }
- };
-}
-
-class Component extends SvelteComponent {
- constructor(options) {
- super();
- init(this, options, null, create_fragment, safe_not_equal, {});
- }
-}
-
-export default Component;
diff --git a/test/runtime/samples/pre-tag/_config.js b/test/runtime/samples/pre-tag/_config.js
new file mode 100644
index 0000000000..a2e8feb118
--- /dev/null
+++ b/test/runtime/samples/pre-tag/_config.js
@@ -0,0 +1,57 @@
+export default {
+ test({ assert, target }) {
+ // Test for tag
+ const elementPre = target.querySelector('#pre');
+ // Test for non tag
+ const elementDiv = target.querySelector('#div');
+ // Test for tag in non tag
+ const elementDivWithPre = target.querySelector('#div-with-pre');
+
+ // There is a slight difference in innerHTML because there is a difference in HTML optimization (in jsdom)
+ // depending on how the innerHTML is set.
+ // (There is no difference in the display.)
+ // Reassign innerHTML to add the same optimizations to innerHTML.
+
+ // eslint-disable-next-line no-self-assign
+ elementPre.innerHTML = elementPre.innerHTML;
+ // eslint-disable-next-line no-self-assign
+ elementDiv.innerHTML = elementDiv.innerHTML;
+ // eslint-disable-next-line no-self-assign
+ elementDivWithPre.innerHTML = elementDivWithPre.innerHTML;
+
+ assert.equal(
+ elementPre.innerHTML,
+ `
+ A
+ B
+
+ C
+ D
+
+ E
+ F
+`
+ );
+ assert.equal(
+ elementDiv.innerHTML,
+ `A
+ B
+ C
+ D
+ E
+ F`
+ );
+ assert.equal(
+ elementDivWithPre.innerHTML,
+ ` A
+ B
+
+ C
+ D
+
+ E
+ F
+ `
+ );
+ }
+};
diff --git a/test/js/samples/preserve-whitespaces/input.svelte b/test/runtime/samples/pre-tag/main.svelte
similarity index 78%
rename from test/js/samples/preserve-whitespaces/input.svelte
rename to test/runtime/samples/pre-tag/main.svelte
index fb240817f7..ef603b9883 100644
--- a/test/js/samples/preserve-whitespaces/input.svelte
+++ b/test/runtime/samples/pre-tag/main.svelte
@@ -1,4 +1,4 @@
-
+
A
B
@@ -9,7 +9,7 @@
F
-
+
A
B
@@ -20,7 +20,7 @@
F
-
+
A
B
diff --git a/test/runtime/samples/preserve-whitespaces/_config.js b/test/runtime/samples/preserve-whitespaces/_config.js
new file mode 100644
index 0000000000..e0c621a18b
--- /dev/null
+++ b/test/runtime/samples/preserve-whitespaces/_config.js
@@ -0,0 +1,66 @@
+export default {
+ compileOptions: {
+ preserveWhitespace: true
+ },
+ test({ assert, target }) {
+ // Test for tag
+ const elementPre = target.querySelector('#pre');
+ // Test for non tag
+ const elementDiv = target.querySelector('#div');
+ // Test for tag in non tag
+ const elementDivWithPre = target.querySelector('#div-with-pre');
+
+ // There is a slight difference in innerHTML because there is a difference in HTML optimization (in jsdom)
+ // depending on how the innerHTML is set.
+ // (There is no difference in the display.)
+ // Reassign innerHTML to add the same optimizations to innerHTML.
+
+ // eslint-disable-next-line no-self-assign
+ elementPre.innerHTML = elementPre.innerHTML;
+ // eslint-disable-next-line no-self-assign
+ elementDiv.innerHTML = elementDiv.innerHTML;
+ // eslint-disable-next-line no-self-assign
+ elementDivWithPre.innerHTML = elementDivWithPre.innerHTML;
+
+ assert.equal(
+ elementPre.innerHTML,
+ `
+ A
+ B
+
+ C
+ D
+
+ E
+ F
+`
+ );
+ assert.equal(
+ elementDiv.innerHTML,
+ `
+ A
+ B
+
+ C
+ D
+
+ E
+ F
+`
+ );
+ assert.equal(
+ elementDivWithPre.innerHTML,
+ `
+ A
+ B
+
+ C
+ D
+
+ E
+ F
+
+`
+ );
+ }
+};
diff --git a/test/js/samples/pre-tag/input.svelte b/test/runtime/samples/preserve-whitespaces/main.svelte
similarity index 78%
rename from test/js/samples/pre-tag/input.svelte
rename to test/runtime/samples/preserve-whitespaces/main.svelte
index fb240817f7..ef603b9883 100644
--- a/test/js/samples/pre-tag/input.svelte
+++ b/test/runtime/samples/preserve-whitespaces/main.svelte
@@ -1,4 +1,4 @@
-
+
A
B
@@ -9,7 +9,7 @@
F
-
+
A
B
@@ -20,7 +20,7 @@
F
-
+
A
B