From 4041f0e7343277663363578870996b6fd129f345 Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Sun, 18 Nov 2018 21:48:35 -0500 Subject: [PATCH] update some event handler tests --- .../_config.js | 0 .../main.html | 12 ++++---- .../_config.js | 0 .../main.html | 28 +++++++++++++++++++ .../_config.js | 15 ++++++++++ .../main.html | 19 +++++++++++++ .../_config.js | 0 .../main.html | 2 +- .../_config.js | 16 +++++++++++ .../main.html | 8 +++--- .../action-custom-event-handler/_config.js | 16 +++++++++++ .../action-custom-event-handler/main.html | 23 +++++++++++++++ .../event-handler-console-log/_config.js | 2 +- .../event-handler-console-log/main.html | 4 +++ .../event-handler-custom-context/_config.js | 16 ----------- .../event-handler-custom-each/main.html | 28 ------------------- .../_config.js | 15 ---------- .../main.html | 19 ------------- .../samples/event-handler-custom/_config.js | 15 ---------- .../samples/event-handler-custom/main.html | 23 --------------- .../_config.js | 6 ++-- .../event-handler-each-this/_config.js | 2 +- .../samples/event-handler-each-this/main.html | 4 ++- .../samples/event-handler-each/_config.js | 4 +-- .../samples/event-handler-removal/_config.js | 15 +++++----- .../samples/event-handler-sanitize/_config.js | 18 ++++++------ .../_config.js | 2 +- .../_config.js | 2 +- .../main.html | 4 +-- 29 files changed, 163 insertions(+), 155 deletions(-) rename test/runtime/samples/{event-handler-custom-each-destructured => action-custom-event-handler-in-each-destructured}/_config.js (100%) rename test/runtime/samples/{event-handler-custom-each-destructured => action-custom-event-handler-in-each-destructured}/main.html (51%) rename test/runtime/samples/{event-handler-custom-each => action-custom-event-handler-in-each}/_config.js (100%) create mode 100644 test/runtime/samples/action-custom-event-handler-in-each/main.html create mode 100644 test/runtime/samples/action-custom-event-handler-node-context/_config.js create mode 100644 test/runtime/samples/action-custom-event-handler-node-context/main.html rename test/runtime/samples/{event-handler-custom-this => action-custom-event-handler-this}/_config.js (100%) rename test/runtime/samples/{event-handler-custom-this => action-custom-event-handler-this}/main.html (86%) create mode 100644 test/runtime/samples/action-custom-event-handler-with-context/_config.js rename test/runtime/samples/{event-handler-custom-context => action-custom-event-handler-with-context}/main.html (50%) create mode 100644 test/runtime/samples/action-custom-event-handler/_config.js create mode 100644 test/runtime/samples/action-custom-event-handler/main.html delete mode 100644 test/runtime/samples/event-handler-custom-context/_config.js delete mode 100644 test/runtime/samples/event-handler-custom-each/main.html delete mode 100644 test/runtime/samples/event-handler-custom-node-context/_config.js delete mode 100644 test/runtime/samples/event-handler-custom-node-context/main.html delete mode 100644 test/runtime/samples/event-handler-custom/_config.js delete mode 100644 test/runtime/samples/event-handler-custom/main.html diff --git a/test/runtime/samples/event-handler-custom-each-destructured/_config.js b/test/runtime/samples/action-custom-event-handler-in-each-destructured/_config.js similarity index 100% rename from test/runtime/samples/event-handler-custom-each-destructured/_config.js rename to test/runtime/samples/action-custom-event-handler-in-each-destructured/_config.js diff --git a/test/runtime/samples/event-handler-custom-each-destructured/main.html b/test/runtime/samples/action-custom-event-handler-in-each-destructured/main.html similarity index 51% rename from test/runtime/samples/event-handler-custom-each-destructured/main.html rename to test/runtime/samples/action-custom-event-handler-in-each-destructured/main.html index 080f146b6b..b5c13cf0d8 100644 --- a/test/runtime/samples/event-handler-custom-each-destructured/main.html +++ b/test/runtime/samples/action-custom-event-handler-in-each-destructured/main.html @@ -1,27 +1,27 @@ {#each items as [item0, item1]} - {/each} diff --git a/test/runtime/samples/event-handler-custom-each/_config.js b/test/runtime/samples/action-custom-event-handler-in-each/_config.js similarity index 100% rename from test/runtime/samples/event-handler-custom-each/_config.js rename to test/runtime/samples/action-custom-event-handler-in-each/_config.js diff --git a/test/runtime/samples/action-custom-event-handler-in-each/main.html b/test/runtime/samples/action-custom-event-handler-in-each/main.html new file mode 100644 index 0000000000..0bae23f0f1 --- /dev/null +++ b/test/runtime/samples/action-custom-event-handler-in-each/main.html @@ -0,0 +1,28 @@ + + +{#each items as item} + +{/each} + +

fromDom: {fromDom}

+

fromState: {fromState}

diff --git a/test/runtime/samples/action-custom-event-handler-node-context/_config.js b/test/runtime/samples/action-custom-event-handler-node-context/_config.js new file mode 100644 index 0000000000..1df95c590a --- /dev/null +++ b/test/runtime/samples/action-custom-event-handler-node-context/_config.js @@ -0,0 +1,15 @@ +export default { + 'skip-ssr': true, + + html: '', + + async test(assert, component, target, window) { + const event = new window.MouseEvent('click'); + + const button = target.querySelector('button'); + + await button.dispatchEvent(event); + + assert.equal(target.innerHTML, ''); + } +}; diff --git a/test/runtime/samples/action-custom-event-handler-node-context/main.html b/test/runtime/samples/action-custom-event-handler-node-context/main.html new file mode 100644 index 0000000000..935e7495dd --- /dev/null +++ b/test/runtime/samples/action-custom-event-handler-node-context/main.html @@ -0,0 +1,19 @@ + + + diff --git a/test/runtime/samples/event-handler-custom-this/_config.js b/test/runtime/samples/action-custom-event-handler-this/_config.js similarity index 100% rename from test/runtime/samples/event-handler-custom-this/_config.js rename to test/runtime/samples/action-custom-event-handler-this/_config.js diff --git a/test/runtime/samples/event-handler-custom-this/main.html b/test/runtime/samples/action-custom-event-handler-this/main.html similarity index 86% rename from test/runtime/samples/event-handler-custom-this/main.html rename to test/runtime/samples/action-custom-event-handler-this/main.html index 813d63283a..f6ad1ea443 100644 --- a/test/runtime/samples/event-handler-custom-this/main.html +++ b/test/runtime/samples/action-custom-event-handler-this/main.html @@ -16,4 +16,4 @@ } - \ No newline at end of file + \ No newline at end of file diff --git a/test/runtime/samples/action-custom-event-handler-with-context/_config.js b/test/runtime/samples/action-custom-event-handler-with-context/_config.js new file mode 100644 index 0000000000..b740c70c67 --- /dev/null +++ b/test/runtime/samples/action-custom-event-handler-with-context/_config.js @@ -0,0 +1,16 @@ +export default { + html: '', + + async test(assert, component, target, window) { + const event = new window.MouseEvent('click', { + clientX: 42, + clientY: 42 + }); + + const button = target.querySelector('button'); + + await button.dispatchEvent(event); + + assert.equal(target.innerHTML, ''); + } +}; diff --git a/test/runtime/samples/event-handler-custom-context/main.html b/test/runtime/samples/action-custom-event-handler-with-context/main.html similarity index 50% rename from test/runtime/samples/event-handler-custom-context/main.html rename to test/runtime/samples/action-custom-event-handler-with-context/main.html index dae4f10807..8bfd72dfd4 100644 --- a/test/runtime/samples/event-handler-custom-context/main.html +++ b/test/runtime/samples/action-custom-event-handler-with-context/main.html @@ -7,14 +7,14 @@ callback({ answer }); }; - node.addEventListener( 'click', clickHandler, false ); + node.addEventListener('click', clickHandler, false); return { - destroy () { - node.addEventListener( 'click', clickHandler, false ); + destroy() { + node.addEventListener('click', clickHandler, false); } }; } - + diff --git a/test/runtime/samples/action-custom-event-handler/_config.js b/test/runtime/samples/action-custom-event-handler/_config.js new file mode 100644 index 0000000000..1c39ae1341 --- /dev/null +++ b/test/runtime/samples/action-custom-event-handler/_config.js @@ -0,0 +1,16 @@ +export default { + html: '', + + test(assert, component, target, window) { + const event = new window.MouseEvent('click', { + clientX: 42, + clientY: 42 + }); + + const button = target.querySelector('button'); + + button.dispatchEvent(event); + + assert.equal(target.innerHTML, ''); + } +}; diff --git a/test/runtime/samples/action-custom-event-handler/main.html b/test/runtime/samples/action-custom-event-handler/main.html new file mode 100644 index 0000000000..8ab3006c6a --- /dev/null +++ b/test/runtime/samples/action-custom-event-handler/main.html @@ -0,0 +1,23 @@ + + + diff --git a/test/runtime/samples/event-handler-console-log/_config.js b/test/runtime/samples/event-handler-console-log/_config.js index 8a8fb3a2f4..605a7c1016 100644 --- a/test/runtime/samples/event-handler-console-log/_config.js +++ b/test/runtime/samples/event-handler-console-log/_config.js @@ -7,7 +7,7 @@ export default { `, - test (assert, component, target, window) { + test(assert, component, target, window) { const button = target.querySelector('button'); const event = new window.MouseEvent('click'); diff --git a/test/runtime/samples/event-handler-console-log/main.html b/test/runtime/samples/event-handler-console-log/main.html index 509a4baa34..a7ef51c4c3 100644 --- a/test/runtime/samples/event-handler-console-log/main.html +++ b/test/runtime/samples/event-handler-console-log/main.html @@ -1 +1,5 @@ + + \ No newline at end of file diff --git a/test/runtime/samples/event-handler-custom-context/_config.js b/test/runtime/samples/event-handler-custom-context/_config.js deleted file mode 100644 index 5d725bfd71..0000000000 --- a/test/runtime/samples/event-handler-custom-context/_config.js +++ /dev/null @@ -1,16 +0,0 @@ -export default { - html: '', - - test ( assert, component, target, window ) { - const event = new window.MouseEvent( 'click', { - clientX: 42, - clientY: 42 - }); - - const button = target.querySelector( 'button' ); - - button.dispatchEvent( event ); - - assert.equal( target.innerHTML, '' ); - } -}; diff --git a/test/runtime/samples/event-handler-custom-each/main.html b/test/runtime/samples/event-handler-custom-each/main.html deleted file mode 100644 index c67d3a46d7..0000000000 --- a/test/runtime/samples/event-handler-custom-each/main.html +++ /dev/null @@ -1,28 +0,0 @@ - - -{#each items as item} - -{/each} - -

fromDom: {fromDom}

-

fromState: {fromState}

diff --git a/test/runtime/samples/event-handler-custom-node-context/_config.js b/test/runtime/samples/event-handler-custom-node-context/_config.js deleted file mode 100644 index e2099f96bc..0000000000 --- a/test/runtime/samples/event-handler-custom-node-context/_config.js +++ /dev/null @@ -1,15 +0,0 @@ -export default { - 'skip-ssr': true, - - html: '', - - test ( assert, component, target, window ) { - const event = new window.MouseEvent( 'click' ); - - const button = target.querySelector( 'button' ); - - button.dispatchEvent( event ); - - assert.equal( target.innerHTML, '' ); - } -}; diff --git a/test/runtime/samples/event-handler-custom-node-context/main.html b/test/runtime/samples/event-handler-custom-node-context/main.html deleted file mode 100644 index 452e112c97..0000000000 --- a/test/runtime/samples/event-handler-custom-node-context/main.html +++ /dev/null @@ -1,19 +0,0 @@ - - - diff --git a/test/runtime/samples/event-handler-custom/_config.js b/test/runtime/samples/event-handler-custom/_config.js deleted file mode 100644 index ab4a20e844..0000000000 --- a/test/runtime/samples/event-handler-custom/_config.js +++ /dev/null @@ -1,15 +0,0 @@ -export default { - html: '', - test ( assert, component, target, window ) { - const event = new window.MouseEvent( 'click', { - clientX: 42, - clientY: 42 - }); - - const button = target.querySelector( 'button' ); - - button.dispatchEvent( event ); - - assert.equal( target.innerHTML, '' ); - } -}; diff --git a/test/runtime/samples/event-handler-custom/main.html b/test/runtime/samples/event-handler-custom/main.html deleted file mode 100644 index 97d216eef0..0000000000 --- a/test/runtime/samples/event-handler-custom/main.html +++ /dev/null @@ -1,23 +0,0 @@ - - - diff --git a/test/runtime/samples/event-handler-each-deconflicted/_config.js b/test/runtime/samples/event-handler-each-deconflicted/_config.js index 8bbc14cc3e..3af4c75387 100644 --- a/test/runtime/samples/event-handler-each-deconflicted/_config.js +++ b/test/runtime/samples/event-handler-each-deconflicted/_config.js @@ -11,11 +11,11 @@ export default {

clicked: neither

`, - test(assert, component, target, window) { + async test(assert, component, target, window) { const buttons = target.querySelectorAll('button'); const event = new window.MouseEvent('click'); - buttons[0].dispatchEvent(event); + await buttons[0].dispatchEvent(event); assert.equal(component.clicked, 'foo'); assert.htmlEqual(target.innerHTML, ` @@ -23,7 +23,7 @@ export default {

clicked: foo

`); - buttons[1].dispatchEvent(event); + await buttons[1].dispatchEvent(event); assert.equal(component.clicked, 'bar'); assert.htmlEqual(target.innerHTML, ` diff --git a/test/runtime/samples/event-handler-each-this/_config.js b/test/runtime/samples/event-handler-each-this/_config.js index 54ce26b3db..ed5d095d91 100644 --- a/test/runtime/samples/event-handler-each-this/_config.js +++ b/test/runtime/samples/event-handler-each-this/_config.js @@ -16,7 +16,7 @@ export default { const clicked = []; component.$on('clicked', event => { - clicked.push(event.node); + clicked.push(event.detail.node); }); buttons[1].dispatchEvent(event); diff --git a/test/runtime/samples/event-handler-each-this/main.html b/test/runtime/samples/event-handler-each-this/main.html index d722ffc904..52fa53a807 100644 --- a/test/runtime/samples/event-handler-each-this/main.html +++ b/test/runtime/samples/event-handler-each-this/main.html @@ -1,9 +1,11 @@ {#each items as item} - + {/each} \ No newline at end of file diff --git a/test/runtime/samples/event-handler-each/_config.js b/test/runtime/samples/event-handler-each/_config.js index 3710631cd2..c1d1d3c363 100644 --- a/test/runtime/samples/event-handler-each/_config.js +++ b/test/runtime/samples/event-handler-each/_config.js @@ -15,11 +15,11 @@ export default {

selected: foo

`, - test(assert, component, target, window) { + async test(assert, component, target, window) { const buttons = target.querySelectorAll('button'); const event = new window.MouseEvent('click'); - buttons[1].dispatchEvent(event); + await buttons[1].dispatchEvent(event); assert.htmlEqual(target.innerHTML, ` diff --git a/test/runtime/samples/event-handler-removal/_config.js b/test/runtime/samples/event-handler-removal/_config.js index d19a9143a2..5340196d9a 100644 --- a/test/runtime/samples/event-handler-removal/_config.js +++ b/test/runtime/samples/event-handler-removal/_config.js @@ -1,19 +1,20 @@ // TODO gah, JSDOM appears to behave differently to real browsers here... probably need to raise an issue export default { - html: '', - test ( assert, component ) { - component.refs.input.focus(); + html: '', + + test(assert, component) { + component.input.focus(); // this should NOT trigger blur event component.visible = false; - assert.ok( !component.blurred ); + assert.ok(!component.blurred); component.visible = true; - component.refs.input.focus(); + component.input.focus(); // this SHOULD trigger blur event - component.refs.input.blur(); - assert.ok( component.blurred ); + component.input.blur(); + assert.ok(component.blurred); } }; diff --git a/test/runtime/samples/event-handler-sanitize/_config.js b/test/runtime/samples/event-handler-sanitize/_config.js index 2037f292f2..cd89be5ac0 100644 --- a/test/runtime/samples/event-handler-sanitize/_config.js +++ b/test/runtime/samples/event-handler-sanitize/_config.js @@ -3,19 +3,19 @@ export default {
toggle
`, - test ( assert, component, target, window ) { - const div = target.querySelector( 'div' ); - const event = new window.MouseEvent( 'some-event' ); + async test(assert, component, target, window) { + const div = target.querySelector('div'); + const event = new window.MouseEvent('some-event'); - div.dispatchEvent( event ); - assert.htmlEqual( target.innerHTML, ` + await div.dispatchEvent(event); + assert.htmlEqual(target.innerHTML, `
toggle

hello!

- ` ); + `); - div.dispatchEvent( event ); - assert.htmlEqual( target.innerHTML, ` + await div.dispatchEvent(event); + assert.htmlEqual(target.innerHTML, `
toggle
- ` ); + `); } }; diff --git a/test/runtime/samples/event-handler-shorthand-component/_config.js b/test/runtime/samples/event-handler-shorthand-component/_config.js index 7f9f59983e..065df36d77 100644 --- a/test/runtime/samples/event-handler-shorthand-component/_config.js +++ b/test/runtime/samples/event-handler-shorthand-component/_config.js @@ -3,7 +3,7 @@ export default { `, - test (assert, component, target, window) { + test(assert, component, target, window) { const button = target.querySelector('button'); const event = new window.MouseEvent('click'); diff --git a/test/runtime/samples/event-handler-shorthand-dynamic-component/_config.js b/test/runtime/samples/event-handler-shorthand-dynamic-component/_config.js index 7f9f59983e..065df36d77 100644 --- a/test/runtime/samples/event-handler-shorthand-dynamic-component/_config.js +++ b/test/runtime/samples/event-handler-shorthand-dynamic-component/_config.js @@ -3,7 +3,7 @@ export default { `, - test (assert, component, target, window) { + test(assert, component, target, window) { const button = target.querySelector('button'); const event = new window.MouseEvent('click'); diff --git a/test/runtime/samples/globals-not-overwritten-by-bindings/main.html b/test/runtime/samples/globals-not-overwritten-by-bindings/main.html index a8b873211c..9c573a6319 100644 --- a/test/runtime/samples/globals-not-overwritten-by-bindings/main.html +++ b/test/runtime/samples/globals-not-overwritten-by-bindings/main.html @@ -1,6 +1,6 @@ {#each Object.keys(todos) as key}
- - + +
{/each} \ No newline at end of file