-
`,
- test({ target, window, assert }) {
- const railColor1 = target.querySelector('#slider-1 p');
- const trackColor1 = target.querySelector('#slider-1 span');
- const railColor2 = target.querySelector('#slider-2 p');
- const trackColor2 = target.querySelector('#slider-2 span');
+ test({ target, window, assert, component }) {
- assert.htmlEqual(window.getComputedStyle(railColor1).color, 'rgb(0, 0, 0)');
- assert.htmlEqual(window.getComputedStyle(trackColor1).color, 'rgb(255, 0, 0)');
- assert.htmlEqual(window.getComputedStyle(railColor2).color, 'rgb(0, 255, 0)');
- assert.htmlEqual(window.getComputedStyle(trackColor2).color, 'rgb(0, 0, 255)');
+ function assert_slider_1() {
+ const railColor1 = target.querySelector('#component1 p');
+ const trackColor1 = target.querySelector('#component1 span');
+ const railColor2 = target.querySelector('#component2 p');
+ const trackColor2 = target.querySelector('#component2 span');
+
+ assert.equal(window.getComputedStyle(railColor1).color, 'rgb(0, 0, 0)');
+ assert.equal(window.getComputedStyle(trackColor1).color, 'rgb(255, 0, 0)');
+ assert.equal(window.getComputedStyle(railColor2).color, 'rgb(0, 255, 0)');
+ assert.equal(window.getComputedStyle(trackColor2).color, 'rgb(0, 0, 255)');
+ assert.equal(railColor1.textContent, 'Slider1');
+ assert.equal(railColor2.textContent, 'Slider1');
+ }
+
+ function assert_slider_2() {
+ const railColor1 = target.querySelector('#component1 p');
+ const trackColor1 = target.querySelector('#component1 span');
+ const railColor2 = target.querySelector('#component2 p');
+ const trackColor2 = target.querySelector('#component2 span');
+
+ assert.equal(window.getComputedStyle(railColor1).color, 'rgb(0, 0, 0)');
+ assert.equal(window.getComputedStyle(trackColor1).color, 'rgb(255, 0, 0)');
+ assert.equal(window.getComputedStyle(railColor2).color, 'rgb(0, 255, 0)');
+ assert.equal(window.getComputedStyle(trackColor2).color, 'rgb(0, 0, 255)');
+ assert.equal(railColor1.textContent, 'Slider2');
+ assert.equal(railColor2.textContent, 'Slider2');
+ }
+
+ assert_slider_1();
+ component.componentName = 'Slider2';
+ assert_slider_2();
+ component.componentName = undefined;
+ assert.equal(window.document.querySelector('div'), null);
+ component.componentName = 'Slider1';
+ assert_slider_1();
}
};
diff --git a/test/runtime-puppeteer/samples/svelte-component-css-custom-properties/main.svelte b/test/runtime-puppeteer/samples/svelte-component-css-custom-properties/main.svelte
index 47fc997b73..2c6d05dc25 100644
--- a/test/runtime-puppeteer/samples/svelte-component-css-custom-properties/main.svelte
+++ b/test/runtime-puppeteer/samples/svelte-component-css-custom-properties/main.svelte
@@ -1,17 +1,20 @@
diff --git a/test/runtime-puppeteer/samples/svelte-component-css-custom-properties2/Slider1.svelte b/test/runtime-puppeteer/samples/svelte-component-css-custom-properties2/Slider1.svelte
new file mode 100644
index 0000000000..f9c9048fee
--- /dev/null
+++ b/test/runtime-puppeteer/samples/svelte-component-css-custom-properties2/Slider1.svelte
@@ -0,0 +1,17 @@
+
+
+
+
+
diff --git a/test/runtime-puppeteer/samples/svelte-component-css-custom-properties2/Slider2.svelte b/test/runtime-puppeteer/samples/svelte-component-css-custom-properties2/Slider2.svelte
new file mode 100644
index 0000000000..eb5c286464
--- /dev/null
+++ b/test/runtime-puppeteer/samples/svelte-component-css-custom-properties2/Slider2.svelte
@@ -0,0 +1,17 @@
+
+
+
+
+
diff --git a/test/runtime-puppeteer/samples/svelte-component-css-custom-properties2/_config.js b/test/runtime-puppeteer/samples/svelte-component-css-custom-properties2/_config.js
new file mode 100644
index 0000000000..5aa30c7aa4
--- /dev/null
+++ b/test/runtime-puppeteer/samples/svelte-component-css-custom-properties2/_config.js
@@ -0,0 +1,59 @@
+export default {
+ props: {
+ componentName: 'Slider1'
+ },
+ html: `
+
+ `,
+ test({ target, window, assert, component }) {
+
+ function assert_slider_1() {
+ const railColor1 = target.querySelector('#component1 p');
+ const trackColor1 = target.querySelector('#component1 span');
+ const railColor2 = target.querySelector('#component2 p');
+ const trackColor2 = target.querySelector('#component2 span');
+
+ assert.equal(window.getComputedStyle(railColor1).color, 'rgb(0, 0, 0)');
+ assert.equal(window.getComputedStyle(trackColor1).color, 'rgb(255, 0, 0)');
+ assert.equal(window.getComputedStyle(railColor2).color, 'rgb(0, 255, 0)');
+ assert.equal(window.getComputedStyle(trackColor2).color, 'rgb(0, 0, 255)');
+ assert.equal(railColor1.textContent, 'Slider1');
+ assert.equal(railColor2.textContent, 'Slider1');
+ }
+
+ function assert_slider_2() {
+ const railColor1 = target.querySelector('#component1 p');
+ const trackColor1 = target.querySelector('#component1 span');
+ const railColor2 = target.querySelector('#component2 p');
+ const trackColor2 = target.querySelector('#component2 span');
+
+ assert.equal(window.getComputedStyle(railColor1).color, 'rgb(0, 0, 0)');
+ assert.equal(window.getComputedStyle(trackColor1).color, 'rgb(255, 0, 0)');
+ assert.equal(window.getComputedStyle(railColor2).color, 'rgb(0, 255, 0)');
+ assert.equal(window.getComputedStyle(trackColor2).color, 'rgb(0, 0, 255)');
+ assert.equal(railColor1.textContent, 'Slider2');
+ assert.equal(railColor2.textContent, 'Slider2');
+ }
+
+ assert_slider_1();
+ component.componentName = 'Slider2';
+ assert_slider_2();
+ component.componentName = undefined;
+ assert.equal(window.document.querySelector('div'), null);
+ component.componentName = 'Slider1';
+ assert_slider_1();
+ }
+};
diff --git a/test/runtime-puppeteer/samples/svelte-component-css-custom-properties2/main.svelte b/test/runtime-puppeteer/samples/svelte-component-css-custom-properties2/main.svelte
new file mode 100644
index 0000000000..dded9b8f5c
--- /dev/null
+++ b/test/runtime-puppeteer/samples/svelte-component-css-custom-properties2/main.svelte
@@ -0,0 +1,22 @@
+
+
+