From fcbb8e6efff72bc8a6e01725811c099ed0b212cb Mon Sep 17 00:00:00 2001 From: Richard Harris Date: Sat, 26 Jan 2019 22:53:40 -0500 Subject: [PATCH] failing tests for #2000 --- .../_config.js | 25 +++++++++++++++++++ .../main.html | 16 ++++++++++++ .../transition-js-each-unchanged/_config.js | 25 +++++++++++++++++++ .../transition-js-each-unchanged/main.html | 16 ++++++++++++ 4 files changed, 82 insertions(+) create mode 100644 test/runtime/samples/transition-js-each-keyed-unchanged/_config.js create mode 100644 test/runtime/samples/transition-js-each-keyed-unchanged/main.html create mode 100644 test/runtime/samples/transition-js-each-unchanged/_config.js create mode 100644 test/runtime/samples/transition-js-each-unchanged/main.html diff --git a/test/runtime/samples/transition-js-each-keyed-unchanged/_config.js b/test/runtime/samples/transition-js-each-keyed-unchanged/_config.js new file mode 100644 index 0000000000..b3a1882196 --- /dev/null +++ b/test/runtime/samples/transition-js-each-keyed-unchanged/_config.js @@ -0,0 +1,25 @@ +export default { + props: { + numbers: [1, 2, 3, 4, 5] + }, + + test({ assert, component, target, raf }) { + const divs1 = target.querySelectorAll('div'); + assert.equal(divs1[0].foo, undefined); + + component.numbers = [1, 2, 5, 4, 3]; + const divs2 = target.querySelectorAll('div'); + + assert.equal(divs1[0], divs2[0]); + assert.equal(divs1[1], divs2[1]); + assert.equal(divs1[2], divs2[4]); + assert.equal(divs1[3], divs2[3]); + assert.equal(divs1[4], divs2[2]); + + assert.equal(divs1[0].foo, undefined); + assert.equal(divs1[1].foo, undefined); + assert.equal(divs1[2].foo, undefined); + assert.equal(divs1[3].foo, undefined); + assert.equal(divs1[4].foo, undefined); + } +}; \ No newline at end of file diff --git a/test/runtime/samples/transition-js-each-keyed-unchanged/main.html b/test/runtime/samples/transition-js-each-keyed-unchanged/main.html new file mode 100644 index 0000000000..ef2426c2db --- /dev/null +++ b/test/runtime/samples/transition-js-each-keyed-unchanged/main.html @@ -0,0 +1,16 @@ + + +{#each numbers as num, i (num)} +
{num}
+{/each} \ No newline at end of file diff --git a/test/runtime/samples/transition-js-each-unchanged/_config.js b/test/runtime/samples/transition-js-each-unchanged/_config.js new file mode 100644 index 0000000000..9bd2206211 --- /dev/null +++ b/test/runtime/samples/transition-js-each-unchanged/_config.js @@ -0,0 +1,25 @@ +export default { + props: { + numbers: [1, 2, 3, 4, 5] + }, + + test({ assert, component, target, raf }) { + const divs1 = target.querySelectorAll('div'); + assert.equal(divs1[0].foo, undefined); + + component.numbers = [1, 2, 5, 4, 3]; + const divs2 = target.querySelectorAll('div'); + + assert.equal(divs1[0], divs2[0]); + assert.equal(divs1[1], divs2[1]); + assert.equal(divs1[2], divs2[2]); + assert.equal(divs1[3], divs2[3]); + assert.equal(divs1[4], divs2[4]); + + assert.equal(divs1[0].foo, undefined); + assert.equal(divs1[1].foo, undefined); + assert.equal(divs1[2].foo, undefined); + assert.equal(divs1[3].foo, undefined); + assert.equal(divs1[4].foo, undefined); + } +}; \ No newline at end of file diff --git a/test/runtime/samples/transition-js-each-unchanged/main.html b/test/runtime/samples/transition-js-each-unchanged/main.html new file mode 100644 index 0000000000..d1cee7bd23 --- /dev/null +++ b/test/runtime/samples/transition-js-each-unchanged/main.html @@ -0,0 +1,16 @@ + + +{#each numbers as num, i} +
{num}
+{/each} \ No newline at end of file