From a8abe61fb29b75eb81374ad6a047535fd80e65ce Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Fri, 24 Feb 2017 16:57:11 -0500 Subject: [PATCH] failing tests for second bug in #290 --- .../component-binding-each-nested/Widget.html | 1 + .../component-binding-each-nested/_config.js | 28 +++++++++++++++++++ .../component-binding-each-nested/main.html | 22 +++++++++++++++ .../component-binding-each/Widget.html | 1 + .../component-binding-each/_config.js | 28 +++++++++++++++++++ .../component-binding-each/main.html | 21 ++++++++++++++ 6 files changed, 101 insertions(+) create mode 100644 test/generator/component-binding-each-nested/Widget.html create mode 100644 test/generator/component-binding-each-nested/_config.js create mode 100644 test/generator/component-binding-each-nested/main.html create mode 100644 test/generator/component-binding-each/Widget.html create mode 100644 test/generator/component-binding-each/_config.js create mode 100644 test/generator/component-binding-each/main.html diff --git a/test/generator/component-binding-each-nested/Widget.html b/test/generator/component-binding-each-nested/Widget.html new file mode 100644 index 0000000000..f24d608cd5 --- /dev/null +++ b/test/generator/component-binding-each-nested/Widget.html @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/test/generator/component-binding-each-nested/_config.js b/test/generator/component-binding-each-nested/_config.js new file mode 100644 index 0000000000..c25c9cf803 --- /dev/null +++ b/test/generator/component-binding-each-nested/_config.js @@ -0,0 +1,28 @@ +export default { + html: ` + + + + +

foo, bar, baz

+ `, + + test ( assert, component, target, window ) { + const change = new window.MouseEvent( 'change' ); + const inputs = target.querySelectorAll( 'input' ); + + inputs[0].value = 'blah'; + inputs[0].dispatchEvent( change ); + + assert.deepEqual( component.get( 'a' ), [ 'blah', 'bar', 'baz' ] ); + assert.htmlEqual( target.innerHTML, ` + + + + +

blah, bar, baz

+ ` ); + + component.teardown(); + } +}; diff --git a/test/generator/component-binding-each-nested/main.html b/test/generator/component-binding-each-nested/main.html new file mode 100644 index 0000000000..bdda96fe75 --- /dev/null +++ b/test/generator/component-binding-each-nested/main.html @@ -0,0 +1,22 @@ +{{#each a as x}} + +{{/each}} + +

{{a.map(getName).join(', ')}}

+ + diff --git a/test/generator/component-binding-each/Widget.html b/test/generator/component-binding-each/Widget.html new file mode 100644 index 0000000000..f24d608cd5 --- /dev/null +++ b/test/generator/component-binding-each/Widget.html @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/test/generator/component-binding-each/_config.js b/test/generator/component-binding-each/_config.js new file mode 100644 index 0000000000..c25c9cf803 --- /dev/null +++ b/test/generator/component-binding-each/_config.js @@ -0,0 +1,28 @@ +export default { + html: ` + + + + +

foo, bar, baz

+ `, + + test ( assert, component, target, window ) { + const change = new window.MouseEvent( 'change' ); + const inputs = target.querySelectorAll( 'input' ); + + inputs[0].value = 'blah'; + inputs[0].dispatchEvent( change ); + + assert.deepEqual( component.get( 'a' ), [ 'blah', 'bar', 'baz' ] ); + assert.htmlEqual( target.innerHTML, ` + + + + +

blah, bar, baz

+ ` ); + + component.teardown(); + } +}; diff --git a/test/generator/component-binding-each/main.html b/test/generator/component-binding-each/main.html new file mode 100644 index 0000000000..6dbae7e403 --- /dev/null +++ b/test/generator/component-binding-each/main.html @@ -0,0 +1,21 @@ +{{#each a as x}} + +{{/each}} + +

{{a.join(', ')}}

+ +