diff --git a/test/runtime/samples/dynamic-element-action-update/_config.js b/test/runtime/samples/dynamic-element-action-update/_config.js
index 3756313dab..c9d53088e9 100644
--- a/test/runtime/samples/dynamic-element-action-update/_config.js
+++ b/test/runtime/samples/dynamic-element-action-update/_config.js
@@ -1,27 +1,47 @@
+let logs = [];
+
export default {
html: `
tag is h1.
`,
+ props: {
+ logs
+ },
+ before_test() {
+ logs = [];
+ },
async test({ assert, component, target }) {
-
assert.equal(component.tag, 'h1');
assert.equal(component.updateText, '');
assert.equal(component.destroyText, '');
+ assert.deepEqual(logs, ['create: h1,opt2']);
component.opt = 'opt2';
-
+
assert.equal(component.tag, 'h1');
- assert.equal(component.updateText, 'update: h1,opt2');
- assert.equal(component.destroyText, '');
+ assert.deepEqual(logs, ['create: h1,opt2', 'update: h1,opt2']);
component.tag = 'h2';
assert.equal(component.tag, 'h2');
- assert.equal(component.updateText, 'update: h1,opt2');
- assert.equal(component.destroyText, 'destroy');
- assert.htmlEqual(target.innerHTML, `
- tag is h2.
- `);
+ assert.deepEqual(logs, [
+ 'create: h1,opt2',
+ 'update: h1,opt2',
+ 'destroy',
+ 'create: h2,opt2'
+ ]);
+ assert.htmlEqual(target.innerHTML, 'tag is h2.
');
+
+ component.tag = false;
+ assert.deepEqual(logs, [
+ 'create: h1,opt2',
+ 'update: h1,opt2',
+ 'destroy',
+ 'create: h2,opt2',
+ 'destroy'
+ ]);
+
+ assert.htmlEqual(target.innerHTML, '');
}
};
diff --git a/test/runtime/samples/dynamic-element-action-update/main.svelte b/test/runtime/samples/dynamic-element-action-update/main.svelte
index beccf0071b..da269e115e 100644
--- a/test/runtime/samples/dynamic-element-action-update/main.svelte
+++ b/test/runtime/samples/dynamic-element-action-update/main.svelte
@@ -1,12 +1,12 @@
diff --git a/test/runtime/samples/dynamic-element-undefined-tag/_config.js b/test/runtime/samples/dynamic-element-undefined-tag/_config.js
index 22dc25b41e..53b4e6e563 100644
--- a/test/runtime/samples/dynamic-element-undefined-tag/_config.js
+++ b/test/runtime/samples/dynamic-element-undefined-tag/_config.js
@@ -1,3 +1,20 @@
export default {
- html: ''
+ solo: true,
+ html: '',
+ test({ component, target, assert }) {
+ component.tag = 'h1';
+ assert.htmlEqual(target.innerHTML, 'Foo
');
+
+ component.tag = null;
+ assert.htmlEqual(target.innerHTML, '');
+
+ component.tag = 'div';
+ assert.htmlEqual(target.innerHTML, 'Foo
');
+
+ component.tag = false;
+ assert.htmlEqual(target.innerHTML, '');
+
+ component.tag = 'span';
+ assert.htmlEqual(target.innerHTML, 'Foo');
+ }
};
diff --git a/test/runtime/samples/dynamic-element-undefined-tag/main.svelte b/test/runtime/samples/dynamic-element-undefined-tag/main.svelte
index 785ab58073..6aca93ca13 100644
--- a/test/runtime/samples/dynamic-element-undefined-tag/main.svelte
+++ b/test/runtime/samples/dynamic-element-undefined-tag/main.svelte
@@ -1,5 +1,5 @@
Foo