From 44115840bd894ab6281ea61f5dc39021d96da3ae Mon Sep 17 00:00:00 2001 From: Dominic Gannaway Date: Thu, 23 May 2024 08:29:42 +0100 Subject: [PATCH] chore: cleanup more tests (#11738) remove awaits in favor of flushSync --- .../samples/binding-input/_config.js | 6 ++-- .../samples/event-handler/_config.js | 4 ++- .../custom-elements-samples/nested/_config.js | 4 ++- .../reflect-attributes-add-remove/_config.js | 4 +++ .../reflect-attributes/_config.js | 2 ++ .../samples/action-update/_config.js | 12 ++++--- .../apply-directives-in-order-2/_config.js | 8 +++-- .../apply-directives-in-order/_config.js | 9 ++++-- .../await-then-blowback-reactive/_config.js | 5 +-- .../binding-indirect-computed/_config.js | 6 ++-- .../_config.js | 18 ++++++----- .../_config.js | 8 ++--- .../_config.js | 6 ++-- .../binding-input-checkbox-group/_config.js | 6 ++-- .../samples/binding-input-checkbox/_config.js | 6 ++-- .../_config.js | 12 ++++--- .../binding-input-group-each-1/_config.js | 15 ++++----- .../binding-input-group-each-10/_config.js | 9 ++++-- .../binding-input-group-each-11/_config.js | 11 ++++--- .../binding-input-group-each-12/_config.js | 9 ++++-- .../binding-input-group-each-13/_config.js | 21 +++++++------ .../binding-input-group-each-14/_config.js | 27 ++++++++-------- .../binding-input-group-each-15/_config.js | 9 ++++-- .../binding-input-group-each-16/_config.js | 9 ++++-- .../binding-input-group-each-2/_config.js | 6 ++-- .../binding-input-group-each-3/_config.js | 12 ++++--- .../binding-input-group-each-4/_config.js | 31 ++++++++++--------- .../binding-input-group-each-5/_config.js | 15 ++++----- .../binding-input-group-each-6/_config.js | 12 ++++--- .../binding-input-group-each-8/_config.js | 19 +++++++----- .../binding-input-group-each-9/_config.js | 17 +++++----- .../_config.js | 20 +++++++----- .../_config.js | 15 ++++++--- .../samples/binding-input-number/_config.js | 9 ++++-- .../binding-input-radio-group/_config.js | 6 ++-- .../_config.js | 7 +++-- .../samples/binding-input-range/_config.js | 6 ++-- .../_config.js | 10 +++--- .../_config.js | 11 ++++--- .../binding-input-text-contextual/_config.js | 7 +++-- .../_config.js | 6 ++-- .../_config.js | 12 ++++--- .../_config.js | 6 ++-- .../_config.js | 15 ++++----- .../_config.js | 9 +++--- .../binding-input-text-deep/_config.js | 6 ++-- .../samples/binding-input-text/_config.js | 6 ++-- .../_config.js | 6 ++-- .../binding-select-multiple/_config.js | 9 ++++-- .../binding-select-optgroup/_config.js | 6 ++-- .../samples/binding-select/_config.js | 6 ++-- .../samples/binding-store-deep/_config.js | 9 ++++-- .../samples/binding-store-each/_config.js | 6 ++-- .../samples/binding-store/_config.js | 9 ++++-- .../samples/binding-textarea/_config.js | 6 ++-- .../samples/binding-this-and-value/_config.js | 6 ++-- .../samples/binding-using-props/_config.js | 6 ++-- .../samples/bitmask-overflow-if/_config.js | 4 ++- .../bitmask-overflow-slot-3/_config.js | 6 ++-- .../bitmask-overflow-slot-4/_config.js | 6 ++-- .../bitmask-overflow-slot-5/_config.js | 6 ++-- .../bitmask-overflow-slot-6/_config.js | 9 ++++-- .../component-binding-accessors/_config.js | 9 ++++-- .../component-binding-blowback-d/_config.js | 7 +++-- .../component-binding-blowback-e/_config.js | 7 +++-- .../component-binding-blowback-f/_config.js | 11 +++---- .../samples/component-binding-deep/_config.js | 7 +++-- .../component-binding-deep2/_config.js | 7 +++-- .../component-binding-each-nested/_config.js | 7 +++-- .../samples/component-binding-each/_config.js | 7 +++-- .../_config.js | 11 ++++--- .../component-binding-nested/_config.js | 12 ++++--- .../component-binding-non-leaky/_config.js | 7 +++-- .../_config.js | 9 ++++-- .../_config.js | 15 ++++++--- .../_config.js | 9 ++++-- .../component-binding-store/_config.js | 15 ++++----- .../samples/component-binding/_config.js | 9 ++++-- .../samples/component-prop-object/_config.js | 6 ++-- .../component-slot-attribute-order/_config.js | 6 ++-- .../component-slot-fallback-2/_config.js | 9 ++++-- .../component-slot-fallback-5/_config.js | 9 ++++-- .../component-slot-fallback-6/_config.js | 6 ++-- .../samples/component-slot-let-b/_config.js | 6 ++-- .../samples/component-slot-let-c/_config.js | 6 ++-- .../samples/component-slot-let-d/_config.js | 6 ++-- .../_config.js | 12 ++++--- .../component-slot-let-scope-3/_config.js | 6 ++-- .../component-slot-nested-if/_config.js | 9 ++++-- .../_config.js | 6 ++-- .../_config.js | 6 ++-- .../_config.js | 6 ++-- .../_config.js | 12 ++++--- .../_config.js | 14 +++++---- .../component-yield-placement/_config.js | 6 ++-- .../samples/const-tag-invalidate/_config.js | 17 +++++----- .../samples/context-api/_config.js | 9 ++++-- .../samples/custom-method/_config.js | 9 ++++-- .../_config.js | 6 ++-- .../_config.js | 7 +++-- .../dynamic-component-spread-props/_config.js | 9 ++++-- .../_config.js | 7 +++-- .../each-block-keyed-bind-group/_config.js | 15 ++++----- .../each-block-keyed-dynamic-2/_config.js | 6 ++-- .../_config.js | 8 +++-- .../each-block-scope-shadow-bind-2/_config.js | 7 +++-- .../each-block-scope-shadow-bind-3/_config.js | 19 ++++++------ .../each-block-scope-shadow-bind-4/_config.js | 15 ++++----- .../each-block-scope-shadow-bind/_config.js | 7 +++-- .../each-blocks-assignment-2/_config.js | 7 +++-- .../samples/each-blocks-assignment/_config.js | 26 +++++++++------- .../empty-component-destroy/_config.js | 7 +++-- .../event-handler-destructured/_config.js | 6 ++-- .../event-handler-dynamic-2/_config.js | 25 ++++++++++----- .../_config.js | 6 ++-- .../_config.js | 10 ++++-- .../event-handler-dynamic-hash/_config.js | 17 ++++++---- .../samples/event-handler-dynamic/_config.js | 16 ++++++---- .../_config.js | 13 +++++--- .../_config.js | 11 +++++-- .../samples/event-handler-each/_config.js | 7 +++-- .../_config.js | 9 ++++-- .../samples/event-handler-sanitize/_config.js | 9 ++++-- .../samples/event-handler/_config.js | 11 +++++-- .../_config.js | 6 ++-- .../samples/if-block-else-update/_config.js | 19 +++++++++--- .../inline-style-become-undefined/_config.js | 7 +++-- .../_config.js | 5 +-- .../_config.js | 9 ++++-- .../_config.js | 7 +++-- .../_config.js | 6 ++-- .../instrumentation-script-update/_config.js | 6 ++-- .../_config.js | 9 ++++-- .../_config.js | 7 +++-- .../_config.js | 6 ++-- .../_config.js | 6 ++-- .../_config.js | 15 ++++++--- .../invalidation-in-if-condition/_config.js | 12 ++++--- .../key-block-component-slot/_config.js | 7 +++-- .../samples/key-block-static-if/_config.js | 4 ++- .../_config.js | 7 +++-- .../_config.js | 6 ++-- .../nested-destructure-assignment/_config.js | 6 ++-- .../samples/prop-no-change/_config.js | 6 ++-- .../samples/props-reactive-slot/_config.js | 6 ++-- .../samples/props-reassign/_config.js | 9 ++++-- .../samples/raw-mustache-as-root/_config.js | 13 ++++---- .../raw-mustache-inside-slot/_config.js | 11 ++++--- .../reactive-compound-operator/_config.js | 7 +++-- .../_config.js | 6 ++-- .../reactive-statement-indirect/_config.js | 7 +++-- .../reactive-update-expression/_config.js | 9 ++++-- .../reactive-value-mutate-const/_config.js | 7 +++-- .../samples/rest-props-reassign/_config.js | 9 ++++-- .../rest-props-without-props/_config.js | 18 ++++++----- .../samples/rest-props/_config.js | 18 ++++++----- .../samples/select-lazy-options/_config.js | 4 ++- .../spread-component-with-bind/_config.js | 6 ++-- .../_config.js | 13 +++++--- .../_config.js | 9 ++++-- .../store-assignment-updates/_config.js | 9 ++++-- .../store-auto-subscribe-implicit/_config.js | 9 ++++-- .../samples/store-auto-subscribe/_config.js | 9 ++++-- .../store-each-binding-deep/_config.js | 6 ++-- .../_config.js | 6 ++-- .../samples/store-each-binding/_config.js | 6 ++-- .../samples/store-resubscribe/_config.js | 12 ++++--- .../transition-js-events-in-out/_config.js | 3 ++ .../_config.js | 6 ++-- .../samples/window-binding-resize/_config.js | 6 ++-- .../window-binding-scroll-store/_config.js | 6 ++-- .../samples/window-event-context/_config.js | 7 +++-- .../samples/window-event/_config.js | 7 +++-- .../samples/ambiguous-source/_config.js | 6 ++-- .../attribute-spread-reactivitiy/_config.js | 5 +-- .../samples/bind-state-property/_config.js | 7 +++-- .../samples/bindings-form-reset/_config.js | 4 ++- .../class-frozen-state-object/_config.js | 9 ++++-- .../samples/class-frozen-state/_config.js | 9 ++++-- .../_config.js | 9 ++++-- .../class-private-frozen-state/_config.js | 9 ++++-- .../class-private-state-increment/_config.js | 9 ++++-- .../class-private-state-init/_config.js | 9 ++++-- .../class-private-state-proxy/_config.js | 9 ++++-- .../samples/class-private-state/_config.js | 9 ++++-- .../class-state-deep-update/_config.js | 11 +++++-- .../samples/class-state-derived-fn/_config.js | 9 ++++-- .../class-state-derived-private/_config.js | 9 ++++-- .../samples/class-state-derived/_config.js | 9 ++++-- .../samples/class-state-increment/_config.js | 9 ++++-- .../class-state-init-conflict/_config.js | 9 ++++-- .../class-state-init-eager-2/_config.js | 9 ++++-- .../class-state-init-eager-3/_config.js | 9 ++++-- .../samples/class-state-init-eager/_config.js | 9 ++++-- .../samples/class-state-init/_config.js | 9 ++++-- .../samples/class-state-proxy/_config.js | 9 ++++-- .../class-state-public-private/_config.js | 9 ++++-- .../class-state-with-literal/_config.js | 9 ++++-- .../samples/class-state/_config.js | 9 ++++-- .../component-let-directive/_config.js | 6 ++-- .../samples/derived-direct/_config.js | 6 ++-- .../samples/derived-fn-destructure/_config.js | 6 ++-- .../samples/derived-fn/_config.js | 6 ++-- .../derived-indirect-arrow-fn/_config.js | 4 ++- .../samples/derived-indirect-fn-2/_config.js | 6 ++-- .../samples/derived-indirect-fn/_config.js | 6 ++-- .../samples/derived-proxy/_config.js | 9 ++++-- .../destructure-derived-event/_config.js | 6 ++-- .../samples/each-mutation/_config.js | 15 ++++----- .../runtime-runes/samples/effect/_config.js | 5 +-- .../samples/effects-order/_config.js | 5 +-- .../samples/event-arguments-2/_config.js | 5 +-- .../samples/event-arguments/_config.js | 5 +-- .../event-attribute-after-binding/_config.js | 9 ++++-- .../event-attribute-after-spread/_config.js | 6 ++-- .../event-attribute-capture/_config.js | 5 +-- .../event-attribute-spread-capture/_config.js | 5 +-- .../samples/event-attribute-window/_config.js | 5 +-- .../samples/event-exported/_config.js | 7 +++-- .../samples/event-listener-spread/_config.js | 5 +-- .../_config.js | 7 +++-- .../samples/exports-1/_config.js | 9 +++--- .../samples/exports-2/_config.js | 9 +++--- .../samples/exports-3/_config.js | 5 +-- .../samples/inspect-derived/_config.js | 7 +++-- .../samples/invalidate-effect/_config.js | 5 +-- .../samples/mutation-both/_config.js | 15 ++++++--- .../runtime-runes/samples/mutation/_config.js | 9 ++++-- .../nested-destructure-assignment/_config.js | 6 ++-- .../samples/not-actual-runes/_config.js | 6 ++-- .../samples/pre-effect/_config.js | 5 +-- .../samples/props-alias/_config.js | 5 +-- .../samples/props-bound-fallback/_config.js | 6 ++-- .../samples/props-bound-to-normal/_config.js | 16 ++++++---- .../samples/props-bound/_config.js | 5 +-- .../props-default-value-behavior/_config.js | 19 +++++++----- .../samples/props-spread-fallback/_config.js | 15 ++++++--- .../samples/readonly-state-replace/_config.js | 5 +-- .../samples/readonly-state/_config.js | 5 +-- .../runes-in-module-context/_config.js | 6 ++-- .../_config.js | 6 ++-- .../snippet-argument-destructured/_config.js | 6 ++-- .../snippet-argument-multiple/_config.js | 6 ++-- .../samples/snippet-argument/_config.js | 6 ++-- .../snippet-complicated-defaults/_config.js | 16 +++++++--- .../samples/snippet-const/_config.js | 9 ++++-- .../samples/snippet-expressions/_config.js | 6 ++-- .../snippet-optional-arguments/_config.js | 4 ++- .../samples/snippet-prop-explicit/_config.js | 6 ++-- .../samples/snippet-prop-implicit/_config.js | 6 ++-- .../samples/snippet-prop-reactive/_config.js | 6 ++-- .../samples/snippet-reactive/_config.js | 6 ++-- .../samples/state-snapshot/_config.js | 6 ++-- .../samples/state-space/_config.js | 6 ++-- .../samples/state-undefined/_config.js | 7 +++-- .../store-subscribe-effect-init/_config.js | 9 ++++-- .../samples/typescript/_config.js | 6 ++-- .../samples/untracked/_config.js | 12 ++++--- .../samples/wrapped-$state-2/_config.js | 6 ++-- .../samples/wrapped-$state/_config.js | 9 ++++-- 260 files changed, 1435 insertions(+), 818 deletions(-) diff --git a/packages/svelte/tests/hydration/samples/binding-input/_config.js b/packages/svelte/tests/hydration/samples/binding-input/_config.js index f30b4acac6..ebb48abec6 100644 --- a/packages/svelte/tests/hydration/samples/binding-input/_config.js +++ b/packages/svelte/tests/hydration/samples/binding-input/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { assert_ok, test } from '../../test'; export default test({ @@ -12,11 +13,12 @@ export default test({ }; }, - async test(assert, target, _, component, window) { + test(assert, target, _, component, window) { const input = target.querySelector('input'); assert_ok(input); input.value = 'everybody'; - await input.dispatchEvent(new window.Event('input')); + input.dispatchEvent(new window.Event('input')); + flushSync(); assert.equal(component.name, 'everybody'); assert.htmlEqual( diff --git a/packages/svelte/tests/hydration/samples/event-handler/_config.js b/packages/svelte/tests/hydration/samples/event-handler/_config.js index f76ae62825..282670258c 100644 --- a/packages/svelte/tests/hydration/samples/event-handler/_config.js +++ b/packages/svelte/tests/hydration/samples/event-handler/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { assert_ok, test } from '../../test'; export default test({ @@ -16,7 +17,8 @@ export default test({ async test(assert, target, _, component, window) { const button = target.querySelector('button'); assert_ok(button); - await button.dispatchEvent(new window.MouseEvent('click', { bubbles: true })); + button.dispatchEvent(new window.MouseEvent('click', { bubbles: true })); + flushSync(); assert.ok(component.clicked); assert.htmlEqual( diff --git a/packages/svelte/tests/runtime-browser/custom-elements-samples/nested/_config.js b/packages/svelte/tests/runtime-browser/custom-elements-samples/nested/_config.js index 1c6926be17..f184fd5d99 100644 --- a/packages/svelte/tests/runtime-browser/custom-elements-samples/nested/_config.js +++ b/packages/svelte/tests/runtime-browser/custom-elements-samples/nested/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../assert'; const tick = () => Promise.resolve(); @@ -18,7 +19,8 @@ export default test({ assert.equal(p.innerHTML, 'Context works'); assert.equal(getComputedStyle(button).color, 'rgb(255, 0, 0)'); - await button.dispatchEvent(new MouseEvent('click', { bubbles: true })); + button.dispatchEvent(new MouseEvent('click', { bubbles: true })); + flushSync(); assert.equal(el.counter.count, 1); assert.equal(button.innerHTML, 'count: 1'); diff --git a/packages/svelte/tests/runtime-browser/custom-elements-samples/reflect-attributes-add-remove/_config.js b/packages/svelte/tests/runtime-browser/custom-elements-samples/reflect-attributes-add-remove/_config.js index d0ac2cd9cf..7463e8287f 100644 --- a/packages/svelte/tests/runtime-browser/custom-elements-samples/reflect-attributes-add-remove/_config.js +++ b/packages/svelte/tests/runtime-browser/custom-elements-samples/reflect-attributes-add-remove/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../assert'; const tick = () => Promise.resolve(); @@ -6,15 +7,18 @@ export default test({ const element = document.createElement('custom-element'); target.appendChild(element); await tick(); + flushSync(); /** @type {any} */ const el = target.querySelector('custom-element'); el.shadowRoot.querySelector('button').click(); await tick(); + flushSync(); assert.equal(el.getAttribute('aria-expanded'), ''); el.shadowRoot.querySelector('button').click(); await tick(); + flushSync(); assert.equal(el.getAttribute('aria-expanded'), null); } diff --git a/packages/svelte/tests/runtime-browser/custom-elements-samples/reflect-attributes/_config.js b/packages/svelte/tests/runtime-browser/custom-elements-samples/reflect-attributes/_config.js index 46fc009bd4..62930c2872 100644 --- a/packages/svelte/tests/runtime-browser/custom-elements-samples/reflect-attributes/_config.js +++ b/packages/svelte/tests/runtime-browser/custom-elements-samples/reflect-attributes/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../assert'; const tick = () => Promise.resolve(); @@ -23,6 +24,7 @@ export default test({ assert.equal(getComputedStyle(inner_p).color, 'rgb(255, 255, 255)'); button.click(); + flushSync(); await tick(); await tick(); diff --git a/packages/svelte/tests/runtime-legacy/samples/action-update/_config.js b/packages/svelte/tests/runtime-legacy/samples/action-update/_config.js index 1c1dcacf63..a3fcb4232e 100644 --- a/packages/svelte/tests/runtime-legacy/samples/action-update/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/action-update/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -5,7 +6,7 @@ export default test({ `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const button = target.querySelector('button'); ok(button); @@ -13,7 +14,8 @@ export default test({ const leave = new window.MouseEvent('mouseleave'); const ctrlPress = new window.KeyboardEvent('keydown', { ctrlKey: true }); - await button.dispatchEvent(enter); + button.dispatchEvent(enter); + flushSync(); assert.htmlEqual( target.innerHTML, ` @@ -22,7 +24,8 @@ export default test({ ` ); - await window.dispatchEvent(ctrlPress); + window.dispatchEvent(ctrlPress); + flushSync(); assert.htmlEqual( target.innerHTML, ` @@ -31,7 +34,8 @@ export default test({ ` ); - await button.dispatchEvent(leave); + button.dispatchEvent(leave); + flushSync(); assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-legacy/samples/apply-directives-in-order-2/_config.js b/packages/svelte/tests/runtime-legacy/samples/apply-directives-in-order-2/_config.js index 62734c059b..d414ae1f24 100644 --- a/packages/svelte/tests/runtime-legacy/samples/apply-directives-in-order-2/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/apply-directives-in-order-2/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; /** @type {string[]} */ @@ -9,14 +10,15 @@ export default test({ return { value }; }, - async test({ assert, target, window }) { + test({ assert, target, window }) { const inputs = target.querySelectorAll('input'); - const event = new window.Event('input'); + const event = new window.Event('input', { bubbles: true }); for (const input of inputs) { input.value = 'h'; - await input.dispatchEvent(event); + input.dispatchEvent(event); + flushSync(); } // Svelte 5 breaking change, use:action now fires diff --git a/packages/svelte/tests/runtime-legacy/samples/apply-directives-in-order/_config.js b/packages/svelte/tests/runtime-legacy/samples/apply-directives-in-order/_config.js index aa9ce53877..aea50afafd 100644 --- a/packages/svelte/tests/runtime-legacy/samples/apply-directives-in-order/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/apply-directives-in-order/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -15,13 +16,14 @@ export default test({

`, - async test({ assert, target, window }) { + test({ assert, target, window }) { const input = target.querySelector('input'); ok(input); const event = new window.Event('input'); input.value = 'h'; - await input.dispatchEvent(event); + input.dispatchEvent(event); + flushSync(); assert.equal(input.value, 'H'); assert.htmlEqual( @@ -33,7 +35,8 @@ export default test({ ); input.value = 'he'; - await input.dispatchEvent(event); + input.dispatchEvent(event); + flushSync(); assert.equal(input.value, 'HE'); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/await-then-blowback-reactive/_config.js b/packages/svelte/tests/runtime-legacy/samples/await-then-blowback-reactive/_config.js index 2b8ba803da..665b8d94b6 100644 --- a/packages/svelte/tests/runtime-legacy/samples/await-then-blowback-reactive/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/await-then-blowback-reactive/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -17,8 +18,8 @@ export default test({ const change = new window.Event('change'); options[1].selected = true; - await select.dispatchEvent(change); - await Promise.resolve(); + select.dispatchEvent(change); + flushSync(); assert.equal(span.textContent, 'b'); } diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-indirect-computed/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-indirect-computed/_config.js index 99ec25dd9c..d6ad620356 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-indirect-computed/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-indirect-computed/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -13,7 +14,7 @@ export default test({ `, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const select = target.querySelector('select'); ok(select); const options = target.querySelectorAll('option'); @@ -21,7 +22,8 @@ export default test({ const change = new window.Event('change'); options[1].selected = true; - await select.dispatchEvent(change); + select.dispatchEvent(change); + flushSync(); assert.equal(component.selected.letter, 'B'); assert.htmlEqual( diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-checkbox-deep-contextual-b/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-checkbox-deep-contextual-b/_config.js index 35946383b7..ceb6c8b72e 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-checkbox-deep-contextual-b/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-checkbox-deep-contextual-b/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -25,17 +26,17 @@ export default test({ `, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const inputs = [...target.querySelectorAll('input')]; const event = new window.Event('change'); inputs[1].checked = true; - await inputs[1].dispatchEvent(event); + inputs[1].dispatchEvent(event); + flushSync(); - await component.clear(); - - await Promise.resolve(); + component.clear(); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -46,9 +47,10 @@ export default test({ ); inputs[2].checked = true; - await inputs[2].dispatchEvent(event); - - await component.clear(); + inputs[2].dispatchEvent(event); + flushSync(); + component.clear(); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-checkbox-deep-contextual/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-checkbox-deep-contextual/_config.js index 775ee643c7..c5fd2f7b49 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-checkbox-deep-contextual/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-checkbox-deep-contextual/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -37,7 +38,7 @@ export default test({

1 completed

`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const inputs = [...target.querySelectorAll('input')]; assert.ok(inputs[0].checked); @@ -47,9 +48,8 @@ export default test({ const event = new window.Event('change'); inputs[1].checked = true; - await inputs[1].dispatchEvent(event); - // Wait for the DOM to update - await Promise.resolve(); + inputs[1].dispatchEvent(event); + flushSync(); assert.equal(component.numCompleted, 2); assert.htmlEqual( diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-checkbox-group-outside-each/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-checkbox-group-outside-each/_config.js index 5be1d9b38d..489584127d 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-checkbox-group-outside-each/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-checkbox-group-outside-each/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; const values = [{ name: 'Alpha' }, { name: 'Beta' }, { name: 'Gamma' }]; @@ -37,7 +38,7 @@ export default test({

Beta

`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const inputs = target.querySelectorAll('input'); assert.equal(inputs[0].checked, false); assert.equal(inputs[1].checked, true); @@ -46,7 +47,8 @@ export default test({ const event = new window.Event('change'); inputs[0].checked = true; - await inputs[0].dispatchEvent(event); + inputs[0].dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-checkbox-group/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-checkbox-group/_config.js index ee508a564e..c669bbb21d 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-checkbox-group/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-checkbox-group/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; const values = [{ name: 'Alpha' }, { name: 'Beta' }, { name: 'Gamma' }]; @@ -37,7 +38,7 @@ export default test({

Beta

`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { let inputs = target.querySelectorAll('input'); assert.equal(inputs[0].checked, false); assert.equal(inputs[1].checked, true); @@ -46,7 +47,8 @@ export default test({ const event = new window.Event('change'); inputs[0].checked = true; - await inputs[0].dispatchEvent(event); + inputs[0].dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-checkbox/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-checkbox/_config.js index 813c12be1b..1d8a208682 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-checkbox/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-checkbox/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -15,7 +16,7 @@ export default test({

true

`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const input = target.querySelector('input'); ok(input); @@ -24,7 +25,8 @@ export default test({ const event = new window.Event('change'); input.checked = false; - await input.dispatchEvent(event); + input.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-duplicate-value/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-duplicate-value/_config.js index 6e9445ca0c..6d3c494d0d 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-duplicate-value/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-duplicate-value/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -19,7 +20,7 @@ export default test({ d
`, - async test({ assert, target, window }) { + test({ assert, target, window }) { const inputs = target.querySelectorAll('input'); const p = target.querySelector('p'); ok(p); @@ -37,7 +38,8 @@ export default test({ const event = new window.Event('change'); inputs[0].checked = true; - await inputs[0].dispatchEvent(event); + inputs[0].dispatchEvent(event); + flushSync(); assert.htmlEqual(p.innerHTML, 'Checked: a'); @@ -52,7 +54,8 @@ export default test({ assert.equal(inputs[7].checked, false); inputs[3].checked = true; - await inputs[3].dispatchEvent(event); + inputs[3].dispatchEvent(event); + flushSync(); assert.htmlEqual(p.innerHTML, 'Checked: a,d'); @@ -67,7 +70,8 @@ export default test({ assert.equal(inputs[7].checked, true); inputs[4].checked = false; - await inputs[4].dispatchEvent(event); + inputs[4].dispatchEvent(event); + flushSync(); assert.htmlEqual(p.innerHTML, 'Checked: d'); diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-1/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-1/_config.js index 47362f973b..9240723738 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-1/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-1/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; /** @type {Array<{ name: string }>} */ @@ -112,7 +113,7 @@ export default test({ `, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const inputs = target.querySelectorAll('input'); assert.equal(inputs[0].checked, false); assert.equal(inputs[1].checked, true); @@ -127,8 +128,8 @@ export default test({ const event = new window.Event('change'); inputs[0].checked = true; - await inputs[0].dispatchEvent(event); - await Promise.resolve(); + inputs[0].dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -181,8 +182,8 @@ export default test({ ` ); inputs[3].checked = true; - await inputs[3].dispatchEvent(event); - await Promise.resolve(); + inputs[3].dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -236,8 +237,8 @@ export default test({ ); inputs[8].checked = false; - await inputs[8].dispatchEvent(event); - await Promise.resolve(); + inputs[8].dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-10/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-10/_config.js index 86dc7d397c..4b573e2527 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-10/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-10/_config.js @@ -1,16 +1,19 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; // https://github.com/sveltejs/svelte/issues/7633 export default test({ - async test({ assert, target, component }) { + test({ assert, target, component }) { let inputs = target.querySelectorAll('input'); assert.equal(inputs[0].checked, true); assert.equal(inputs[1].checked, false); assert.equal(inputs[2].checked, false); - await component.moveDown(0); - await component.moveDown(1); + component.moveDown(0); + flushSync(); + component.moveDown(1); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-11/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-11/_config.js index 3ab329511d..64d0fd8f93 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-11/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-11/_config.js @@ -1,8 +1,9 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; // https://github.com/sveltejs/svelte/issues/6112 export default test({ - async test({ assert, target, component, window }) { + test({ assert, target, component, window }) { let inputs = target.querySelectorAll('input'); /** @param {Set} set */ @@ -45,8 +46,8 @@ export default test({ // dom to value inputs[3].checked = true; - await inputs[3].dispatchEvent(event); - await Promise.resolve(); + inputs[3].dispatchEvent(event); + flushSync(); check(new Set([0, 3, 5, 6])); assert.equal(component.pipelineOperations[1].operation.args[1].value, 'd'); @@ -84,8 +85,8 @@ export default test({ check(new Set([0, 3, 5, 6])); inputs[2].checked = true; - await inputs[2].dispatchEvent(event); - await Promise.resolve(); + inputs[2].dispatchEvent(event); + flushSync(); check(new Set([0, 2, 5, 6])); } diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-12/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-12/_config.js index b3fb0e7bc1..14b8030d89 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-12/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-12/_config.js @@ -1,8 +1,9 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; // https://github.com/sveltejs/svelte/issues/6112 export default test({ - async test({ assert, target, component, window }) { + test({ assert, target, component, window }) { let inputs = target.querySelectorAll('input'); /** @param {Set} set */ @@ -45,7 +46,8 @@ export default test({ // dom to value inputs[3].checked = true; - await inputs[3].dispatchEvent(event); + inputs[3].dispatchEvent(event); + flushSync(); check(new Set([0, 2, 3])); assert.deepEqual(component.pipelineOperations[1].operation.args[1].value, ['c', 'd']); @@ -83,7 +85,8 @@ export default test({ check(new Set([0, 2, 3])); inputs[5].checked = true; - await inputs[5].dispatchEvent(event); + inputs[5].dispatchEvent(event); + flushSync(); check(new Set([0, 2, 3, 5])); assert.deepEqual(component.pipelineOperations[1].operation.args[0].value, ['b']); diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-13/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-13/_config.js index 67dacfa99c..7fba86ef34 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-13/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-13/_config.js @@ -1,7 +1,8 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ - async test({ assert, target, window }) { + test({ assert, target, window }) { const [input1, input2] = /** @type {NodeListOf} */ ( target.querySelectorAll('input[type=text]') ); @@ -12,26 +13,28 @@ export default test({ const event = new window.Event('input'); input1.value = 'world'; - await input1.dispatchEvent(event); - await Promise.resolve(); + input1.dispatchEvent(event); + flushSync(); assert.equal(radio.checked, true); input2.value = 'foo'; - await input2.dispatchEvent(event); - await Promise.resolve(); + input2.dispatchEvent(event); + flushSync(); assert.equal(radio.checked, false); input1.value = 'foo'; - await input1.dispatchEvent(event); + input1.dispatchEvent(event); + flushSync(); assert.equal(radio.checked, true); input1.value = 'bar'; - await input1.dispatchEvent(event); + input1.dispatchEvent(event); + flushSync(); assert.equal(radio.checked, false); input2.value = 'bar'; - await input2.dispatchEvent(event); - await Promise.resolve(); + input2.dispatchEvent(event); + flushSync(); assert.equal(radio.checked, true); } }); diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-14/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-14/_config.js index 96d98b24c8..a0649c44de 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-14/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-14/_config.js @@ -1,39 +1,40 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ - async test({ assert, target, window }) { + test({ assert, target, window }) { const [input1, input2, input3, input4] = target.querySelectorAll('input'); const [p] = target.querySelectorAll('p'); const event = new window.Event('change'); input1.checked = true; - await input1.dispatchEvent(event); - await Promise.resolve(); + input1.dispatchEvent(event); + flushSync(); assert.htmlEqual(p.innerHTML, '["1a"]'); input2.checked = true; - await input1.dispatchEvent(event); - await Promise.resolve(); + input1.dispatchEvent(event); + flushSync(); assert.htmlEqual(p.innerHTML, '["1a","1b"]'); input3.checked = true; - await input1.dispatchEvent(event); - await Promise.resolve(); + input1.dispatchEvent(event); + flushSync(); assert.htmlEqual(p.innerHTML, '["1a","1b","2a"]'); input4.checked = true; - await input1.dispatchEvent(event); - await Promise.resolve(); + input1.dispatchEvent(event); + flushSync(); assert.htmlEqual(p.innerHTML, '["1a","1b","2a","2b"]'); input1.checked = false; - await input1.dispatchEvent(event); - await Promise.resolve(); + input1.dispatchEvent(event); + flushSync(); assert.htmlEqual(p.innerHTML, '["1b","2a","2b"]'); input3.checked = false; - await input1.dispatchEvent(event); - await Promise.resolve(); + input1.dispatchEvent(event); + flushSync(); assert.htmlEqual(p.innerHTML, '["1b","2b"]'); } }); diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-15/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-15/_config.js index 54ddd20af1..a7996e46ff 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-15/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-15/_config.js @@ -1,7 +1,8 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ - async test({ assert, target }) { + test({ assert, target }) { const checkboxes = /** @type {NodeListOf} */ ( target.querySelectorAll('input[type="checkbox"]') ); @@ -10,12 +11,14 @@ export default test({ assert.isTrue(checkboxes[1].checked); assert.isFalse(checkboxes[2].checked); - await checkboxes[1].click(); + checkboxes[1].click(); + flushSync(); const noChecked = target.querySelector('#output')?.innerHTML; assert.equal(noChecked, ''); - await checkboxes[1].click(); + checkboxes[1].click(); + flushSync(); const oneChecked = target.querySelector('#output')?.innerHTML; assert.equal(oneChecked, 'Mint choc chip'); diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-16/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-16/_config.js index 54ddd20af1..a7996e46ff 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-16/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-16/_config.js @@ -1,7 +1,8 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ - async test({ assert, target }) { + test({ assert, target }) { const checkboxes = /** @type {NodeListOf} */ ( target.querySelectorAll('input[type="checkbox"]') ); @@ -10,12 +11,14 @@ export default test({ assert.isTrue(checkboxes[1].checked); assert.isFalse(checkboxes[2].checked); - await checkboxes[1].click(); + checkboxes[1].click(); + flushSync(); const noChecked = target.querySelector('#output')?.innerHTML; assert.equal(noChecked, ''); - await checkboxes[1].click(); + checkboxes[1].click(); + flushSync(); const oneChecked = target.querySelector('#output')?.innerHTML; assert.equal(oneChecked, 'Mint choc chip'); diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-2/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-2/_config.js index 4ec313aed7..ad5b33fef4 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-2/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-2/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -27,7 +28,7 @@ export default test({

1, 2, 3

`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const inputs = target.querySelectorAll('input'); assert.equal(inputs[0].checked, true); assert.equal(inputs[1].checked, true); @@ -36,7 +37,8 @@ export default test({ const event = new window.Event('change'); inputs[0].checked = false; - await inputs[0].dispatchEvent(event); + inputs[0].dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-3/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-3/_config.js index 47c73ea56a..84b783df75 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-3/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-3/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; /** @type {Array<{ name: string }>} */ @@ -110,7 +111,7 @@ export default test({

Gamma

`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const inputs = target.querySelectorAll('input'); assert.equal(inputs[0].checked, false); @@ -126,7 +127,8 @@ export default test({ const event = new window.Event('change'); inputs[0].checked = true; - await inputs[0].dispatchEvent(event); + inputs[0].dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -179,7 +181,8 @@ export default test({ ` ); inputs[3].checked = true; - await inputs[3].dispatchEvent(event); + inputs[3].dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -233,7 +236,8 @@ export default test({ ); inputs[8].checked = false; - await inputs[8].dispatchEvent(event); + inputs[8].dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-4/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-4/_config.js index 27e13fbbf2..1a78e91214 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-4/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-4/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -37,7 +38,7 @@ export default test({

3

`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const inputs = target.querySelectorAll('input'); assert.equal(inputs[0].checked, true); assert.equal(inputs[1].checked, false); @@ -58,8 +59,8 @@ export default test({ const event = new window.Event('change'); inputs[2].checked = true; - await inputs[2].dispatchEvent(event); - await Promise.resolve(); + inputs[2].dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -84,8 +85,8 @@ export default test({ ); inputs[9].checked = true; - await inputs[9].dispatchEvent(event); - await Promise.resolve(); + inputs[9].dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -110,24 +111,24 @@ export default test({ ); inputs[4].checked = false; - await inputs[4].dispatchEvent(event); - await Promise.resolve(); + inputs[4].dispatchEvent(event); + flushSync(); inputs[5].checked = true; - await inputs[5].dispatchEvent(event); - await Promise.resolve(); + inputs[5].dispatchEvent(event); + flushSync(); inputs[6].checked = true; - await inputs[6].dispatchEvent(event); - await Promise.resolve(); + inputs[6].dispatchEvent(event); + flushSync(); inputs[7].checked = true; - await inputs[7].dispatchEvent(event); - await Promise.resolve(); + inputs[7].dispatchEvent(event); + flushSync(); inputs[11].checked = false; - await inputs[11].dispatchEvent(event); - await Promise.resolve(); + inputs[11].dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-5/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-5/_config.js index ccd1f8f26b..08af96a844 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-5/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-5/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -37,7 +38,7 @@ export default test({

1

`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const inputs = target.querySelectorAll('input'); assert.equal(inputs[0].checked, true); assert.equal(inputs[1].checked, false); @@ -58,8 +59,8 @@ export default test({ const event = new window.Event('change'); inputs[2].checked = true; - await inputs[2].dispatchEvent(event); - await Promise.resolve(); + inputs[2].dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -84,8 +85,8 @@ export default test({ ); inputs[8].checked = true; - await inputs[8].dispatchEvent(event); - await Promise.resolve(); + inputs[8].dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -150,8 +151,8 @@ export default test({ assert.equal(inputs[11].checked, false); inputs[5].checked = false; - await inputs[5].dispatchEvent(event); - await Promise.resolve(); + inputs[5].dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-6/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-6/_config.js index 4dff6b2ce2..b4cf9e7ed6 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-6/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-6/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -15,7 +16,7 @@ export default test({

`, - async test({ assert, target, window }) { + test({ assert, target, window }) { const inputs = target.querySelectorAll('input'); assert.equal(inputs[0].checked, false); assert.equal(inputs[1].checked, false); @@ -32,7 +33,8 @@ export default test({ const event = new window.Event('change'); inputs[2].checked = true; - await inputs[2].dispatchEvent(event); + inputs[2].dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -53,7 +55,8 @@ export default test({ ); inputs[4].checked = true; - await inputs[4].dispatchEvent(event); + inputs[4].dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -74,7 +77,8 @@ export default test({ ); inputs[5].checked = true; - await inputs[5].dispatchEvent(event); + inputs[5].dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-8/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-8/_config.js index 865201f062..384ca0a20c 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-8/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-8/_config.js @@ -1,8 +1,9 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; // https://github.com/sveltejs/svelte/issues/7884 export default test({ - async test({ assert, target, component, window }) { + test({ assert, target, component, window }) { let inputs = target.querySelectorAll('input'); assert.htmlEqual( @@ -27,11 +28,14 @@ export default test({ const event = new window.Event('change'); inputs[0].checked = true; - await inputs[0].dispatchEvent(event); + inputs[0].dispatchEvent(event); + flushSync(); inputs[2].checked = true; - await inputs[2].dispatchEvent(event); + inputs[2].dispatchEvent(event); + flushSync(); inputs[3].checked = true; - await inputs[3].dispatchEvent(event); + inputs[3].dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -52,8 +56,8 @@ export default test({ ` ); - await component.update(); - await Promise.resolve(); + component.update(); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -70,7 +74,8 @@ export default test({ inputs = target.querySelectorAll('input'); inputs[0].checked = true; - await inputs[0].dispatchEvent(event); + inputs[0].dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-9/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-9/_config.js index 1554c3a7b7..b566e31cb9 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-9/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-each-9/_config.js @@ -1,18 +1,19 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; // https://github.com/sveltejs/svelte/issues/7633 export default test({ - async test({ assert, target, component }) { + test({ assert, target, component }) { let inputs = target.querySelectorAll('input'); assert.equal(inputs[0].checked, true); assert.equal(inputs[1].checked, false); assert.equal(inputs[2].checked, false); - await component.moveDown(0); - await component.moveDown(1); - - await Promise.resolve(); + component.moveDown(0); + flushSync(); + component.moveDown(1); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -34,13 +35,15 @@ export default test({ assert.equal(inputs[1].checked, false); assert.equal(inputs[2].checked, true); - await (component.current = 'b'); + component.current = 'b'; + flushSync(); assert.equal(inputs[0].checked, true); assert.equal(inputs[1].checked, false); assert.equal(inputs[2].checked, false); - await component.moveDown(1); + component.moveDown(1); + flushSync(); // after shifting order, should still keep the correct radio checked inputs = target.querySelectorAll('input'); diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-if-gh-8372-1/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-if-gh-8372-1/_config.js index 778cb49df9..d91a7ebadb 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-if-gh-8372-1/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-if-gh-8372-1/_config.js @@ -1,7 +1,8 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ - async test({ assert, target, component, window }) { + test({ assert, target, component, window }) { const button = target.querySelector('button'); ok(button); const clickEvent = new window.Event('click', { bubbles: true }); @@ -27,24 +28,29 @@ export default test({ validate_inputs(true, true); input1.checked = false; - await input1.dispatchEvent(changeEvent); + input1.dispatchEvent(changeEvent); + flushSync(); assert.deepEqual(component.test, ['b']); input2.checked = false; - await input2.dispatchEvent(changeEvent); + input2.dispatchEvent(changeEvent); + flushSync(); assert.deepEqual(component.test, []); input1.checked = true; input2.checked = true; - await input1.dispatchEvent(changeEvent); - await input2.dispatchEvent(changeEvent); + input1.dispatchEvent(changeEvent); + input2.dispatchEvent(changeEvent); + flushSync(); assert.deepEqual(component.test, ['a', 'b']); - await button.dispatchEvent(clickEvent); + button.dispatchEvent(clickEvent); + flushSync(); assert.deepEqual(component.test, ['a', 'b']); // should it be ['a'] only? valid arguments for both outcomes input1.checked = false; - await input1.dispatchEvent(changeEvent); + input1.dispatchEvent(changeEvent); + flushSync(); assert.deepEqual(component.test, []); } }); diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-if-gh-8372-2/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-if-gh-8372-2/_config.js index 0676ab990f..8647d33f05 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-group-if-gh-8372-2/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-group-if-gh-8372-2/_config.js @@ -1,7 +1,8 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ - async test({ assert, target, component, window }) { + test({ assert, target, component, window }) { const button = target.querySelector('button'); ok(button); const clickEvent = new window.Event('click', { bubbles: true }); @@ -27,18 +28,22 @@ export default test({ validate_inputs(false, true); input1.checked = true; - await input1.dispatchEvent(changeEvent); + input1.dispatchEvent(changeEvent); + flushSync(); assert.deepEqual(component.test, 'a'); input2.checked = true; - await input2.dispatchEvent(changeEvent); + input2.dispatchEvent(changeEvent); + flushSync(); assert.deepEqual(component.test, 'b'); - await button.dispatchEvent(clickEvent); + button.dispatchEvent(clickEvent); + flushSync(); assert.deepEqual(component.test, 'b'); // should it be undefined? valid arguments for both outcomes input1.checked = true; - await input1.dispatchEvent(changeEvent); + input1.dispatchEvent(changeEvent); + flushSync(); assert.deepEqual(component.test, 'a'); } }); diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-number/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-number/_config.js index ac089e8797..4c0b68ecb9 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-number/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-number/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -15,7 +16,7 @@ export default test({

number 42

`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const input = target.querySelector('input'); ok(input); assert.equal(input.value, '42'); @@ -23,7 +24,8 @@ export default test({ const event = new window.Event('input'); input.value = '43'; - await input.dispatchEvent(event); + input.dispatchEvent(event); + flushSync(); assert.equal(component.count, 43); assert.htmlEqual( @@ -46,7 +48,8 @@ export default test({ // empty string should be treated as null input.value = ''; - await input.dispatchEvent(event); + input.dispatchEvent(event); + flushSync(); assert.equal(component.count, null); assert.htmlEqual( diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-radio-group/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-radio-group/_config.js index 6a34d7cd5b..b0d5064383 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-radio-group/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-radio-group/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; const values = [{ name: 'Alpha' }, { name: 'Beta' }, { name: 'Gamma' }]; @@ -37,7 +38,7 @@ export default test({

Beta

`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const inputs = target.querySelectorAll('input'); assert.equal(inputs[0].checked, false); assert.equal(inputs[1].checked, true); @@ -46,7 +47,8 @@ export default test({ const event = new window.Event('change'); inputs[0].checked = true; - await inputs[0].dispatchEvent(event); + inputs[0].dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-range-change-with-max/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-range-change-with-max/_config.js index c56f2d6d6f..1c5a41ced3 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-range-change-with-max/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-range-change-with-max/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -13,7 +14,7 @@ export default test({

10 of 10

`, - async test({ assert, target, window }) { + test({ assert, target, window }) { const input = target.querySelector('input'); ok(input); assert.equal(input.value, '10'); @@ -25,8 +26,8 @@ export default test({ const button = target.querySelector('button'); ok(button); - await button.dispatchEvent(new window.Event('click', { bubbles: true })); - await Promise.resolve(); + button.dispatchEvent(new window.Event('click', { bubbles: true })); + flushSync(); assert.equal(input.value, '20'); assert.htmlEqual( diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-range/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-range/_config.js index d7aa15433f..9c3eecf370 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-range/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-range/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -15,7 +16,7 @@ export default test({

number 42

`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const input = target.querySelector('input'); ok(input); assert.equal(input.value, '42'); @@ -23,7 +24,8 @@ export default test({ const event = new window.Event('input'); input.value = '43'; - await input.dispatchEvent(event); + input.dispatchEvent(event); + flushSync(); assert.equal(component.count, 43); assert.htmlEqual( diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-text-contextual-deconflicted/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-text-contextual-deconflicted/_config.js index 4917e8427e..45403898ae 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-text-contextual-deconflicted/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-text-contextual-deconflicted/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -15,7 +16,7 @@ export default test({

x

`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const inputs = [...target.querySelectorAll('input')]; const event = new window.Event('input'); @@ -23,9 +24,10 @@ export default test({ inputs[0].value = 'b'; inputs[1].value = 'y'; - await inputs[0].dispatchEvent(event); - await inputs[1].dispatchEvent(event); - await Promise.resolve(); + inputs[0].dispatchEvent(event); + flushSync(); + inputs[1].dispatchEvent(event); + flushSync(); assert.equal(component.foo, 'b'); assert.equal(component.items[0], 'y'); diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-text-contextual-reactive/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-text-contextual-reactive/_config.js index d8fd4c72f3..d20e4a1e88 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-text-contextual-reactive/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-text-contextual-reactive/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -45,7 +46,7 @@ export default test({

remaining:one / done:two / remaining:three

`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { /** * @param {number} i * @param {string} text @@ -88,8 +89,8 @@ export default test({ ` ); - await set_text(1, 'four'); - await Promise.resolve(); + set_text(1, 'four'); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -113,8 +114,8 @@ export default test({ { done: false, text: 'four' } ]); - await set_done(0, true); - await Promise.resolve(); + set_done(0, true); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-text-contextual/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-text-contextual/_config.js index 088691854e..9922ce1c78 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-text-contextual/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-text-contextual/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -29,7 +30,7 @@ export default test({ `, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const inputs = [...target.querySelectorAll('input')]; const items = component.items; const event = new window.Event('input'); @@ -37,8 +38,8 @@ export default test({ assert.equal(inputs[0].value, 'one'); inputs[1].value = 'four'; - await inputs[1].dispatchEvent(event); - await Promise.resolve(); + inputs[1].dispatchEvent(event); + flushSync(); assert.equal(items[1], 'four'); assert.htmlEqual( diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-text-deconflicted/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-text-deconflicted/_config.js index ea05ae8e1e..43e0eec907 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-text-deconflicted/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-text-deconflicted/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -15,7 +16,7 @@ export default test({ `, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const input = target.querySelector('input'); ok(input); assert.equal(input.value, 'world'); @@ -23,7 +24,8 @@ export default test({ const event = new window.Event('input'); input.value = 'everybody'; - await input.dispatchEvent(event); + input.dispatchEvent(event); + flushSync(); assert.equal(input.value, 'everybody'); assert.htmlEqual( diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-text-deep-computed-dynamic/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-text-deep-computed-dynamic/_config.js index eab5776eb0..77089cd01d 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-text-deep-computed-dynamic/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-text-deep-computed-dynamic/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -18,7 +19,7 @@ export default test({
{"foo":"a","bar":"b","baz":"c"}
`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const input = target.querySelector('input'); ok(input); const event = new window.Event('input'); @@ -27,7 +28,8 @@ export default test({ // edit bar input.value = 'e'; - await input.dispatchEvent(event); + input.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -42,7 +44,8 @@ export default test({ assert.equal(input.value, 'c'); input.value = 'f'; - await input.dispatchEvent(event); + input.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -57,7 +60,8 @@ export default test({ assert.equal(input.value, 'a'); input.value = 'd'; - await input.dispatchEvent(event); + input.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-text-deep-computed/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-text-deep-computed/_config.js index 039ddcba69..188b3360b5 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-text-deep-computed/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-text-deep-computed/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -15,7 +16,7 @@ export default test({

hello alice

`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const input = target.querySelector('input'); ok(input); @@ -24,7 +25,8 @@ export default test({ const event = new window.Event('input'); input.value = 'bob'; - await input.dispatchEvent(event); + input.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-text-deep-contextual-computed-dynamic/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-text-deep-contextual-computed-dynamic/_config.js index 548fd8f4e4..51e4e12f5f 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-text-deep-contextual-computed-dynamic/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-text-deep-contextual-computed-dynamic/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -18,7 +19,7 @@ export default test({
{"foo":"a","bar":"b","baz":"c"}
`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const input = target.querySelector('input'); ok(input); const event = new window.Event('input'); @@ -27,8 +28,8 @@ export default test({ // edit bar input.value = 'e'; - await input.dispatchEvent(event); - await Promise.resolve(); + input.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -43,8 +44,8 @@ export default test({ assert.equal(input.value, 'c'); input.value = 'f'; - await input.dispatchEvent(event); - await Promise.resolve(); + input.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -59,8 +60,8 @@ export default test({ assert.equal(input.value, 'a'); input.value = 'd'; - await input.dispatchEvent(event); - await Promise.resolve(); + input.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-text-deep-contextual/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-text-deep-contextual/_config.js index dc486ec9ba..fad359625a 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-text-deep-contextual/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-text-deep-contextual/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -19,16 +20,16 @@ export default test({

three

`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const inputs = [...target.querySelectorAll('input')]; assert.equal(inputs[0].value, 'one'); - const event = new window.Event('input'); + const event = new window.Event('input', { bubbles: true }); inputs[1].value = 'four'; - await inputs[1].dispatchEvent(event); - await Promise.resolve(); + inputs[1].dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-text-deep/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-text-deep/_config.js index 8a8a2aba6b..8a4dfc0f78 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-text-deep/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-text-deep/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -15,7 +16,7 @@ export default test({

hello alice

`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const input = target.querySelector('input'); ok(input); @@ -24,7 +25,8 @@ export default test({ const event = new window.Event('input'); input.value = 'bob'; - await input.dispatchEvent(event); + input.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-input-text/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-input-text/_config.js index 8720cfb409..f59b6d4f1c 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-input-text/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-input-text/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -15,7 +16,7 @@ export default test({

hello world

`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const input = target.querySelector('input'); ok(input); assert.equal(input.value, 'world'); @@ -23,7 +24,8 @@ export default test({ const event = new window.Event('input'); input.value = 'everybody'; - await input.dispatchEvent(event); + input.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-select-implicit-option-value/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-select-implicit-option-value/_config.js index 2babb062f2..1fea6c08f4 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-select-implicit-option-value/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-select-implicit-option-value/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -15,7 +16,7 @@ export default test({

foo: 2

`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const select = target.querySelector('select'); ok(select); const options = [...target.querySelectorAll('option')]; @@ -26,7 +27,8 @@ export default test({ const change = new window.Event('change'); options[2].selected = true; - await select.dispatchEvent(change); + select.dispatchEvent(change); + flushSync(); assert.equal(component.foo, 3); assert.htmlEqual( diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-select-multiple/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-select-multiple/_config.js index c2d18ae661..42c0e018e5 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-select-multiple/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-select-multiple/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -15,7 +16,7 @@ export default test({

selected: two, three

`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const select = target.querySelector('select'); ok(select); const options = [...target.querySelectorAll('option')]; @@ -23,7 +24,8 @@ export default test({ const change = new window.Event('change'); options[1].selected = false; - await select.dispatchEvent(change); + select.dispatchEvent(change); + flushSync(); assert.deepEqual(component.selected, ['three']); assert.htmlEqual( @@ -40,7 +42,8 @@ export default test({ ); options[0].selected = true; - await select.dispatchEvent(change); + select.dispatchEvent(change); + flushSync(); assert.deepEqual(component.selected, ['one', 'three']); assert.htmlEqual( diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-select-optgroup/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-select-optgroup/_config.js index 71c8152398..d9544b7c4d 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-select-optgroup/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-select-optgroup/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -23,7 +24,7 @@ export default test({ `, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const select = target.querySelector('select'); ok(select); @@ -35,7 +36,8 @@ export default test({ const change = new window.Event('change'); options[1].selected = true; - await select.dispatchEvent(change); + select.dispatchEvent(change); + flushSync(); assert.equal(component.name, 'World'); assert.htmlEqual( diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-select/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-select/_config.js index 8d467d45b4..5577ec2393 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-select/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-select/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -17,7 +18,7 @@ export default test({ return { selected: 'one' }; }, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const select = target.querySelector('select'); ok(select); @@ -29,7 +30,8 @@ export default test({ const change = new window.Event('change'); options[1].selected = true; - await select.dispatchEvent(change); + select.dispatchEvent(change); + flushSync(); assert.equal(component.selected, 'two'); assert.htmlEqual( diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-store-deep/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-store-deep/_config.js index 1de88c4a6c..4854d6dec6 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-store-deep/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-store-deep/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -11,7 +12,7 @@ export default test({

hello world

`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const input = target.querySelector('input'); ok(input); @@ -30,7 +31,8 @@ export default test({ }); input.value = 'everybody'; - await input.dispatchEvent(event); + input.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -40,7 +42,8 @@ export default test({ ` ); - await component.user.set({ name: 'goodbye' }); + component.user.set({ name: 'goodbye' }); + flushSync(); assert.equal(input.value, 'goodbye'); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-store-each/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-store-each/_config.js index 80f7b58975..d2df354ea6 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-store-each/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-store-each/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -9,12 +10,13 @@ export default test({ 0 `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const input = target.querySelector('input'); ok(input); input.checked = true; - await input.dispatchEvent(new window.Event('change', { bubbles: true })); + input.dispatchEvent(new window.Event('change', { bubbles: true })); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-store/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-store/_config.js index b8c4ab1f9a..a8ab343002 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-store/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-store/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -15,7 +16,7 @@ export default test({
world
`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const input = target.querySelector('input'); ok(input); assert.equal(input.value, 'world'); @@ -31,7 +32,8 @@ export default test({ }); input.value = 'everybody'; - await input.dispatchEvent(event); + input.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -43,7 +45,8 @@ export default test({ ` ); - await component.name.set('goodbye'); + component.name.set('goodbye'); + flushSync(); assert.equal(input.value, 'goodbye'); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-textarea/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-textarea/_config.js index 96536883e5..7b8525279f 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-textarea/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-textarea/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -15,7 +16,7 @@ export default test({

some text

`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const textarea = target.querySelector('textarea'); ok(textarea); assert.equal(textarea.value, 'some text'); @@ -23,7 +24,8 @@ export default test({ const event = new window.Event('input'); textarea.value = 'hello'; - await textarea.dispatchEvent(event); + textarea.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-this-and-value/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-this-and-value/_config.js index 18b2bc9089..6bffe1b469 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-this-and-value/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-this-and-value/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -11,13 +12,14 @@ export default test({

value: initial

`, - async test({ assert, target, window }) { + test({ assert, target, window }) { const input = target.querySelector('input'); ok(input); const event = new window.Event('input'); input.value = 'changed'; - await input.dispatchEvent(event); + input.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/binding-using-props/_config.js b/packages/svelte/tests/runtime-legacy/samples/binding-using-props/_config.js index 672932653c..1134b20d0c 100644 --- a/packages/svelte/tests/runtime-legacy/samples/binding-using-props/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/binding-using-props/_config.js @@ -1,13 +1,15 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ - async test({ assert, target, window }) { + test({ assert, target, window }) { const input = target.querySelector('input'); ok(input); const event = new window.Event('input'); input.value = 'changed'; - await input.dispatchEvent(event); + input.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/bitmask-overflow-if/_config.js b/packages/svelte/tests/runtime-legacy/samples/bitmask-overflow-if/_config.js index c3fd125ea9..d6e04b8fa4 100644 --- a/packages/svelte/tests/runtime-legacy/samples/bitmask-overflow-if/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/bitmask-overflow-if/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -10,7 +11,8 @@ export default test({ async test({ assert, target, window }) { const button = target.querySelector('button'); - await button?.dispatchEvent(new window.MouseEvent('click', { bubbles: true })); + button?.dispatchEvent(new window.MouseEvent('click', { bubbles: true })); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/bitmask-overflow-slot-3/_config.js b/packages/svelte/tests/runtime-legacy/samples/bitmask-overflow-slot-3/_config.js index 9303a84511..c2f0e69ef5 100644 --- a/packages/svelte/tests/runtime-legacy/samples/bitmask-overflow-slot-3/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/bitmask-overflow-slot-3/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -7,10 +8,11 @@ export default test({ `, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { // change from inside const button = target.querySelector('button'); - await button?.dispatchEvent(new window.Event('click', { bubbles: true })); + button?.dispatchEvent(new window.Event('click', { bubbles: true })); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/bitmask-overflow-slot-4/_config.js b/packages/svelte/tests/runtime-legacy/samples/bitmask-overflow-slot-4/_config.js index 8fc86cd826..51e9d53ef0 100644 --- a/packages/svelte/tests/runtime-legacy/samples/bitmask-overflow-slot-4/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/bitmask-overflow-slot-4/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -8,10 +9,11 @@ export default test({ `, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { // change from inside const button = target.querySelector('button'); - await button?.dispatchEvent(new window.Event('click', { bubbles: true })); + button?.dispatchEvent(new window.Event('click', { bubbles: true })); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/bitmask-overflow-slot-5/_config.js b/packages/svelte/tests/runtime-legacy/samples/bitmask-overflow-slot-5/_config.js index ebec5b2ae9..768af95193 100644 --- a/packages/svelte/tests/runtime-legacy/samples/bitmask-overflow-slot-5/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/bitmask-overflow-slot-5/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -10,10 +11,11 @@ export default test({ `, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { // change from inside const button = target.querySelector('button'); - await button?.dispatchEvent(new window.Event('click', { bubbles: true })); + button?.dispatchEvent(new window.Event('click', { bubbles: true })); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/bitmask-overflow-slot-6/_config.js b/packages/svelte/tests/runtime-legacy/samples/bitmask-overflow-slot-6/_config.js index 33e55863ae..a905589f52 100644 --- a/packages/svelte/tests/runtime-legacy/samples/bitmask-overflow-slot-6/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/bitmask-overflow-slot-6/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; // overflow bitmask + slot missing `let:` @@ -9,10 +10,11 @@ export default test({ `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const button = target.querySelectorAll('button')[1]; const div = target.querySelector('div'); - await div?.dispatchEvent(new window.MouseEvent('click', { bubbles: true })); + div?.dispatchEvent(new window.MouseEvent('click', { bubbles: true })); + flushSync(); assert.htmlEqual( target.innerHTML, ` @@ -24,7 +26,8 @@ export default test({ ` ); - await button.dispatchEvent(new window.MouseEvent('click', { bubbles: true })); + button.dispatchEvent(new window.MouseEvent('click', { bubbles: true })); + flushSync(); assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-legacy/samples/component-binding-accessors/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-binding-accessors/_config.js index 827c19ba3a..1a6c9039a7 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-binding-accessors/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-binding-accessors/_config.js @@ -1,20 +1,23 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ - async test({ assert, target, window }) { + test({ assert, target, window }) { const [input1, input2] = target.querySelectorAll('input'); assert.equal(input1.value, 'something'); assert.equal(input2.value, 'something'); input1.value = 'abc'; - await input1.dispatchEvent(new window.Event('input')); + input1.dispatchEvent(new window.Event('input')); + flushSync(); assert.equal(input1.value, 'abc'); assert.equal(input2.value, 'abc'); - await target + target .querySelector('button') ?.dispatchEvent(new window.MouseEvent('click', { bubbles: true })); + flushSync(); assert.equal(input1.value, 'Reset'); assert.equal(input2.value, 'Reset'); diff --git a/packages/svelte/tests/runtime-legacy/samples/component-binding-blowback-d/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-binding-blowback-d/_config.js index 54ce1a678f..aafce86336 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-binding-blowback-d/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-binding-blowback-d/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -9,11 +10,11 @@ export default test({

`, - async test({ assert, target, window }) { + test({ assert, target, window }) { const button = target.querySelectorAll('button')[1]; - await button.dispatchEvent(new window.Event('click', { bubbles: true })); - await Promise.resolve(); + button.dispatchEvent(new window.Event('click', { bubbles: true })); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/component-binding-blowback-e/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-binding-blowback-e/_config.js index 3867ef6a5e..1d5ead8b72 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-binding-blowback-e/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-binding-blowback-e/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -9,11 +10,11 @@ export default test({

`, - async test({ assert, target, window }) { + test({ assert, target, window }) { const button = target.querySelectorAll('button')[1]; - await button.dispatchEvent(new window.Event('click', { bubbles: true })); - await Promise.resolve(); + button.dispatchEvent(new window.Event('click', { bubbles: true })); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/component-binding-blowback-f/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-binding-blowback-f/_config.js index fd82716f4a..82a6dcefea 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-binding-blowback-f/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-binding-blowback-f/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -17,15 +18,11 @@ export default test({

`, - async test({ assert, target, window }) { + test({ assert, target, window }) { const button = target.querySelectorAll('button')[1]; - await button.dispatchEvent(new window.Event('click', { bubbles: true })); - // Multiple ticks necessary because each update is async - await Promise.resolve(); - await Promise.resolve(); - await Promise.resolve(); - await Promise.resolve(); + button.dispatchEvent(new window.Event('click', { bubbles: true })); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/component-binding-deep/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-binding-deep/_config.js index 0479b7c529..a8881cb1ed 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-binding-deep/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-binding-deep/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -11,14 +12,14 @@ export default test({

foo

`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const event = new window.MouseEvent('input'); const input = target.querySelector('input'); ok(input); input.value = 'blah'; - await input.dispatchEvent(event); - await Promise.resolve(); + input.dispatchEvent(event); + flushSync(); assert.deepEqual(component.deep, { name: 'blah' }); assert.htmlEqual( diff --git a/packages/svelte/tests/runtime-legacy/samples/component-binding-deep2/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-binding-deep2/_config.js index 0479b7c529..a8881cb1ed 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-binding-deep2/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-binding-deep2/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -11,14 +12,14 @@ export default test({

foo

`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const event = new window.MouseEvent('input'); const input = target.querySelector('input'); ok(input); input.value = 'blah'; - await input.dispatchEvent(event); - await Promise.resolve(); + input.dispatchEvent(event); + flushSync(); assert.deepEqual(component.deep, { name: 'blah' }); assert.htmlEqual( diff --git a/packages/svelte/tests/runtime-legacy/samples/component-binding-each-nested/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-binding-each-nested/_config.js index 6b8c50a023..1826f96913 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-binding-each-nested/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-binding-each-nested/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -13,13 +14,13 @@ export default test({

foo, bar, baz

`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const event = new window.MouseEvent('input'); const inputs = target.querySelectorAll('input'); inputs[0].value = 'blah'; - await inputs[0].dispatchEvent(event); - await Promise.resolve(); + inputs[0].dispatchEvent(event); + flushSync(); assert.deepEqual(component.a, [{ name: 'blah' }, { name: 'bar' }, { name: 'baz' }]); assert.htmlEqual( diff --git a/packages/svelte/tests/runtime-legacy/samples/component-binding-each/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-binding-each/_config.js index 8c8fad3748..5242488d1f 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-binding-each/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-binding-each/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -13,13 +14,13 @@ export default test({

foo, bar, baz

`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const event = new window.MouseEvent('input'); const inputs = target.querySelectorAll('input'); inputs[0].value = 'blah'; - await inputs[0].dispatchEvent(event); - await Promise.resolve(); + inputs[0].dispatchEvent(event); + flushSync(); assert.deepEqual(component.a, ['blah', 'bar', 'baz']); assert.htmlEqual( diff --git a/packages/svelte/tests/runtime-legacy/samples/component-binding-infinite-loop/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-binding-infinite-loop/_config.js index 57b3388ab4..e7759ccc87 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-binding-infinite-loop/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-binding-infinite-loop/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -28,12 +29,12 @@ export default test({

1

`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const click = new window.MouseEvent('click', { bubbles: true }); const spans = target.querySelectorAll('span'); - await spans[0].dispatchEvent(click); - await Promise.resolve(); + spans[0].dispatchEvent(click); + flushSync(); assert.equal(component.currentIdentifier, 1); assert.htmlEqual( @@ -65,8 +66,8 @@ export default test({ ` ); - await spans[0].dispatchEvent(click); - await Promise.resolve(); + spans[0].dispatchEvent(click); + flushSync(); assert.equal(component.currentIdentifier, null); assert.htmlEqual( diff --git a/packages/svelte/tests/runtime-legacy/samples/component-binding-nested/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-binding-nested/_config.js index e81c2580f6..630ddef5dc 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-binding-nested/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-binding-nested/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -15,11 +16,12 @@ export default test({

baz x: initial

`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const click = new window.MouseEvent('click', { bubbles: true }); const buttons = [...target.querySelectorAll('button')]; - await buttons[0].dispatchEvent(click); + buttons[0].dispatchEvent(click); + flushSync(); assert.equal(component.x, 'p'); assert.htmlEqual( @@ -35,7 +37,8 @@ export default test({ ` ); - await buttons[1].dispatchEvent(click); + buttons[1].dispatchEvent(click); + flushSync(); assert.equal(component.x, 'q'); assert.htmlEqual( @@ -51,7 +54,8 @@ export default test({ ` ); - await buttons[2].dispatchEvent(click); + buttons[2].dispatchEvent(click); + flushSync(); assert.equal(component.x, 'r'); assert.htmlEqual( diff --git a/packages/svelte/tests/runtime-legacy/samples/component-binding-non-leaky/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-binding-non-leaky/_config.js index da9c55eb1a..4a079d6fc6 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-binding-non-leaky/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-binding-non-leaky/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -11,7 +12,8 @@ export default test({ const button = target.querySelector('button'); ok(button); - await button.dispatchEvent(click); + button.dispatchEvent(click); + flushSync(); assert.equal(component.x, undefined); assert.htmlEqual( @@ -22,7 +24,8 @@ export default test({ ` ); - await button.dispatchEvent(click); + button.dispatchEvent(click); + flushSync(); assert.equal(component.x, undefined); assert.htmlEqual( diff --git a/packages/svelte/tests/runtime-legacy/samples/component-binding-parent-supercedes-child/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-binding-parent-supercedes-child/_config.js index b63198d2bc..fa20032eb0 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-binding-parent-supercedes-child/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-binding-parent-supercedes-child/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -6,12 +7,13 @@ export default test({

count: 10

`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const click = new window.MouseEvent('click', { bubbles: true }); const button = target.querySelector('button'); ok(button); - await button.dispatchEvent(click); + button.dispatchEvent(click); + flushSync(); assert.equal(component.x, 11); assert.htmlEqual( @@ -22,7 +24,8 @@ export default test({ ` ); - await button.dispatchEvent(click); + button.dispatchEvent(click); + flushSync(); assert.equal(component.x, 12); assert.htmlEqual( diff --git a/packages/svelte/tests/runtime-legacy/samples/component-binding-reactive-statement/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-binding-reactive-statement/_config.js index fa9fe3f3f4..dbd8a5d1a5 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-binding-reactive-statement/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-binding-reactive-statement/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -6,12 +7,13 @@ export default test({ `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const event = new window.MouseEvent('click', { bubbles: true }); const buttons = target.querySelectorAll('button'); - await buttons[0].dispatchEvent(event); + buttons[0].dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, ` @@ -20,7 +22,8 @@ export default test({ ` ); - await buttons[1].dispatchEvent(event); + buttons[1].dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, ` @@ -30,7 +33,8 @@ export default test({ ); // reactive update, reset to 2 - await buttons[0].dispatchEvent(event); + buttons[0].dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, ` @@ -40,7 +44,8 @@ export default test({ ); // bound to main, reset to 2 - await buttons[1].dispatchEvent(event); + buttons[1].dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-legacy/samples/component-binding-self-destroying/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-binding-self-destroying/_config.js index afea1a59f8..fcd468dc9d 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-binding-self-destroying/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-binding-self-destroying/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -9,10 +10,11 @@ export default test({ `, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const click = new window.MouseEvent('click', { bubbles: true }); - await target.querySelector('button')?.dispatchEvent(click); + target.querySelector('button')?.dispatchEvent(click); + flushSync(); assert.equal(component.show, false); assert.htmlEqual( @@ -22,7 +24,8 @@ export default test({ ` ); - await target.querySelector('button')?.dispatchEvent(click); + target.querySelector('button')?.dispatchEvent(click); + flushSync(); assert.equal(component.show, true); assert.htmlEqual( diff --git a/packages/svelte/tests/runtime-legacy/samples/component-binding-store/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-binding-store/_config.js index c41af3ea56..dfa86868ff 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-binding-store/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-binding-store/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -12,7 +13,7 @@ export default test({
`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { let count = 0; component.callback = () => { count++; @@ -21,8 +22,8 @@ export default test({ const [input1, input2] = target.querySelectorAll('input'); input1.value = '1'; - await input1.dispatchEvent(new window.Event('input')); - await Promise.resolve(); + input1.dispatchEvent(new window.Event('input')); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -37,8 +38,8 @@ export default test({ assert.equal(count, 1); input2.value = '123'; - await input2.dispatchEvent(new window.Event('input')); - await Promise.resolve(); + input2.dispatchEvent(new window.Event('input')); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -53,8 +54,8 @@ export default test({ assert.equal(count, 2); input1.value = '456'; - await input1.dispatchEvent(new window.Event('input')); - await Promise.resolve(); + input1.dispatchEvent(new window.Event('input')); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/component-binding/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-binding/_config.js index 07a3441f4c..40eacb5a5d 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-binding/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-binding/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -6,12 +7,13 @@ export default test({

count: 0

`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const click = new window.MouseEvent('click', { bubbles: true }); const button = target.querySelector('button'); ok(button); - await button.dispatchEvent(click); + button.dispatchEvent(click); + flushSync(); assert.equal(component.x, 1); assert.htmlEqual( @@ -22,7 +24,8 @@ export default test({ ` ); - await button.dispatchEvent(click); + button.dispatchEvent(click); + flushSync(); assert.equal(component.x, 2); assert.htmlEqual( diff --git a/packages/svelte/tests/runtime-legacy/samples/component-prop-object/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-prop-object/_config.js index d37a72a2ee..96815e80f8 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-prop-object/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-prop-object/_config.js @@ -1,10 +1,12 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: `child: 0 parent: 0 `, - async test({ assert, target }) { - await target.querySelector('button')?.click(); + test({ assert, target }) { + target.querySelector('button')?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, `child: 1 parent: 1 `); } }); diff --git a/packages/svelte/tests/runtime-legacy/samples/component-slot-attribute-order/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-slot-attribute-order/_config.js index 3e85f77b80..a79720ea3e 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-slot-attribute-order/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-slot-attribute-order/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -6,10 +7,11 @@ export default test({ `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const [btn, btn1, btn2] = target.querySelectorAll('button'); - await btn.dispatchEvent(new window.MouseEvent('click', { bubbles: true })); + btn.dispatchEvent(new window.MouseEvent('click', { bubbles: true })); + flushSync(); assert.equal(btn1.disabled, true); assert.equal(btn2.disabled, true); diff --git a/packages/svelte/tests/runtime-legacy/samples/component-slot-fallback-2/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-slot-fallback-2/_config.js index ca5dda00f9..cdc011af82 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-slot-fallback-2/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-slot-fallback-2/_config.js @@ -1,19 +1,22 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ' ', ssrHtml: ' ', - async test({ assert, target, component, window }) { + test({ assert, target, component, window }) { const [input1, input2, inputFallback] = target.querySelectorAll('input'); // TODO this works differently now, deduplicates to one subscription - ok? // assert.equal(component.getSubscriberCount(), 3); input1.value = 'a'; - await input1.dispatchEvent(new window.Event('input')); + input1.dispatchEvent(new window.Event('input')); + flushSync(); input1.value = 'ab'; - await input1.dispatchEvent(new window.Event('input')); + input1.dispatchEvent(new window.Event('input')); + flushSync(); assert.equal(input1.value, 'ab'); assert.equal(input2.value, 'ab'); assert.equal(inputFallback.value, 'ab'); diff --git a/packages/svelte/tests/runtime-legacy/samples/component-slot-fallback-5/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-slot-fallback-5/_config.js index dc80693d7f..cd1f446d0c 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-slot-fallback-5/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-slot-fallback-5/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -6,13 +7,14 @@ export default test({
Icon B
`, - async test({ assert, target, window }) { + test({ assert, target, window }) { const btn = target.querySelector('button'); ok(btn); const clickEvent = new window.MouseEvent('click', { bubbles: true }); - await btn.dispatchEvent(clickEvent); + btn.dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -22,7 +24,8 @@ export default test({ ` ); - await btn.dispatchEvent(clickEvent); + btn.dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/component-slot-fallback-6/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-slot-fallback-6/_config.js index aa1792ebb3..fac8e94fe9 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-slot-fallback-6/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-slot-fallback-6/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; // $$props reactivity in slot fallback @@ -11,12 +12,13 @@ export default test({ {"value":""} `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const input = target.querySelector('input'); ok(input); input.value = 'abc'; - await input.dispatchEvent(new window.Event('input')); + input.dispatchEvent(new window.Event('input')); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/component-slot-let-b/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-slot-let-b/_config.js index 993dabf2dc..bb699d4a9f 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-slot-let-b/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-slot-let-b/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -6,11 +7,12 @@ export default test({ 0 `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const button = target.querySelector('button'); const click = new window.MouseEvent('click', { bubbles: true }); - await button?.dispatchEvent(click); + button?.dispatchEvent(click); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/component-slot-let-c/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-slot-let-c/_config.js index 9a10e0577c..51f2b473f4 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-slot-let-c/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-slot-let-c/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -6,11 +7,12 @@ export default test({ 0 () `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const button = target.querySelector('button'); const click = new window.MouseEvent('click', { bubbles: true }); - await button?.dispatchEvent(click); + button?.dispatchEvent(click); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/component-slot-let-d/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-slot-let-d/_config.js index 49de834cb1..47e917d43a 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-slot-let-d/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-slot-let-d/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -7,11 +8,12 @@ export default test({ `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const div = target.querySelector('div'); const click = new window.MouseEvent('click', { bubbles: true }); - await div?.dispatchEvent(click); + div?.dispatchEvent(click); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/component-slot-let-destructured-2/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-slot-let-destructured-2/_config.js index 31d8a72d2b..e89458160f 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-slot-let-destructured-2/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-slot-let-destructured-2/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -15,11 +16,12 @@ export default test({ `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const [button1, button2, button3] = target.querySelectorAll('button'); const event = new window.MouseEvent('click', { bubbles: true }); - await button1.dispatchEvent(event); + button1.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, ` @@ -38,7 +40,8 @@ export default test({ ` ); - await button2.dispatchEvent(event); + button2.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, ` @@ -57,7 +60,8 @@ export default test({ ` ); - await button3.dispatchEvent(event); + button3.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-legacy/samples/component-slot-let-scope-3/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-slot-let-scope-3/_config.js index 5ebd0ac13a..44a820edc8 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-slot-let-scope-3/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-slot-let-scope-3/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -10,11 +11,12 @@ export default test({ `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const button = target.querySelector('button'); ok(button); - await button.dispatchEvent(new window.MouseEvent('click', { bubbles: true })); + button.dispatchEvent(new window.MouseEvent('click', { bubbles: true })); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/component-slot-nested-if/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-slot-nested-if/_config.js index 35b109f811..2ea0504dda 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-slot-nested-if/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-slot-nested-if/_config.js @@ -1,15 +1,17 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ html: ` `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const input = target.querySelector('input'); ok(input); input.value = 'a'; - await input.dispatchEvent(new window.Event('input')); + input.dispatchEvent(new window.Event('input')); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -20,7 +22,8 @@ export default test({ ); input.value = 'abc'; - await input.dispatchEvent(new window.Event('input')); + input.dispatchEvent(new window.Event('input')); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/component-svelte-fragment-let-b/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-svelte-fragment-let-b/_config.js index 993dabf2dc..bb699d4a9f 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-svelte-fragment-let-b/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-svelte-fragment-let-b/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -6,11 +7,12 @@ export default test({ 0 `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const button = target.querySelector('button'); const click = new window.MouseEvent('click', { bubbles: true }); - await button?.dispatchEvent(click); + button?.dispatchEvent(click); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/component-svelte-fragment-let-c/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-svelte-fragment-let-c/_config.js index 9a10e0577c..51f2b473f4 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-svelte-fragment-let-c/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-svelte-fragment-let-c/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -6,11 +7,12 @@ export default test({ 0 () `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const button = target.querySelector('button'); const click = new window.MouseEvent('click', { bubbles: true }); - await button?.dispatchEvent(click); + button?.dispatchEvent(click); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/component-svelte-fragment-let-d/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-svelte-fragment-let-d/_config.js index 49de834cb1..47e917d43a 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-svelte-fragment-let-d/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-svelte-fragment-let-d/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -7,11 +8,12 @@ export default test({ `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const div = target.querySelector('div'); const click = new window.MouseEvent('click', { bubbles: true }); - await div?.dispatchEvent(click); + div?.dispatchEvent(click); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/component-svelte-fragment-let-destructured-2/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-svelte-fragment-let-destructured-2/_config.js index 31d8a72d2b..e89458160f 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-svelte-fragment-let-destructured-2/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-svelte-fragment-let-destructured-2/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -15,11 +16,12 @@ export default test({ `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const [button1, button2, button3] = target.querySelectorAll('button'); const event = new window.MouseEvent('click', { bubbles: true }); - await button1.dispatchEvent(event); + button1.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, ` @@ -38,7 +40,8 @@ export default test({ ` ); - await button2.dispatchEvent(event); + button2.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, ` @@ -57,7 +60,8 @@ export default test({ ` ); - await button3.dispatchEvent(event); + button3.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-legacy/samples/component-template-inline-mutation/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-template-inline-mutation/_config.js index aa403357b4..1920fe6575 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-template-inline-mutation/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-template-inline-mutation/_config.js @@ -1,15 +1,17 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ - async test({ assert, target }) { + test({ assert, target }) { const btns = target.querySelectorAll('button'); const event = new window.MouseEvent('click', { bubbles: true }); - await btns[0].dispatchEvent(event); - await btns[0].dispatchEvent(event); - await btns[1].dispatchEvent(event); - await btns[1].dispatchEvent(event); - await btns[1].dispatchEvent(event); + btns[0].dispatchEvent(event); + btns[0].dispatchEvent(event); + btns[1].dispatchEvent(event); + btns[1].dispatchEvent(event); + btns[1].dispatchEvent(event); + flushSync(); assert.equal(btns[1].innerHTML, '3'); } diff --git a/packages/svelte/tests/runtime-legacy/samples/component-yield-placement/_config.js b/packages/svelte/tests/runtime-legacy/samples/component-yield-placement/_config.js index d9505d48c8..be64151449 100644 --- a/packages/svelte/tests/runtime-legacy/samples/component-yield-placement/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/component-yield-placement/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -14,11 +15,12 @@ export default test({ `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const button = target.querySelector('button'); const click = new window.MouseEvent('click', { bubbles: true }); - await button?.dispatchEvent(click); + button?.dispatchEvent(click); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/const-tag-invalidate/_config.js b/packages/svelte/tests/runtime-legacy/samples/const-tag-invalidate/_config.js index 331d1f622b..9c7a4a320d 100644 --- a/packages/svelte/tests/runtime-legacy/samples/const-tag-invalidate/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/const-tag-invalidate/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -6,11 +7,11 @@ export default test({
[N] B
[N] C
`, - async test({ target, assert, window }) { + test({ target, assert, window }) { const [btn1, btn2, btn3] = target.querySelectorAll('button'); - await btn1.dispatchEvent(new window.MouseEvent('click', { bubbles: true })); - await btn2.dispatchEvent(new window.MouseEvent('click', { bubbles: true })); - await Promise.resolve(); + btn1.dispatchEvent(new window.MouseEvent('click', { bubbles: true })); + btn2.dispatchEvent(new window.MouseEvent('click', { bubbles: true })); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -21,8 +22,8 @@ export default test({ ` ); - await btn2.dispatchEvent(new window.MouseEvent('click', { bubbles: true })); - await Promise.resolve(); + btn2.dispatchEvent(new window.MouseEvent('click', { bubbles: true })); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -33,8 +34,8 @@ export default test({ ` ); - await btn3.dispatchEvent(new window.MouseEvent('click', { bubbles: true })); - await Promise.resolve(); + btn3.dispatchEvent(new window.MouseEvent('click', { bubbles: true })); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/context-api/_config.js b/packages/svelte/tests/runtime-legacy/samples/context-api/_config.js index 7f7290ba91..f02c0a4432 100644 --- a/packages/svelte/tests/runtime-legacy/samples/context-api/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/context-api/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -15,11 +16,12 @@ export default test({ `, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const click = new window.MouseEvent('click', { bubbles: true }); let buttons = target.querySelectorAll('button'); - await buttons[1].dispatchEvent(click); + buttons[1].dispatchEvent(click); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -54,7 +56,8 @@ export default test({ buttons = target.querySelectorAll('button'); - await buttons[1].dispatchEvent(click); + buttons[1].dispatchEvent(click); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/custom-method/_config.js b/packages/svelte/tests/runtime-legacy/samples/custom-method/_config.js index 4338b2a59f..3d85874654 100644 --- a/packages/svelte/tests/runtime-legacy/samples/custom-method/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/custom-method/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -6,13 +7,14 @@ export default test({

0

`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const button = target.querySelector('button'); ok(button); const event = new window.MouseEvent('click', { bubbles: true }); - await button.dispatchEvent(event); + button.dispatchEvent(event); + flushSync(); assert.equal(component.counter, 1); assert.htmlEqual( target.innerHTML, @@ -22,7 +24,8 @@ export default test({ ` ); - await button.dispatchEvent(event); + button.dispatchEvent(event); + flushSync(); assert.equal(component.counter, 2); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/destructuring-one-value-reactive/_config.js b/packages/svelte/tests/runtime-legacy/samples/destructuring-one-value-reactive/_config.js index 299fa14e2b..eb885e4d48 100644 --- a/packages/svelte/tests/runtime-legacy/samples/destructuring-one-value-reactive/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/destructuring-one-value-reactive/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -5,9 +6,10 @@ export default test({ `, - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/dynamic-component-evals-props-once/_config.js b/packages/svelte/tests/runtime-legacy/samples/dynamic-component-evals-props-once/_config.js index eb02214ae8..ff3f22ac61 100644 --- a/packages/svelte/tests/runtime-legacy/samples/dynamic-component-evals-props-once/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/dynamic-component-evals-props-once/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -9,7 +10,8 @@ export default test({ async test({ assert, component, window, target }) { const button = target.querySelector('button'); // @ts-ignore - await button.dispatchEvent(new window.Event('click')); + button.dispatchEvent(new window.Event('click')); + flushSync(); assert.htmlEqual( target.innerHTML, ` @@ -19,7 +21,8 @@ export default test({ ); assert.equal(component.n, 2); // @ts-ignore - await button.dispatchEvent(new window.Event('click')); + button.dispatchEvent(new window.Event('click')); + flushSync(); assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-legacy/samples/dynamic-component-spread-props/_config.js b/packages/svelte/tests/runtime-legacy/samples/dynamic-component-spread-props/_config.js index 8e224b3eb3..643066abb5 100644 --- a/packages/svelte/tests/runtime-legacy/samples/dynamic-component-spread-props/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/dynamic-component-spread-props/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -8,10 +9,11 @@ export default test({ `, - async test({ assert, window, target }) { + test({ assert, window, target }) { const button = target.querySelector('button'); // @ts-ignore - await button.dispatchEvent(new window.Event('click')); + button.dispatchEvent(new window.Event('click')); + flushSync(); assert.htmlEqual( target.innerHTML, ` @@ -22,7 +24,8 @@ export default test({ ` ); // @ts-ignore - await button.dispatchEvent(new window.Event('click')); + button.dispatchEvent(new window.Event('click')); + flushSync(); assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-legacy/samples/each-block-destructured-object-binding/_config.js b/packages/svelte/tests/runtime-legacy/samples/each-block-destructured-object-binding/_config.js index 377a3503d8..18bd70b9ac 100644 --- a/packages/svelte/tests/runtime-legacy/samples/each-block-destructured-object-binding/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/each-block-destructured-object-binding/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -19,12 +20,12 @@ export default test({

Doctor Who

`, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const inputs = target.querySelectorAll('input'); inputs[1].value = 'Oz'; - await inputs[1].dispatchEvent(new window.Event('input')); - await Promise.resolve(); + inputs[1].dispatchEvent(new window.Event('input')); + flushSync(); const { people } = component; diff --git a/packages/svelte/tests/runtime-legacy/samples/each-block-keyed-bind-group/_config.js b/packages/svelte/tests/runtime-legacy/samples/each-block-keyed-bind-group/_config.js index 5df9a03e8b..e993f73963 100644 --- a/packages/svelte/tests/runtime-legacy/samples/each-block-keyed-bind-group/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/each-block-keyed-bind-group/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -9,13 +10,13 @@ export default test({ `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const [input1, input2, input3, input4, input5] = target.querySelectorAll('input'); const event = new window.Event('change'); input3.checked = true; - await input3.dispatchEvent(event); - await Promise.resolve(); + input3.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -35,8 +36,8 @@ export default test({ assert.equal(input5.checked, false); input4.checked = true; - await input4.dispatchEvent(event); - await Promise.resolve(); + input4.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -56,8 +57,8 @@ export default test({ assert.equal(input5.checked, false); input3.checked = false; - await input3.dispatchEvent(event); - await Promise.resolve(); + input3.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/each-block-keyed-dynamic-2/_config.js b/packages/svelte/tests/runtime-legacy/samples/each-block-keyed-dynamic-2/_config.js index 846351c092..a19d789c78 100644 --- a/packages/svelte/tests/runtime-legacy/samples/each-block-keyed-dynamic-2/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/each-block-keyed-dynamic-2/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -7,12 +8,13 @@ export default test({
    `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const button = target.querySelector('button'); ok(button); const event = new window.MouseEvent('click', { bubbles: true }); - await button.dispatchEvent(event); + button.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/each-block-keyed-index-in-event-handler/_config.js b/packages/svelte/tests/runtime-legacy/samples/each-block-keyed-index-in-event-handler/_config.js index a1fc90ff50..997ca61ecf 100644 --- a/packages/svelte/tests/runtime-legacy/samples/each-block-keyed-index-in-event-handler/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/each-block-keyed-index-in-event-handler/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -7,11 +8,12 @@ export default test({ `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const click = new window.MouseEvent('click', { bubbles: true }); - await target.querySelectorAll('button')[1].dispatchEvent(click); - await target.querySelectorAll('button')[1].dispatchEvent(click); + target.querySelectorAll('button')[1].dispatchEvent(click); + target.querySelectorAll('button')[1].dispatchEvent(click); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/each-block-scope-shadow-bind-2/_config.js b/packages/svelte/tests/runtime-legacy/samples/each-block-scope-shadow-bind-2/_config.js index 940f0308ef..d362c4b6d1 100644 --- a/packages/svelte/tests/runtime-legacy/samples/each-block-scope-shadow-bind-2/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/each-block-scope-shadow-bind-2/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -9,13 +10,13 @@ export default test({ Hello `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const input = target.querySelector('input'); ok(input); input.value = 'abcd'; - await input.dispatchEvent(new window.Event('input')); - await Promise.resolve(); + input.dispatchEvent(new window.Event('input')); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/each-block-scope-shadow-bind-3/_config.js b/packages/svelte/tests/runtime-legacy/samples/each-block-scope-shadow-bind-3/_config.js index 538dcee572..6c096f7581 100644 --- a/packages/svelte/tests/runtime-legacy/samples/each-block-scope-shadow-bind-3/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/each-block-scope-shadow-bind-3/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -26,11 +27,11 @@ export default test({ `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const [input1, input2, input3, input4] = target.querySelectorAll('input'); input1.value = 'Awesome'; - await input1.dispatchEvent(new window.Event('input')); - await Promise.resolve(); + input1.dispatchEvent(new window.Event('input')); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -49,8 +50,8 @@ export default test({ ); input2.value = 'Svelte'; - await input2.dispatchEvent(new window.Event('input')); - await Promise.resolve(); + input2.dispatchEvent(new window.Event('input')); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -69,8 +70,8 @@ export default test({ ); input3.value = 'Foo'; - await input3.dispatchEvent(new window.Event('input')); - await Promise.resolve(); + input3.dispatchEvent(new window.Event('input')); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -89,8 +90,8 @@ export default test({ ); input4.value = 'Bar'; - await input4.dispatchEvent(new window.Event('input')); - await Promise.resolve(); + input4.dispatchEvent(new window.Event('input')); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/each-block-scope-shadow-bind-4/_config.js b/packages/svelte/tests/runtime-legacy/samples/each-block-scope-shadow-bind-4/_config.js index 53a88a1880..54c71f80ac 100644 --- a/packages/svelte/tests/runtime-legacy/samples/each-block-scope-shadow-bind-4/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/each-block-scope-shadow-bind-4/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -15,7 +16,7 @@ export default test({ `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const input = target.querySelector('input'); ok(input); @@ -23,8 +24,8 @@ export default test({ ok(button); input.value = 'Awesome'; - await input.dispatchEvent(new window.Event('input')); - await Promise.resolve(); + input.dispatchEvent(new window.Event('input')); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -37,8 +38,8 @@ export default test({ ` ); - await button.dispatchEvent(new window.MouseEvent('click', { bubbles: true })); - await Promise.resolve(); + button.dispatchEvent(new window.MouseEvent('click', { bubbles: true })); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -54,8 +55,8 @@ export default test({ assert.equal(input.value, 'World'); input.value = 'Svelte'; - await input.dispatchEvent(new window.Event('input')); - await Promise.resolve(); + input.dispatchEvent(new window.Event('input')); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/each-block-scope-shadow-bind/_config.js b/packages/svelte/tests/runtime-legacy/samples/each-block-scope-shadow-bind/_config.js index 940f0308ef..d362c4b6d1 100644 --- a/packages/svelte/tests/runtime-legacy/samples/each-block-scope-shadow-bind/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/each-block-scope-shadow-bind/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -9,13 +10,13 @@ export default test({ Hello `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const input = target.querySelector('input'); ok(input); input.value = 'abcd'; - await input.dispatchEvent(new window.Event('input')); - await Promise.resolve(); + input.dispatchEvent(new window.Event('input')); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/each-blocks-assignment-2/_config.js b/packages/svelte/tests/runtime-legacy/samples/each-blocks-assignment-2/_config.js index f8f36034ea..ed7ecbf927 100644 --- a/packages/svelte/tests/runtime-legacy/samples/each-blocks-assignment-2/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/each-blocks-assignment-2/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -5,12 +6,12 @@ export default test({ foo `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const button = target.querySelector('button'); const clickEvent = new window.MouseEvent('click', { bubbles: true }); - await button?.dispatchEvent(clickEvent); - await Promise.resolve(); + button?.dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/each-blocks-assignment/_config.js b/packages/svelte/tests/runtime-legacy/samples/each-blocks-assignment/_config.js index ac53742f19..c4aa3fb891 100644 --- a/packages/svelte/tests/runtime-legacy/samples/each-blocks-assignment/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/each-blocks-assignment/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -10,12 +11,12 @@ export default test({ 3 `, - async test({ assert, target, window }) { + test({ assert, target, window }) { let [incrementBtn, ...buttons] = target.querySelectorAll('button'); const clickEvent = new window.MouseEvent('click', { bubbles: true }); - await buttons[0].dispatchEvent(clickEvent); - await Promise.resolve(); + buttons[0].dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -30,8 +31,8 @@ export default test({ ` ); - await buttons[0].dispatchEvent(clickEvent); - await Promise.resolve(); + buttons[0].dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -46,9 +47,10 @@ export default test({ ` ); - await buttons[2].dispatchEvent(clickEvent); - await buttons[2].dispatchEvent(clickEvent); - await Promise.resolve(); + buttons[2].dispatchEvent(clickEvent); + flushSync(); + buttons[2].dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -63,8 +65,8 @@ export default test({ ` ); - await incrementBtn.dispatchEvent(clickEvent); - await Promise.resolve(); + incrementBtn.dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -83,8 +85,8 @@ export default test({ [incrementBtn, ...buttons] = target.querySelectorAll('button'); - await buttons[3].dispatchEvent(clickEvent); - await Promise.resolve(); + buttons[3].dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/empty-component-destroy/_config.js b/packages/svelte/tests/runtime-legacy/samples/empty-component-destroy/_config.js index d6f1b5a07e..f49b9fdde5 100644 --- a/packages/svelte/tests/runtime-legacy/samples/empty-component-destroy/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/empty-component-destroy/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -5,12 +6,14 @@ export default test({ `, - async test({ assert, target, window, logs }) { + test({ assert, target, window, logs }) { const button = target.querySelector('button'); const event = new window.MouseEvent('click'); // @ts-ignore - await button.dispatchEvent(event); + button.dispatchEvent(event); + flushSync(); + assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-legacy/samples/event-handler-destructured/_config.js b/packages/svelte/tests/runtime-legacy/samples/event-handler-destructured/_config.js index 92f4245ca8..35e9c6752c 100644 --- a/packages/svelte/tests/runtime-legacy/samples/event-handler-destructured/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/event-handler-destructured/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -5,13 +6,14 @@ export default test({ `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const button = target.querySelector('button'); ok(button); const event = new window.MouseEvent('click', { bubbles: true }); - await button.dispatchEvent(event); + button.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-legacy/samples/event-handler-dynamic-2/_config.js b/packages/svelte/tests/runtime-legacy/samples/event-handler-dynamic-2/_config.js index e48a99997c..681fa25d7b 100644 --- a/packages/svelte/tests/runtime-legacy/samples/event-handler-dynamic-2/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/event-handler-dynamic-2/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -8,29 +9,37 @@ export default test({ `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const [toggle, handler_a, handler_b] = target.querySelectorAll('button'); const p = target.querySelector('p'); ok(p); const event = new window.MouseEvent('click', { bubbles: true }); - await handler_a.dispatchEvent(event); + handler_a.dispatchEvent(event); + flushSync(); assert.equal(p.innerHTML, '1'); - await toggle.dispatchEvent(event); + toggle.dispatchEvent(event); + flushSync(); - await handler_a.dispatchEvent(event); + handler_a.dispatchEvent(event); + flushSync(); assert.equal(p.innerHTML, '2'); - await toggle.dispatchEvent(event); + toggle.dispatchEvent(event); + flushSync(); - await handler_b.dispatchEvent(event); + handler_b.dispatchEvent(event); + flushSync(); assert.equal(p.innerHTML, '1'); - await toggle.dispatchEvent(event); + toggle.dispatchEvent(event); + flushSync(); + + handler_b.dispatchEvent(event); + flushSync(); - await handler_b.dispatchEvent(event); assert.equal(p.innerHTML, '2'); } }); diff --git a/packages/svelte/tests/runtime-legacy/samples/event-handler-dynamic-bound-var/_config.js b/packages/svelte/tests/runtime-legacy/samples/event-handler-dynamic-bound-var/_config.js index d245174d9a..afb0fbcc54 100644 --- a/packages/svelte/tests/runtime-legacy/samples/event-handler-dynamic-bound-var/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/event-handler-dynamic-bound-var/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -5,13 +6,14 @@ export default test({ Hello World `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const button = target.querySelector('button'); ok(button); const event = new window.MouseEvent('click', { bubbles: true }); - await button.dispatchEvent(event); + button.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-legacy/samples/event-handler-dynamic-expression/_config.js b/packages/svelte/tests/runtime-legacy/samples/event-handler-dynamic-expression/_config.js index e361009847..04d9469ede 100644 --- a/packages/svelte/tests/runtime-legacy/samples/event-handler-dynamic-expression/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/event-handler-dynamic-expression/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -8,13 +9,16 @@ export default test({ const event = new window.MouseEvent('click', { bubbles: true }); - await button.dispatchEvent(event); + button.dispatchEvent(event); + flushSync(); assert.htmlEqual(target.innerHTML, ''); - await button.dispatchEvent(event); + button.dispatchEvent(event); + flushSync(); assert.htmlEqual(target.innerHTML, ''); - await button.dispatchEvent(event); + button.dispatchEvent(event); + flushSync(); assert.htmlEqual(target.innerHTML, ''); } }); diff --git a/packages/svelte/tests/runtime-legacy/samples/event-handler-dynamic-hash/_config.js b/packages/svelte/tests/runtime-legacy/samples/event-handler-dynamic-hash/_config.js index 4cb916471c..33710f18ed 100644 --- a/packages/svelte/tests/runtime-legacy/samples/event-handler-dynamic-hash/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/event-handler-dynamic-hash/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -10,7 +11,7 @@ export default test({ `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const [updateButton1, updateButton2, button] = target.querySelectorAll('button'); const event = new window.MouseEvent('click', { bubbles: true }); @@ -20,7 +21,8 @@ export default test({ err = e.message; }); - await button.dispatchEvent(event); + button.dispatchEvent(event); + flushSync(); assert.equal(err, '', err); assert.htmlEqual( target.innerHTML, @@ -34,8 +36,10 @@ export default test({ ` ); - await updateButton1.dispatchEvent(event); - await button.dispatchEvent(event); + updateButton1.dispatchEvent(event); + flushSync(); + button.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, ` @@ -48,8 +52,9 @@ export default test({ ` ); - await updateButton2.dispatchEvent(event); - await button.dispatchEvent(event); + updateButton2.dispatchEvent(event); + button.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-legacy/samples/event-handler-dynamic/_config.js b/packages/svelte/tests/runtime-legacy/samples/event-handler-dynamic/_config.js index 4cb916471c..979ed7a60e 100644 --- a/packages/svelte/tests/runtime-legacy/samples/event-handler-dynamic/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/event-handler-dynamic/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -10,7 +11,7 @@ export default test({ `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const [updateButton1, updateButton2, button] = target.querySelectorAll('button'); const event = new window.MouseEvent('click', { bubbles: true }); @@ -20,7 +21,8 @@ export default test({ err = e.message; }); - await button.dispatchEvent(event); + button.dispatchEvent(event); + flushSync(); assert.equal(err, '', err); assert.htmlEqual( target.innerHTML, @@ -34,8 +36,9 @@ export default test({ ` ); - await updateButton1.dispatchEvent(event); - await button.dispatchEvent(event); + updateButton1.dispatchEvent(event); + button.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, ` @@ -48,8 +51,9 @@ export default test({ ` ); - await updateButton2.dispatchEvent(event); - await button.dispatchEvent(event); + updateButton2.dispatchEvent(event); + button.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-legacy/samples/event-handler-each-context-invalidation/_config.js b/packages/svelte/tests/runtime-legacy/samples/event-handler-each-context-invalidation/_config.js index 3ffbe42d5a..885422b469 100644 --- a/packages/svelte/tests/runtime-legacy/samples/event-handler-each-context-invalidation/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/event-handler-each-context-invalidation/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -8,12 +9,13 @@ export default test({

    on: 1

    `, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const buttons = target.querySelectorAll('button'); const event = new window.MouseEvent('click', { bubbles: true }); - await buttons[0].dispatchEvent(event); - await Promise.resolve(); + buttons[0].dispatchEvent(event); + flushSync(); + assert.htmlEqual( target.innerHTML, ` @@ -24,8 +26,9 @@ export default test({ ` ); - await buttons[2].dispatchEvent(event); - await Promise.resolve(); + buttons[2].dispatchEvent(event); + flushSync(); + assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-legacy/samples/event-handler-each-deconflicted/_config.js b/packages/svelte/tests/runtime-legacy/samples/event-handler-each-deconflicted/_config.js index cda08132e6..98433eda04 100644 --- a/packages/svelte/tests/runtime-legacy/samples/event-handler-each-deconflicted/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/event-handler-each-deconflicted/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -11,11 +12,13 @@ export default test({

    clicked: neither

    `, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const buttons = target.querySelectorAll('button'); const event = new window.MouseEvent('click', { bubbles: true }); - await buttons[0].dispatchEvent(event); + buttons[0].dispatchEvent(event); + flushSync(); + assert.equal(component.clicked, 'foo'); assert.htmlEqual( target.innerHTML, @@ -26,7 +29,9 @@ export default test({ ` ); - await buttons[1].dispatchEvent(event); + buttons[1].dispatchEvent(event); + flushSync(); + assert.equal(component.clicked, 'bar'); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/event-handler-each/_config.js b/packages/svelte/tests/runtime-legacy/samples/event-handler-each/_config.js index d638b35a58..aa97c5d24a 100644 --- a/packages/svelte/tests/runtime-legacy/samples/event-handler-each/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/event-handler-each/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -15,11 +16,13 @@ export default test({

    selected: foo

    `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const buttons = target.querySelectorAll('button'); const event = new window.MouseEvent('click', { bubbles: true }); - await buttons[1].dispatchEvent(event); + buttons[1].dispatchEvent(event); + flushSync(); + assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-legacy/samples/event-handler-modifier-once-duplicated/_config.js b/packages/svelte/tests/runtime-legacy/samples/event-handler-modifier-once-duplicated/_config.js index ab139e137f..7ab1508673 100644 --- a/packages/svelte/tests/runtime-legacy/samples/event-handler-modifier-once-duplicated/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/event-handler-modifier-once-duplicated/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -11,14 +12,18 @@ export default test({ const event = new window.MouseEvent('click', { bubbles: true }); - await buttons[0].dispatchEvent(event); + buttons[0].dispatchEvent(event); + flushSync(); + assert.htmlEqual( target.innerHTML, ` ` ); - await buttons[1].dispatchEvent(event); + buttons[1].dispatchEvent(event); + flushSync(); + assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-legacy/samples/event-handler-sanitize/_config.js b/packages/svelte/tests/runtime-legacy/samples/event-handler-sanitize/_config.js index 3a030adca4..4986ac9de2 100644 --- a/packages/svelte/tests/runtime-legacy/samples/event-handler-sanitize/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/event-handler-sanitize/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -13,7 +14,9 @@ export default test({ ok(button); const event = new window.MouseEvent('some-event'); - await div.dispatchEvent(event); + div.dispatchEvent(event); + flushSync(); + assert.htmlEqual( target.innerHTML, ` @@ -23,7 +26,9 @@ export default test({ ` ); - await button.click(); + button.click(); + flushSync(); + assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-legacy/samples/event-handler/_config.js b/packages/svelte/tests/runtime-legacy/samples/event-handler/_config.js index be7a9c7288..0e437cdeb6 100644 --- a/packages/svelte/tests/runtime-legacy/samples/event-handler/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/event-handler/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -5,13 +6,15 @@ export default test({ `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const button = target.querySelector('button'); ok(button); const event = new window.MouseEvent('click', { bubbles: true }); - await button.dispatchEvent(event); + button.dispatchEvent(event); + flushSync(); + assert.htmlEqual( target.innerHTML, ` @@ -20,7 +23,9 @@ export default test({ ` ); - await button.dispatchEvent(event); + button.dispatchEvent(event); + flushSync(); + assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-legacy/samples/globals-not-overwritten-by-bindings/_config.js b/packages/svelte/tests/runtime-legacy/samples/globals-not-overwritten-by-bindings/_config.js index 80cb03edb9..6ffb1b7370 100644 --- a/packages/svelte/tests/runtime-legacy/samples/globals-not-overwritten-by-bindings/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/globals-not-overwritten-by-bindings/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -51,14 +52,15 @@ export default test({ }; }, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const input = /** @type {HTMLInputElement} */ ( document.querySelectorAll('input[type="checkbox"]')[2] ); const change = new window.Event('change'); input.checked = true; - await input.dispatchEvent(change); + input.dispatchEvent(change); + flushSync(); assert.ok(component.todos.third.done); assert.htmlEqual( diff --git a/packages/svelte/tests/runtime-legacy/samples/if-block-else-update/_config.js b/packages/svelte/tests/runtime-legacy/samples/if-block-else-update/_config.js index 36b355e945..bed9ff6611 100644 --- a/packages/svelte/tests/runtime-legacy/samples/if-block-else-update/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/if-block-else-update/_config.js @@ -1,12 +1,15 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ - async test({ assert, target, window }) { + test({ assert, target, window }) { const [btn1, btn2] = target.querySelectorAll('button'); const clickEvent = new window.Event('click', { bubbles: true }); - await btn2.dispatchEvent(clickEvent); + btn2.dispatchEvent(clickEvent); + flushSync(); + assert.htmlEqual( target.innerHTML, ` @@ -19,7 +22,9 @@ export default test({ ` ); - await btn1.dispatchEvent(clickEvent); + btn1.dispatchEvent(clickEvent); + flushSync(); + assert.htmlEqual( target.innerHTML, ` @@ -32,7 +37,9 @@ export default test({ ` ); - await btn2.dispatchEvent(clickEvent); + btn2.dispatchEvent(clickEvent); + flushSync(); + assert.htmlEqual( target.innerHTML, ` @@ -45,7 +52,9 @@ export default test({ ` ); - await btn1.dispatchEvent(clickEvent); + btn1.dispatchEvent(clickEvent); + flushSync(); + assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-legacy/samples/inline-style-become-undefined/_config.js b/packages/svelte/tests/runtime-legacy/samples/inline-style-become-undefined/_config.js index 59181bb6ce..4e2d400fd5 100644 --- a/packages/svelte/tests/runtime-legacy/samples/inline-style-become-undefined/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/inline-style-become-undefined/_config.js @@ -1,14 +1,15 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ - async test({ assert, target, window }) { + test({ assert, target, window }) { const div = target.querySelector('div'); ok(div); const click = new window.MouseEvent('click', { bubbles: true }); assert.htmlEqual(target.innerHTML, '
    '); - await div.dispatchEvent(click); - await Promise.resolve(); + div.dispatchEvent(click); + flushSync(); assert.htmlEqual(target.innerHTML, '
    '); } }); diff --git a/packages/svelte/tests/runtime-legacy/samples/inline-style-directive-shorthand-declaration-only/_config.js b/packages/svelte/tests/runtime-legacy/samples/inline-style-directive-shorthand-declaration-only/_config.js index dfcd5a31fe..b71b056434 100644 --- a/packages/svelte/tests/runtime-legacy/samples/inline-style-directive-shorthand-declaration-only/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/inline-style-directive-shorthand-declaration-only/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -7,7 +8,7 @@ export default test({ `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const [p1, p2] = target.querySelectorAll('p'); assert.equal(window.getComputedStyle(p1).color, 'red'); @@ -16,7 +17,7 @@ export default test({ const btn = target.querySelector('button'); console.log(btn); btn?.click(); - await Promise.resolve(); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/instrumentation-script-destructuring/_config.js b/packages/svelte/tests/runtime-legacy/samples/instrumentation-script-destructuring/_config.js index e9ec80cf18..4d111c60a8 100644 --- a/packages/svelte/tests/runtime-legacy/samples/instrumentation-script-destructuring/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/instrumentation-script-destructuring/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -8,11 +9,12 @@ export default test({

    x: 0

    `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const buttons = target.querySelectorAll('button'); const click = new window.MouseEvent('click', { bubbles: true }); - await buttons[0].dispatchEvent(click); + buttons[0].dispatchEvent(click); + flushSync(); assert.htmlEqual( target.innerHTML, ` @@ -23,7 +25,8 @@ export default test({ ` ); - await buttons[1].dispatchEvent(click); + buttons[1].dispatchEvent(click); + flushSync(); assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-legacy/samples/instrumentation-script-loop-scope/_config.js b/packages/svelte/tests/runtime-legacy/samples/instrumentation-script-loop-scope/_config.js index d269944d97..14717a95ec 100644 --- a/packages/svelte/tests/runtime-legacy/samples/instrumentation-script-loop-scope/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/instrumentation-script-loop-scope/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -6,11 +7,13 @@ export default test({

    x: 0

    `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const buttons = target.querySelectorAll('button'); const click = new window.MouseEvent('click', { bubbles: true }); - await buttons[0].dispatchEvent(click); + buttons[0].dispatchEvent(click); + flushSync(); + assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-legacy/samples/instrumentation-script-multiple-assignments/_config.js b/packages/svelte/tests/runtime-legacy/samples/instrumentation-script-multiple-assignments/_config.js index 1645d87a77..cd13cc73ac 100644 --- a/packages/svelte/tests/runtime-legacy/samples/instrumentation-script-multiple-assignments/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/instrumentation-script-multiple-assignments/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -11,11 +12,12 @@ export default test({

    bar: 0

    `, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const button = target.querySelector('button'); const click = new window.MouseEvent('click', { bubbles: true }); - await button?.dispatchEvent(click); + button?.dispatchEvent(click); + flushSync(); assert.equal(component.foo, 4); assert.equal(component.bar, 2); diff --git a/packages/svelte/tests/runtime-legacy/samples/instrumentation-script-update/_config.js b/packages/svelte/tests/runtime-legacy/samples/instrumentation-script-update/_config.js index c18060047b..a7673f2573 100644 --- a/packages/svelte/tests/runtime-legacy/samples/instrumentation-script-update/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/instrumentation-script-update/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -6,11 +7,12 @@ export default test({

    x: 0

    `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const buttons = target.querySelectorAll('button'); const click = new window.MouseEvent('click', { bubbles: true }); - await buttons[0].dispatchEvent(click); + buttons[0].dispatchEvent(click); + flushSync(); assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-legacy/samples/instrumentation-template-destructuring/_config.js b/packages/svelte/tests/runtime-legacy/samples/instrumentation-template-destructuring/_config.js index e9ec80cf18..b2c0e80831 100644 --- a/packages/svelte/tests/runtime-legacy/samples/instrumentation-template-destructuring/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/instrumentation-template-destructuring/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -12,7 +13,9 @@ export default test({ const buttons = target.querySelectorAll('button'); const click = new window.MouseEvent('click', { bubbles: true }); - await buttons[0].dispatchEvent(click); + buttons[0].dispatchEvent(click); + flushSync(); + assert.htmlEqual( target.innerHTML, ` @@ -23,7 +26,9 @@ export default test({ ` ); - await buttons[1].dispatchEvent(click); + buttons[1].dispatchEvent(click); + flushSync(); + assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-legacy/samples/instrumentation-template-loop-scope/_config.js b/packages/svelte/tests/runtime-legacy/samples/instrumentation-template-loop-scope/_config.js index d269944d97..14717a95ec 100644 --- a/packages/svelte/tests/runtime-legacy/samples/instrumentation-template-loop-scope/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/instrumentation-template-loop-scope/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -6,11 +7,13 @@ export default test({

    x: 0

    `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const buttons = target.querySelectorAll('button'); const click = new window.MouseEvent('click', { bubbles: true }); - await buttons[0].dispatchEvent(click); + buttons[0].dispatchEvent(click); + flushSync(); + assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-legacy/samples/instrumentation-template-multiple-assignments/_config.js b/packages/svelte/tests/runtime-legacy/samples/instrumentation-template-multiple-assignments/_config.js index 1645d87a77..cd13cc73ac 100644 --- a/packages/svelte/tests/runtime-legacy/samples/instrumentation-template-multiple-assignments/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/instrumentation-template-multiple-assignments/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -11,11 +12,12 @@ export default test({

    bar: 0

    `, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const button = target.querySelector('button'); const click = new window.MouseEvent('click', { bubbles: true }); - await button?.dispatchEvent(click); + button?.dispatchEvent(click); + flushSync(); assert.equal(component.foo, 4); assert.equal(component.bar, 2); diff --git a/packages/svelte/tests/runtime-legacy/samples/instrumentation-template-update/_config.js b/packages/svelte/tests/runtime-legacy/samples/instrumentation-template-update/_config.js index c18060047b..a7673f2573 100644 --- a/packages/svelte/tests/runtime-legacy/samples/instrumentation-template-update/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/instrumentation-template-update/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -6,11 +7,12 @@ export default test({

    x: 0

    `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const buttons = target.querySelectorAll('button'); const click = new window.MouseEvent('click', { bubbles: true }); - await buttons[0].dispatchEvent(click); + buttons[0].dispatchEvent(click); + flushSync(); assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-legacy/samples/instrumentation-update-expression/_config.js b/packages/svelte/tests/runtime-legacy/samples/instrumentation-update-expression/_config.js index d58be61a36..a3c5b2a825 100644 --- a/packages/svelte/tests/runtime-legacy/samples/instrumentation-update-expression/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/instrumentation-update-expression/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -9,24 +10,28 @@ export default test({ `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const [foo, bar] = target.querySelectorAll('p'); const [button1, button2, button3, button4] = target.querySelectorAll('button'); const event = new window.MouseEvent('click', { bubbles: true }); - await button1.dispatchEvent(event); + button1.dispatchEvent(event); + flushSync(); assert.equal(foo.innerHTML, '1'); assert.equal(bar.innerHTML, '0'); - await button2.dispatchEvent(event); + button2.dispatchEvent(event); + flushSync(); assert.equal(foo.innerHTML, '2'); assert.equal(bar.innerHTML, '0'); - await button3.dispatchEvent(event); + button3.dispatchEvent(event); + flushSync(); assert.equal(foo.innerHTML, '2'); assert.equal(bar.innerHTML, '1'); - await button4.dispatchEvent(event); + button4.dispatchEvent(event); + flushSync(); assert.equal(foo.innerHTML, '2'); assert.equal(bar.innerHTML, '2'); } diff --git a/packages/svelte/tests/runtime-legacy/samples/invalidation-in-if-condition/_config.js b/packages/svelte/tests/runtime-legacy/samples/invalidation-in-if-condition/_config.js index 881cba8c13..02f43929d8 100644 --- a/packages/svelte/tests/runtime-legacy/samples/invalidation-in-if-condition/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/invalidation-in-if-condition/_config.js @@ -1,21 +1,25 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ html: '', - async test({ assert, target, window }) { + test({ assert, target, window }) { const button = target.querySelector('button'); ok(button); const click = new window.MouseEvent('click', { bubbles: true }); - await button.dispatchEvent(click); + button.dispatchEvent(click); + flushSync(); assert.htmlEqual(target.innerHTML, ''); - await button.dispatchEvent(click); + button.dispatchEvent(click); + flushSync(); assert.htmlEqual(target.innerHTML, ''); - await button.dispatchEvent(click); + button.dispatchEvent(click); + flushSync(); assert.htmlEqual(target.innerHTML, ''); } }); diff --git a/packages/svelte/tests/runtime-legacy/samples/key-block-component-slot/_config.js b/packages/svelte/tests/runtime-legacy/samples/key-block-component-slot/_config.js index 8265e5b62f..837d1d112b 100644 --- a/packages/svelte/tests/runtime-legacy/samples/key-block-component-slot/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/key-block-component-slot/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; /** @type {string[]} */ @@ -13,14 +14,14 @@ export default test({ logs = []; }, - async test({ assert, target }) { + test({ assert, target }) { assert.deepEqual(logs, ['mount']); const button = target.querySelector('button'); const click = new window.MouseEvent('click', { bubbles: true }); - await button?.dispatchEvent(click); - await Promise.resolve(); + button?.dispatchEvent(click); + flushSync(); assert.deepEqual(logs, ['mount', 'unmount', 'mount']); } diff --git a/packages/svelte/tests/runtime-legacy/samples/key-block-static-if/_config.js b/packages/svelte/tests/runtime-legacy/samples/key-block-static-if/_config.js index 0aa126ddc6..baa6ac3a7e 100644 --- a/packages/svelte/tests/runtime-legacy/samples/key-block-static-if/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/key-block-static-if/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -10,7 +11,8 @@ export default test({ async test({ assert, target, window }) { const button = target.querySelector('button'); - await button?.dispatchEvent(new window.Event('click', { bubbles: true })); + button?.dispatchEvent(new window.Event('click', { bubbles: true })); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/mutation-tracking-across-sibling-scopes/_config.js b/packages/svelte/tests/runtime-legacy/samples/mutation-tracking-across-sibling-scopes/_config.js index b67753cffc..fbbc749b6d 100644 --- a/packages/svelte/tests/runtime-legacy/samples/mutation-tracking-across-sibling-scopes/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/mutation-tracking-across-sibling-scopes/_config.js @@ -1,7 +1,8 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ - async test({ assert, component, target }) { + test({ assert, component, target }) { assert.htmlEqual(component.div.innerHTML, '
    +
    -
    '); const event = new window.Event('change'); @@ -9,8 +10,8 @@ export default test({ ok(input); input.checked = false; - await input.dispatchEvent(event); - await Promise.resolve(); + input.dispatchEvent(event); + flushSync(); assert.htmlEqual(component.div.innerHTML, '
    -
    -
    '); } diff --git a/packages/svelte/tests/runtime-legacy/samples/nested-destructure-assignment-2/_config.js b/packages/svelte/tests/runtime-legacy/samples/nested-destructure-assignment-2/_config.js index 9e41e8074e..a8451373c4 100644 --- a/packages/svelte/tests/runtime-legacy/samples/nested-destructure-assignment-2/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/nested-destructure-assignment-2/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -17,10 +18,11 @@ export default test({ `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const button = target.querySelector('button'); const clickEvent = new window.Event('click', { bubbles: true }); - await button?.dispatchEvent(clickEvent); + button?.dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/nested-destructure-assignment/_config.js b/packages/svelte/tests/runtime-legacy/samples/nested-destructure-assignment/_config.js index 021f851197..79b68dd931 100644 --- a/packages/svelte/tests/runtime-legacy/samples/nested-destructure-assignment/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/nested-destructure-assignment/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -17,10 +18,11 @@ export default test({ `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const button = target.querySelector('button'); const clickEvent = new window.Event('click', { bubbles: true }); - await button?.dispatchEvent(clickEvent); + button?.dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/prop-no-change/_config.js b/packages/svelte/tests/runtime-legacy/samples/prop-no-change/_config.js index 71720f3528..905c2a6226 100644 --- a/packages/svelte/tests/runtime-legacy/samples/prop-no-change/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/prop-no-change/_config.js @@ -1,9 +1,11 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ - async test({ assert, logs, target }) { + test({ assert, logs, target }) { assert.deepEqual(logs, ['primitive', 'object']); - await target.querySelector('button')?.click(); + target.querySelector('button')?.click(); + flushSync(); assert.deepEqual(logs, ['primitive', 'object', 'object']); } }); diff --git a/packages/svelte/tests/runtime-legacy/samples/props-reactive-slot/_config.js b/packages/svelte/tests/runtime-legacy/samples/props-reactive-slot/_config.js index b6b3ee3a04..85edf41dae 100644 --- a/packages/svelte/tests/runtime-legacy/samples/props-reactive-slot/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/props-reactive-slot/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -6,11 +7,12 @@ export default test({ `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const btn = target.querySelector('button'); const clickEvent = new window.MouseEvent('click', { bubbles: true }); - await btn?.dispatchEvent(clickEvent); + btn?.dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/props-reassign/_config.js b/packages/svelte/tests/runtime-legacy/samples/props-reassign/_config.js index d5760f7a77..b9ddd39238 100644 --- a/packages/svelte/tests/runtime-legacy/samples/props-reassign/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/props-reassign/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -7,10 +8,11 @@ export default test({ `, - async test({ assert, target }) { + test({ assert, target }) { const [btn1, btn2] = target.querySelectorAll('button'); - await btn1.click(); + btn1.click(); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -21,7 +23,8 @@ export default test({ ` ); - await btn2.click(); + btn2.click(); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/raw-mustache-as-root/_config.js b/packages/svelte/tests/runtime-legacy/samples/raw-mustache-as-root/_config.js index ee75954855..63a4b8aed3 100644 --- a/packages/svelte/tests/runtime-legacy/samples/raw-mustache-as-root/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/raw-mustache-as-root/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -6,15 +7,14 @@ export default test({

    Another first line

    This line should be last.

    `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const btn = target.querySelector('button'); ok(btn); const clickEvent = new window.MouseEvent('click', { bubbles: true }); - await btn.dispatchEvent(clickEvent); - await Promise.resolve(); // TODO: We use a pre_effect for $:, changing to computed will make this line redundant - await Promise.resolve(); // additional tick to rerender + btn.dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -25,9 +25,8 @@ export default test({ ` ); - await btn.dispatchEvent(clickEvent); - await Promise.resolve(); // TODO: We use a pre_effect for $:, changing to computed will make this line redundant - await Promise.resolve(); // additional tick to rerender + btn.dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/raw-mustache-inside-slot/_config.js b/packages/svelte/tests/runtime-legacy/samples/raw-mustache-inside-slot/_config.js index a8d9c3e11f..63a4b8aed3 100644 --- a/packages/svelte/tests/runtime-legacy/samples/raw-mustache-inside-slot/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/raw-mustache-inside-slot/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -6,14 +7,14 @@ export default test({

    Another first line

    This line should be last.

    `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const btn = target.querySelector('button'); ok(btn); const clickEvent = new window.MouseEvent('click', { bubbles: true }); - await btn.dispatchEvent(clickEvent); - await Promise.resolve(); // additional tick to rerender + btn.dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -24,8 +25,8 @@ export default test({ ` ); - await btn.dispatchEvent(clickEvent); - await Promise.resolve(); // additional tick to rerender + btn.dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/reactive-compound-operator/_config.js b/packages/svelte/tests/runtime-legacy/samples/reactive-compound-operator/_config.js index 03e69eac3c..9eecf4a7a5 100644 --- a/packages/svelte/tests/runtime-legacy/samples/reactive-compound-operator/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/reactive-compound-operator/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -11,7 +12,8 @@ export default test({ const button = target.querySelector('button'); ok(button); - await button.dispatchEvent(click); + button.dispatchEvent(click); + flushSync(); assert.equal(component.x, 2); assert.htmlEqual( @@ -22,7 +24,8 @@ export default test({ ` ); - await button.dispatchEvent(click); + button.dispatchEvent(click); + flushSync(); assert.equal(component.x, 6); assert.htmlEqual( diff --git a/packages/svelte/tests/runtime-legacy/samples/reactive-function-called-reassigned/_config.js b/packages/svelte/tests/runtime-legacy/samples/reactive-function-called-reassigned/_config.js index ee28fb43c3..dacf6ffbc5 100644 --- a/packages/svelte/tests/runtime-legacy/samples/reactive-function-called-reassigned/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/reactive-function-called-reassigned/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; /** @type {string[]} */ @@ -17,7 +18,7 @@ export default test({ before_test() { called = 0; }, - async test({ assert, target, window }) { + test({ assert, target, window }) { assert.equal(called, 1); const input = target.querySelector('input'); @@ -25,7 +26,8 @@ export default test({ const event = new window.Event('input'); input.value = 'h'; - await input.dispatchEvent(event); + input.dispatchEvent(event); + flushSync(); assert.equal(called, 2); assert.equal(value.length, 3); diff --git a/packages/svelte/tests/runtime-legacy/samples/reactive-statement-indirect/_config.js b/packages/svelte/tests/runtime-legacy/samples/reactive-statement-indirect/_config.js index 96fe6ded05..4cc21b0db9 100644 --- a/packages/svelte/tests/runtime-legacy/samples/reactive-statement-indirect/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/reactive-statement-indirect/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -5,12 +6,12 @@ export default test({

    2

    `, - async test({ assert, target }) { - await target + test({ assert, target }) { + target .querySelector('button') ?.dispatchEvent(new window.MouseEvent('click', { bubbles: true })); - await Promise.resolve(); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/reactive-update-expression/_config.js b/packages/svelte/tests/runtime-legacy/samples/reactive-update-expression/_config.js index 8df0d32e9d..38494fee8a 100644 --- a/packages/svelte/tests/runtime-legacy/samples/reactive-update-expression/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/reactive-update-expression/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -6,14 +7,15 @@ export default test({

    count: 1

    `, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const click = new window.MouseEvent('click', { bubbles: true }); const button = target.querySelector('button'); ok(button); assert.equal(component.x, 1); - await button.dispatchEvent(click); + button.dispatchEvent(click); + flushSync(); assert.equal(component.x, 3); assert.htmlEqual( @@ -24,7 +26,8 @@ export default test({ ` ); - await button.dispatchEvent(click); + button.dispatchEvent(click); + flushSync(); assert.equal(component.x, 5); assert.htmlEqual( diff --git a/packages/svelte/tests/runtime-legacy/samples/reactive-value-mutate-const/_config.js b/packages/svelte/tests/runtime-legacy/samples/reactive-value-mutate-const/_config.js index 55f4777c1a..03d973fc0b 100644 --- a/packages/svelte/tests/runtime-legacy/samples/reactive-value-mutate-const/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/reactive-value-mutate-const/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -6,12 +7,12 @@ export default test({
    {}
    `, - async test({ assert, target }) { + test({ assert, target }) { const button = target.querySelector('button'); const click = new window.MouseEvent('click', { bubbles: true }); - await button?.dispatchEvent(click); - await Promise.resolve(); + button?.dispatchEvent(click); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/rest-props-reassign/_config.js b/packages/svelte/tests/runtime-legacy/samples/rest-props-reassign/_config.js index 4e8638eab2..694ba871ed 100644 --- a/packages/svelte/tests/runtime-legacy/samples/rest-props-reassign/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/rest-props-reassign/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -7,10 +8,11 @@ export default test({ `, - async test({ assert, target }) { + test({ assert, target }) { const [btn1, btn2] = target.querySelectorAll('button'); - await btn1.click(); + btn1.click(); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -21,7 +23,8 @@ export default test({ ` ); - await btn2.click(); + btn2.click(); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/rest-props-without-props/_config.js b/packages/svelte/tests/runtime-legacy/samples/rest-props-without-props/_config.js index ff97265fb5..a210563ec3 100644 --- a/packages/svelte/tests/runtime-legacy/samples/rest-props-without-props/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/rest-props-without-props/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -10,11 +11,12 @@ export default test({
    `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const [btn1, btn2, btn3, btn4] = target.querySelectorAll('button'); const clickEvent = new window.Event('click', { bubbles: true }); - await btn1.dispatchEvent(clickEvent); + btn1.dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -26,8 +28,8 @@ export default test({ ` ); - await btn2.dispatchEvent(clickEvent); - await Promise.resolve(); + btn2.dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -39,8 +41,8 @@ export default test({ ` ); - await btn3.dispatchEvent(clickEvent); - await Promise.resolve(); + btn3.dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -52,8 +54,8 @@ export default test({ ` ); - await btn4.dispatchEvent(clickEvent); - await Promise.resolve(); + btn4.dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/rest-props/_config.js b/packages/svelte/tests/runtime-legacy/samples/rest-props/_config.js index 2ee0a7e2b6..969843b83b 100644 --- a/packages/svelte/tests/runtime-legacy/samples/rest-props/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/rest-props/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -12,11 +13,12 @@ export default test({ `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const [btn1, btn2, btn3, btn4] = target.querySelectorAll('button'); const clickEvent = new window.Event('click', { bubbles: true }); - await btn1.dispatchEvent(clickEvent); + btn1.dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -29,8 +31,8 @@ export default test({ ` ); - await btn2.dispatchEvent(clickEvent); - await Promise.resolve(); + btn2.dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -43,8 +45,8 @@ export default test({ ` ); - await btn3.dispatchEvent(clickEvent); - await Promise.resolve(); + btn3.dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -57,8 +59,8 @@ export default test({ ` ); - await btn4.dispatchEvent(clickEvent); - await Promise.resolve(); + btn4.dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/select-lazy-options/_config.js b/packages/svelte/tests/runtime-legacy/samples/select-lazy-options/_config.js index 03714f0875..88a8281f44 100644 --- a/packages/svelte/tests/runtime-legacy/samples/select-lazy-options/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/select-lazy-options/_config.js @@ -1,8 +1,10 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ async test({ assert, target }) { - await target.querySelector('button')?.click(); + target.querySelector('button')?.click(); + flushSync(); await Promise.resolve(); const options = target.querySelectorAll('option'); diff --git a/packages/svelte/tests/runtime-legacy/samples/spread-component-with-bind/_config.js b/packages/svelte/tests/runtime-legacy/samples/spread-component-with-bind/_config.js index ade62ee209..3dbf2d3e58 100644 --- a/packages/svelte/tests/runtime-legacy/samples/spread-component-with-bind/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/spread-component-with-bind/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ @@ -11,12 +12,13 @@ export default test({ `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const input = target.querySelector('input'); ok(input); input.value = 'bar'; - await input.dispatchEvent(new window.Event('input')); + input.dispatchEvent(new window.Event('input')); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/spread-element-input-select-multiple/_config.js b/packages/svelte/tests/runtime-legacy/samples/spread-element-input-select-multiple/_config.js index 1670bb0c31..cdbf94ace5 100644 --- a/packages/svelte/tests/runtime-legacy/samples/spread-element-input-select-multiple/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/spread-element-input-select-multiple/_config.js @@ -1,7 +1,8 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const [input1, input2] = target.querySelectorAll('input'); const select = target.querySelector('select'); ok(select); @@ -15,7 +16,8 @@ export default test({ const event = new window.Event('change'); input1.checked = false; - await input1.dispatchEvent(event); + input1.dispatchEvent(event); + flushSync(); selections = Array.from(select.selectedOptions); assert.equal(selections.length, 1); @@ -23,10 +25,11 @@ export default test({ assert.ok(selections.includes(option2)); input2.checked = false; - await input2.dispatchEvent(event); + input2.dispatchEvent(event); + flushSync(); input1.checked = true; - await input1.dispatchEvent(event); - + input1.dispatchEvent(event); + flushSync(); selections = Array.from(select.selectedOptions); assert.equal(selections.length, 1); assert.ok(selections.includes(option1)); diff --git a/packages/svelte/tests/runtime-legacy/samples/store-assignment-updates-property/_config.js b/packages/svelte/tests/runtime-legacy/samples/store-assignment-updates-property/_config.js index 7e3c3bcc9c..c901a425a5 100644 --- a/packages/svelte/tests/runtime-legacy/samples/store-assignment-updates-property/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/store-assignment-updates-property/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -8,11 +9,12 @@ export default test({ `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const [btn1, btn2] = target.querySelectorAll('button'); const click = new window.MouseEvent('click', { bubbles: true }); - await btn1.dispatchEvent(click); + btn1.dispatchEvent(click); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -24,7 +26,8 @@ export default test({ ` ); - await btn2.dispatchEvent(click); + btn2.dispatchEvent(click); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/store-assignment-updates/_config.js b/packages/svelte/tests/runtime-legacy/samples/store-assignment-updates/_config.js index 85054029c3..35e0425d3d 100644 --- a/packages/svelte/tests/runtime-legacy/samples/store-assignment-updates/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/store-assignment-updates/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; import { writable } from 'svelte/store'; @@ -11,13 +12,14 @@ export default test({

    doubled: 0

    `, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const button = target.querySelector('button'); ok(button); const click = new window.MouseEvent('click', { bubbles: true }); - await button.dispatchEvent(click); + button.dispatchEvent(click); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -27,7 +29,8 @@ export default test({ ` ); - await component.count.set(42); + component.count.set(42); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/store-auto-subscribe-implicit/_config.js b/packages/svelte/tests/runtime-legacy/samples/store-auto-subscribe-implicit/_config.js index 65403b047b..a6be345b6b 100644 --- a/packages/svelte/tests/runtime-legacy/samples/store-auto-subscribe-implicit/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/store-auto-subscribe-implicit/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; import { writable } from 'svelte/store'; @@ -10,13 +11,14 @@ export default test({ `, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const button = target.querySelector('button'); ok(button); const click = new window.MouseEvent('click', { bubbles: true }); - await button.dispatchEvent(click); + button.dispatchEvent(click); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -25,7 +27,8 @@ export default test({ ` ); - await component.count.set(42); + component.count.set(42); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/store-auto-subscribe/_config.js b/packages/svelte/tests/runtime-legacy/samples/store-auto-subscribe/_config.js index 65403b047b..a6be345b6b 100644 --- a/packages/svelte/tests/runtime-legacy/samples/store-auto-subscribe/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/store-auto-subscribe/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; import { writable } from 'svelte/store'; @@ -10,13 +11,14 @@ export default test({ `, - async test({ assert, component, target, window }) { + test({ assert, component, target, window }) { const button = target.querySelector('button'); ok(button); const click = new window.MouseEvent('click', { bubbles: true }); - await button.dispatchEvent(click); + button.dispatchEvent(click); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -25,7 +27,8 @@ export default test({ ` ); - await component.count.set(42); + component.count.set(42); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/store-each-binding-deep/_config.js b/packages/svelte/tests/runtime-legacy/samples/store-each-binding-deep/_config.js index 672932653c..1134b20d0c 100644 --- a/packages/svelte/tests/runtime-legacy/samples/store-each-binding-deep/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/store-each-binding-deep/_config.js @@ -1,13 +1,15 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ - async test({ assert, target, window }) { + test({ assert, target, window }) { const input = target.querySelector('input'); ok(input); const event = new window.Event('input'); input.value = 'changed'; - await input.dispatchEvent(event); + input.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/store-each-binding-destructuring/_config.js b/packages/svelte/tests/runtime-legacy/samples/store-each-binding-destructuring/_config.js index 672932653c..1134b20d0c 100644 --- a/packages/svelte/tests/runtime-legacy/samples/store-each-binding-destructuring/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/store-each-binding-destructuring/_config.js @@ -1,13 +1,15 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ - async test({ assert, target, window }) { + test({ assert, target, window }) { const input = target.querySelector('input'); ok(input); const event = new window.Event('input'); input.value = 'changed'; - await input.dispatchEvent(event); + input.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/store-each-binding/_config.js b/packages/svelte/tests/runtime-legacy/samples/store-each-binding/_config.js index 672932653c..1134b20d0c 100644 --- a/packages/svelte/tests/runtime-legacy/samples/store-each-binding/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/store-each-binding/_config.js @@ -1,13 +1,15 @@ +import { flushSync } from 'svelte'; import { ok, test } from '../../test'; export default test({ - async test({ assert, target, window }) { + test({ assert, target, window }) { const input = target.querySelector('input'); ok(input); const event = new window.Event('input'); input.value = 'changed'; - await input.dispatchEvent(event); + input.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/store-resubscribe/_config.js b/packages/svelte/tests/runtime-legacy/samples/store-resubscribe/_config.js index bd2d48a714..5c9229e7cf 100644 --- a/packages/svelte/tests/runtime-legacy/samples/store-resubscribe/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/store-resubscribe/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -7,11 +8,12 @@ export default test({ `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const buttons = target.querySelectorAll('button'); const click = new window.MouseEvent('click', { bubbles: true }); - await buttons[0].dispatchEvent(click); + buttons[0].dispatchEvent(click); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -22,7 +24,8 @@ export default test({ ` ); - await buttons[1].dispatchEvent(click); + buttons[1].dispatchEvent(click); + flushSync(); assert.htmlEqual( target.innerHTML, @@ -33,7 +36,8 @@ export default test({ ` ); - await buttons[0].dispatchEvent(click); + buttons[0].dispatchEvent(click); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/transition-js-events-in-out/_config.js b/packages/svelte/tests/runtime-legacy/samples/transition-js-events-in-out/_config.js index 785f51a4fa..5c4e6ea611 100644 --- a/packages/svelte/tests/runtime-legacy/samples/transition-js-events-in-out/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/transition-js-events-in-out/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -36,6 +37,8 @@ export default test({ await raf.tick(100); assert.equal(component.intro_count, 0); + flushSync(); + assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-legacy/samples/transition-js-if-outro-unrelated-component-binding-update/_config.js b/packages/svelte/tests/runtime-legacy/samples/transition-js-if-outro-unrelated-component-binding-update/_config.js index 63827a1962..ccab0ca834 100644 --- a/packages/svelte/tests/runtime-legacy/samples/transition-js-if-outro-unrelated-component-binding-update/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/transition-js-if-outro-unrelated-component-binding-update/_config.js @@ -1,10 +1,12 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ - async test({ assert, target, window, raf }) { + test({ assert, target, window, raf }) { const button = target.querySelector('button'); const event = new window.MouseEvent('click', { bubbles: true }); - await button?.dispatchEvent(event); + button?.dispatchEvent(event); + flushSync(); raf.tick(500); assert.htmlEqual(target.innerHTML, ''); } diff --git a/packages/svelte/tests/runtime-legacy/samples/window-binding-resize/_config.js b/packages/svelte/tests/runtime-legacy/samples/window-binding-resize/_config.js index 584fa02d45..62d24e7f1a 100644 --- a/packages/svelte/tests/runtime-legacy/samples/window-binding-resize/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/window-binding-resize/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -22,7 +23,7 @@ export default test({ mode: ['client', 'hydrate'], - async test({ assert, target, window }) { + test({ assert, target, window }) { const event = new window.Event('resize'); Object.defineProperties(window, { @@ -40,7 +41,8 @@ export default test({ } }); - await window.dispatchEvent(event); + window.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/window-binding-scroll-store/_config.js b/packages/svelte/tests/runtime-legacy/samples/window-binding-scroll-store/_config.js index 3a0f3ccd73..115c3cfd38 100644 --- a/packages/svelte/tests/runtime-legacy/samples/window-binding-scroll-store/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/window-binding-scroll-store/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; /** @type {Window['scrollTo']} */ @@ -21,7 +22,7 @@ export default test({ window.scrollTo = original_scrollTo; }, - async test({ assert, target, window }) { + test({ assert, target, window }) { assert.equal(window.scrollY, 0); const event = new window.Event('scroll'); @@ -32,7 +33,8 @@ export default test({ } }); - await window.dispatchEvent(event); + window.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-legacy/samples/window-event-context/_config.js b/packages/svelte/tests/runtime-legacy/samples/window-event-context/_config.js index 42b8359059..775ea17bbb 100644 --- a/packages/svelte/tests/runtime-legacy/samples/window-event-context/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/window-event-context/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -12,11 +13,13 @@ export default test({ async test({ assert, component, target, window }) { const event = new window.Event('click'); - await window.dispatchEvent(event); + window.dispatchEvent(event); + flushSync(); assert.equal(component.foo, false); assert.htmlEqual(target.innerHTML, 'false'); - await window.dispatchEvent(event); + window.dispatchEvent(event); + flushSync(); assert.equal(component.foo, true); assert.htmlEqual(target.innerHTML, 'true'); } diff --git a/packages/svelte/tests/runtime-legacy/samples/window-event/_config.js b/packages/svelte/tests/runtime-legacy/samples/window-event/_config.js index e77a1f48b9..ac072aced2 100644 --- a/packages/svelte/tests/runtime-legacy/samples/window-event/_config.js +++ b/packages/svelte/tests/runtime-legacy/samples/window-event/_config.js @@ -1,9 +1,10 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: '
    x
    ', - async test({ assert, target, window }) { + test({ assert, target, window }) { const event = new window.Event('resize'); Object.defineProperties(window, { @@ -17,8 +18,8 @@ export default test({ } }); - await window.dispatchEvent(event); - await Promise.resolve(); + window.dispatchEvent(event); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-runes/samples/ambiguous-source/_config.js b/packages/svelte/tests/runtime-runes/samples/ambiguous-source/_config.js index 2775015dff..9da297dcaf 100644 --- a/packages/svelte/tests/runtime-runes/samples/ambiguous-source/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/ambiguous-source/_config.js @@ -1,11 +1,13 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ``, - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); } }); diff --git a/packages/svelte/tests/runtime-runes/samples/attribute-spread-reactivitiy/_config.js b/packages/svelte/tests/runtime-runes/samples/attribute-spread-reactivitiy/_config.js index 9baec30b4f..77edb47731 100644 --- a/packages/svelte/tests/runtime-runes/samples/attribute-spread-reactivitiy/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/attribute-spread-reactivitiy/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -7,11 +8,11 @@ export default test({
    \nChecked:\nfalse`, - async test({ assert, target }) { + test({ assert, target }) { const input = target.querySelector('input'); - await input?.click(); + input?.click(); + flushSync(); + assert.htmlEqual(target.innerHTML, `
    \nChecked:\ntrue`); } }); diff --git a/packages/svelte/tests/runtime-runes/samples/bindings-form-reset/_config.js b/packages/svelte/tests/runtime-runes/samples/bindings-form-reset/_config.js index 069d183177..853f6a404a 100644 --- a/packages/svelte/tests/runtime-runes/samples/bindings-form-reset/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/bindings-form-reset/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -10,7 +11,8 @@ export default test({ ); await target.querySelector('button')?.click(); - await Promise.resolve(); + flushSync(); + assert.htmlEqual( p?.innerHTML || '', `{"text":"","checkbox":false,"radio_group":null,"checkbox_group":[],"select":"a","textarea":""}` diff --git a/packages/svelte/tests/runtime-runes/samples/class-frozen-state-object/_config.js b/packages/svelte/tests/runtime-runes/samples/class-frozen-state-object/_config.js index 79a0d13bdd..4b043a75e2 100644 --- a/packages/svelte/tests/runtime-runes/samples/class-frozen-state-object/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/class-frozen-state-object/_config.js @@ -1,15 +1,18 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ``, - async test({ assert, target, logs }) { + test({ assert, target, logs }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); assert.deepEqual(logs, ['read only', 'read only']); diff --git a/packages/svelte/tests/runtime-runes/samples/class-frozen-state/_config.js b/packages/svelte/tests/runtime-runes/samples/class-frozen-state/_config.js index 436ce99798..8a7fcc66a0 100644 --- a/packages/svelte/tests/runtime-runes/samples/class-frozen-state/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/class-frozen-state/_config.js @@ -1,15 +1,18 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ``, - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); } }); diff --git a/packages/svelte/tests/runtime-runes/samples/class-private-frozen-state-object/_config.js b/packages/svelte/tests/runtime-runes/samples/class-private-frozen-state-object/_config.js index 79a0d13bdd..4b043a75e2 100644 --- a/packages/svelte/tests/runtime-runes/samples/class-private-frozen-state-object/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/class-private-frozen-state-object/_config.js @@ -1,15 +1,18 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ``, - async test({ assert, target, logs }) { + test({ assert, target, logs }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); assert.deepEqual(logs, ['read only', 'read only']); diff --git a/packages/svelte/tests/runtime-runes/samples/class-private-frozen-state/_config.js b/packages/svelte/tests/runtime-runes/samples/class-private-frozen-state/_config.js index 436ce99798..8a7fcc66a0 100644 --- a/packages/svelte/tests/runtime-runes/samples/class-private-frozen-state/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/class-private-frozen-state/_config.js @@ -1,15 +1,18 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ``, - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); } }); diff --git a/packages/svelte/tests/runtime-runes/samples/class-private-state-increment/_config.js b/packages/svelte/tests/runtime-runes/samples/class-private-state-increment/_config.js index c7ea1a16db..9f7c3aec9b 100644 --- a/packages/svelte/tests/runtime-runes/samples/class-private-state-increment/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/class-private-state-increment/_config.js @@ -1,15 +1,18 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ``, - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); } }); diff --git a/packages/svelte/tests/runtime-runes/samples/class-private-state-init/_config.js b/packages/svelte/tests/runtime-runes/samples/class-private-state-init/_config.js index 436ce99798..8a7fcc66a0 100644 --- a/packages/svelte/tests/runtime-runes/samples/class-private-state-init/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/class-private-state-init/_config.js @@ -1,15 +1,18 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ``, - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); } }); diff --git a/packages/svelte/tests/runtime-runes/samples/class-private-state-proxy/_config.js b/packages/svelte/tests/runtime-runes/samples/class-private-state-proxy/_config.js index 436ce99798..8a7fcc66a0 100644 --- a/packages/svelte/tests/runtime-runes/samples/class-private-state-proxy/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/class-private-state-proxy/_config.js @@ -1,15 +1,18 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ``, - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); } }); diff --git a/packages/svelte/tests/runtime-runes/samples/class-private-state/_config.js b/packages/svelte/tests/runtime-runes/samples/class-private-state/_config.js index 436ce99798..8a7fcc66a0 100644 --- a/packages/svelte/tests/runtime-runes/samples/class-private-state/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/class-private-state/_config.js @@ -1,15 +1,18 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ``, - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); } }); diff --git a/packages/svelte/tests/runtime-runes/samples/class-state-deep-update/_config.js b/packages/svelte/tests/runtime-runes/samples/class-state-deep-update/_config.js index e9ef53f95f..27e0579bb2 100644 --- a/packages/svelte/tests/runtime-runes/samples/class-state-deep-update/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/class-state-deep-update/_config.js @@ -1,15 +1,20 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ``, - async test({ assert, target }) { + test({ assert, target }) { const [btn1, btn2] = target.querySelectorAll('button'); - await btn1?.click(); + btn1?.click(); + flushSync(); + assert.htmlEqual(target.innerHTML, ``); - await btn2?.click(); + btn2?.click(); + flushSync(); + assert.htmlEqual(target.innerHTML, ``); } }); diff --git a/packages/svelte/tests/runtime-runes/samples/class-state-derived-fn/_config.js b/packages/svelte/tests/runtime-runes/samples/class-state-derived-fn/_config.js index 54e9e296fc..141d994a2f 100644 --- a/packages/svelte/tests/runtime-runes/samples/class-state-derived-fn/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/class-state-derived-fn/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -6,10 +7,11 @@ export default test({

    doubled: 0

    `, - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual( target.innerHTML, ` @@ -18,7 +20,8 @@ export default test({ ` ); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-runes/samples/class-state-derived-private/_config.js b/packages/svelte/tests/runtime-runes/samples/class-state-derived-private/_config.js index 54e9e296fc..141d994a2f 100644 --- a/packages/svelte/tests/runtime-runes/samples/class-state-derived-private/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/class-state-derived-private/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -6,10 +7,11 @@ export default test({

    doubled: 0

    `, - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual( target.innerHTML, ` @@ -18,7 +20,8 @@ export default test({ ` ); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-runes/samples/class-state-derived/_config.js b/packages/svelte/tests/runtime-runes/samples/class-state-derived/_config.js index 54e9e296fc..141d994a2f 100644 --- a/packages/svelte/tests/runtime-runes/samples/class-state-derived/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/class-state-derived/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -6,10 +7,11 @@ export default test({

    doubled: 0

    `, - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual( target.innerHTML, ` @@ -18,7 +20,8 @@ export default test({ ` ); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-runes/samples/class-state-increment/_config.js b/packages/svelte/tests/runtime-runes/samples/class-state-increment/_config.js index c7ea1a16db..9f7c3aec9b 100644 --- a/packages/svelte/tests/runtime-runes/samples/class-state-increment/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/class-state-increment/_config.js @@ -1,15 +1,18 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ``, - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); } }); diff --git a/packages/svelte/tests/runtime-runes/samples/class-state-init-conflict/_config.js b/packages/svelte/tests/runtime-runes/samples/class-state-init-conflict/_config.js index 436ce99798..8a7fcc66a0 100644 --- a/packages/svelte/tests/runtime-runes/samples/class-state-init-conflict/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/class-state-init-conflict/_config.js @@ -1,15 +1,18 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ``, - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); } }); diff --git a/packages/svelte/tests/runtime-runes/samples/class-state-init-eager-2/_config.js b/packages/svelte/tests/runtime-runes/samples/class-state-init-eager-2/_config.js index 6d49c0436f..6dd1762e30 100644 --- a/packages/svelte/tests/runtime-runes/samples/class-state-init-eager-2/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/class-state-init-eager-2/_config.js @@ -1,15 +1,18 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ``, - async test({ assert, target, logs }) { + test({ assert, target, logs }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); assert.deepEqual(logs, [undefined]); diff --git a/packages/svelte/tests/runtime-runes/samples/class-state-init-eager-3/_config.js b/packages/svelte/tests/runtime-runes/samples/class-state-init-eager-3/_config.js index 6d49c0436f..6dd1762e30 100644 --- a/packages/svelte/tests/runtime-runes/samples/class-state-init-eager-3/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/class-state-init-eager-3/_config.js @@ -1,15 +1,18 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ``, - async test({ assert, target, logs }) { + test({ assert, target, logs }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); assert.deepEqual(logs, [undefined]); diff --git a/packages/svelte/tests/runtime-runes/samples/class-state-init-eager/_config.js b/packages/svelte/tests/runtime-runes/samples/class-state-init-eager/_config.js index 4da3fffc5e..cea45924a9 100644 --- a/packages/svelte/tests/runtime-runes/samples/class-state-init-eager/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/class-state-init-eager/_config.js @@ -1,15 +1,18 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ``, - async test({ assert, target, logs }) { + test({ assert, target, logs }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); assert.deepEqual(logs, [100]); diff --git a/packages/svelte/tests/runtime-runes/samples/class-state-init/_config.js b/packages/svelte/tests/runtime-runes/samples/class-state-init/_config.js index 436ce99798..8a7fcc66a0 100644 --- a/packages/svelte/tests/runtime-runes/samples/class-state-init/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/class-state-init/_config.js @@ -1,15 +1,18 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ``, - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); } }); diff --git a/packages/svelte/tests/runtime-runes/samples/class-state-proxy/_config.js b/packages/svelte/tests/runtime-runes/samples/class-state-proxy/_config.js index 436ce99798..8a7fcc66a0 100644 --- a/packages/svelte/tests/runtime-runes/samples/class-state-proxy/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/class-state-proxy/_config.js @@ -1,15 +1,18 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ``, - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); } }); diff --git a/packages/svelte/tests/runtime-runes/samples/class-state-public-private/_config.js b/packages/svelte/tests/runtime-runes/samples/class-state-public-private/_config.js index 7601ea5fd5..db67cb10f5 100644 --- a/packages/svelte/tests/runtime-runes/samples/class-state-public-private/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/class-state-public-private/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -9,7 +10,9 @@ export default test({ async test({ assert, target }) { const [btn1, btn2] = target.querySelectorAll('button'); - await btn1?.click(); + btn1?.click(); + flushSync(); + assert.htmlEqual( target.innerHTML, ` @@ -18,7 +21,9 @@ export default test({ ` ); - await btn2?.click(); + btn2?.click(); + flushSync(); + assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-runes/samples/class-state-with-literal/_config.js b/packages/svelte/tests/runtime-runes/samples/class-state-with-literal/_config.js index 5c9ce546c9..d2252ef0fd 100644 --- a/packages/svelte/tests/runtime-runes/samples/class-state-with-literal/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/class-state-with-literal/_config.js @@ -1,15 +1,18 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ``, - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); } }); diff --git a/packages/svelte/tests/runtime-runes/samples/class-state/_config.js b/packages/svelte/tests/runtime-runes/samples/class-state/_config.js index 436ce99798..8a7fcc66a0 100644 --- a/packages/svelte/tests/runtime-runes/samples/class-state/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/class-state/_config.js @@ -1,15 +1,18 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ``, - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); } }); diff --git a/packages/svelte/tests/runtime-runes/samples/component-let-directive/_config.js b/packages/svelte/tests/runtime-runes/samples/component-let-directive/_config.js index 386a3831b0..91c5fc418f 100644 --- a/packages/svelte/tests/runtime-runes/samples/component-let-directive/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/component-let-directive/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -6,9 +7,10 @@ export default test({

    named slot count is not state

    `, - test: async ({ assert, target }) => { + test: ({ assert, target }) => { const button = target.querySelector('button'); - await button?.click(); + button?.click(); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-runes/samples/derived-direct/_config.js b/packages/svelte/tests/runtime-runes/samples/derived-direct/_config.js index 09bd0a9aad..2ce8bf7e3f 100644 --- a/packages/svelte/tests/runtime-runes/samples/derived-direct/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/derived-direct/_config.js @@ -1,12 +1,14 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ``, - async test({ assert, target, window }) { + test({ assert, target, window }) { const btn = target.querySelector('button'); const clickEvent = new window.Event('click', { bubbles: true }); - await btn?.dispatchEvent(clickEvent); + btn?.dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual(target.innerHTML, ``); } diff --git a/packages/svelte/tests/runtime-runes/samples/derived-fn-destructure/_config.js b/packages/svelte/tests/runtime-runes/samples/derived-fn-destructure/_config.js index 71c7e40ed5..698fce15c4 100644 --- a/packages/svelte/tests/runtime-runes/samples/derived-fn-destructure/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/derived-fn-destructure/_config.js @@ -1,13 +1,15 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ mode: ['server'], html: ``, - async test({ assert, target, window, logs }) { + test({ assert, target, window, logs }) { const btn = target.querySelector('button'); const clickEvent = new window.Event('click', { bubbles: true }); - await btn?.dispatchEvent(clickEvent); + btn?.dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual(target.innerHTML, ``); assert.deepEqual(logs, ['create_derived']); diff --git a/packages/svelte/tests/runtime-runes/samples/derived-fn/_config.js b/packages/svelte/tests/runtime-runes/samples/derived-fn/_config.js index 09bd0a9aad..2ce8bf7e3f 100644 --- a/packages/svelte/tests/runtime-runes/samples/derived-fn/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/derived-fn/_config.js @@ -1,12 +1,14 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ``, - async test({ assert, target, window }) { + test({ assert, target, window }) { const btn = target.querySelector('button'); const clickEvent = new window.Event('click', { bubbles: true }); - await btn?.dispatchEvent(clickEvent); + btn?.dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual(target.innerHTML, ``); } diff --git a/packages/svelte/tests/runtime-runes/samples/derived-indirect-arrow-fn/_config.js b/packages/svelte/tests/runtime-runes/samples/derived-indirect-arrow-fn/_config.js index 09bd0a9aad..e896f69d44 100644 --- a/packages/svelte/tests/runtime-runes/samples/derived-indirect-arrow-fn/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/derived-indirect-arrow-fn/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -6,7 +7,8 @@ export default test({ async test({ assert, target, window }) { const btn = target.querySelector('button'); const clickEvent = new window.Event('click', { bubbles: true }); - await btn?.dispatchEvent(clickEvent); + btn?.dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual(target.innerHTML, ``); } diff --git a/packages/svelte/tests/runtime-runes/samples/derived-indirect-fn-2/_config.js b/packages/svelte/tests/runtime-runes/samples/derived-indirect-fn-2/_config.js index 09bd0a9aad..2ce8bf7e3f 100644 --- a/packages/svelte/tests/runtime-runes/samples/derived-indirect-fn-2/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/derived-indirect-fn-2/_config.js @@ -1,12 +1,14 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ``, - async test({ assert, target, window }) { + test({ assert, target, window }) { const btn = target.querySelector('button'); const clickEvent = new window.Event('click', { bubbles: true }); - await btn?.dispatchEvent(clickEvent); + btn?.dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual(target.innerHTML, ``); } diff --git a/packages/svelte/tests/runtime-runes/samples/derived-indirect-fn/_config.js b/packages/svelte/tests/runtime-runes/samples/derived-indirect-fn/_config.js index 09bd0a9aad..2ce8bf7e3f 100644 --- a/packages/svelte/tests/runtime-runes/samples/derived-indirect-fn/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/derived-indirect-fn/_config.js @@ -1,12 +1,14 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ``, - async test({ assert, target, window }) { + test({ assert, target, window }) { const btn = target.querySelector('button'); const clickEvent = new window.Event('click', { bubbles: true }); - await btn?.dispatchEvent(clickEvent); + btn?.dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual(target.innerHTML, ``); } diff --git a/packages/svelte/tests/runtime-runes/samples/derived-proxy/_config.js b/packages/svelte/tests/runtime-runes/samples/derived-proxy/_config.js index 32340d018a..219cea79ea 100644 --- a/packages/svelte/tests/runtime-runes/samples/derived-proxy/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/derived-proxy/_config.js @@ -1,15 +1,18 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ``, - async test({ assert, target }) { + test({ assert, target }) { const [btn1, btn2] = target.querySelectorAll('button'); - await btn1?.click(); + btn1?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); - await btn2?.click(); + btn2?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); } }); diff --git a/packages/svelte/tests/runtime-runes/samples/destructure-derived-event/_config.js b/packages/svelte/tests/runtime-runes/samples/destructure-derived-event/_config.js index 6ad462cddb..187cc4faba 100644 --- a/packages/svelte/tests/runtime-runes/samples/destructure-derived-event/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/destructure-derived-event/_config.js @@ -1,9 +1,11 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ - async test({ assert, target, logs }) { + test({ assert, target, logs }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.deepEqual(logs, ['works!']); } diff --git a/packages/svelte/tests/runtime-runes/samples/each-mutation/_config.js b/packages/svelte/tests/runtime-runes/samples/each-mutation/_config.js index 0dac8c623b..81920136d8 100644 --- a/packages/svelte/tests/runtime-runes/samples/each-mutation/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/each-mutation/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -7,18 +8,18 @@ export default test({ `, - async test({ assert, target }) { + test({ assert, target }) { const [btn1, btn2, btn3] = target.querySelectorAll('button'); // ensure each click runs in its own rerender task - await btn1.click(); - await Promise.resolve(); + btn1.click(); + flushSync(); - await btn2.click(); - await Promise.resolve(); + btn2.click(); + flushSync(); - await btn3.click(); - await Promise.resolve(); + btn3.click(); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-runes/samples/effect/_config.js b/packages/svelte/tests/runtime-runes/samples/effect/_config.js index 384356dc07..c836a2e593 100644 --- a/packages/svelte/tests/runtime-runes/samples/effect/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/effect/_config.js @@ -1,11 +1,12 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ - async test({ assert, target, logs }) { + test({ assert, target, logs }) { const [b1, b2] = target.querySelectorAll('button'); b1.click(); b2.click(); - await Promise.resolve(); + flushSync(); assert.deepEqual(logs, [0, 1]); } diff --git a/packages/svelte/tests/runtime-runes/samples/effects-order/_config.js b/packages/svelte/tests/runtime-runes/samples/effects-order/_config.js index e4ca2d72a6..42d82f4973 100644 --- a/packages/svelte/tests/runtime-runes/samples/effects-order/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/effects-order/_config.js @@ -1,11 +1,12 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ - async test({ assert, target, logs }) { + test({ assert, target, logs }) { const [b1, b2] = target.querySelectorAll('button'); b1.click(); b2.click(); - await Promise.resolve(); + flushSync(); assert.deepEqual(logs, ['first0', 'second0', 'first1', 'second1']); } diff --git a/packages/svelte/tests/runtime-runes/samples/event-arguments-2/_config.js b/packages/svelte/tests/runtime-runes/samples/event-arguments-2/_config.js index f2e6c67f8a..4af1ce0070 100644 --- a/packages/svelte/tests/runtime-runes/samples/event-arguments-2/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/event-arguments-2/_config.js @@ -1,13 +1,14 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ``, - async test({ assert, target }) { + test({ assert, target }) { const [b1] = target.querySelectorAll('button'); b1?.click(); - await Promise.resolve(); + flushSync(); assert.htmlEqual(target.innerHTML, ''); } }); diff --git a/packages/svelte/tests/runtime-runes/samples/event-arguments/_config.js b/packages/svelte/tests/runtime-runes/samples/event-arguments/_config.js index f2e6c67f8a..4af1ce0070 100644 --- a/packages/svelte/tests/runtime-runes/samples/event-arguments/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/event-arguments/_config.js @@ -1,13 +1,14 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ``, - async test({ assert, target }) { + test({ assert, target }) { const [b1] = target.querySelectorAll('button'); b1?.click(); - await Promise.resolve(); + flushSync(); assert.htmlEqual(target.innerHTML, ''); } }); diff --git a/packages/svelte/tests/runtime-runes/samples/event-attribute-after-binding/_config.js b/packages/svelte/tests/runtime-runes/samples/event-attribute-after-binding/_config.js index e5ec3698e5..b141e87c9d 100644 --- a/packages/svelte/tests/runtime-runes/samples/event-attribute-after-binding/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/event-attribute-after-binding/_config.js @@ -1,18 +1,21 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ - async test({ assert, target }) { + test({ assert, target }) { const [i1, i2] = target.querySelectorAll('input'); i1?.click(); - await Promise.resolve(); + flushSync(); + assert.htmlEqual( target.innerHTML, 'true true false false ' ); i2?.click(); - await Promise.resolve(); + flushSync(); + assert.htmlEqual( target.innerHTML, 'true true true true ' diff --git a/packages/svelte/tests/runtime-runes/samples/event-attribute-after-spread/_config.js b/packages/svelte/tests/runtime-runes/samples/event-attribute-after-spread/_config.js index 09975947e6..f520d92e8a 100644 --- a/packages/svelte/tests/runtime-runes/samples/event-attribute-after-spread/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/event-attribute-after-spread/_config.js @@ -1,12 +1,12 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ - async test({ assert, target }) { + test({ assert, target }) { const input = target.querySelector('input'); input?.dispatchEvent(new Event('input', { bubbles: true })); - - await Promise.resolve(); + flushSync(); assert.htmlEqual(target.innerHTML, 'true '); } diff --git a/packages/svelte/tests/runtime-runes/samples/event-attribute-capture/_config.js b/packages/svelte/tests/runtime-runes/samples/event-attribute-capture/_config.js index a0ab696532..4ce0c516ed 100644 --- a/packages/svelte/tests/runtime-runes/samples/event-attribute-capture/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/event-attribute-capture/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -8,11 +9,11 @@ export default test({ `, - async test({ assert, target }) { + test({ assert, target }) { const button = target.querySelector('button'); button?.click(); - await Promise.resolve(); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-runes/samples/event-attribute-spread-capture/_config.js b/packages/svelte/tests/runtime-runes/samples/event-attribute-spread-capture/_config.js index a0ab696532..4ce0c516ed 100644 --- a/packages/svelte/tests/runtime-runes/samples/event-attribute-spread-capture/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/event-attribute-spread-capture/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -8,11 +9,11 @@ export default test({ `, - async test({ assert, target }) { + test({ assert, target }) { const button = target.querySelector('button'); button?.click(); - await Promise.resolve(); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-runes/samples/event-attribute-window/_config.js b/packages/svelte/tests/runtime-runes/samples/event-attribute-window/_config.js index 1efebf69b7..970064516c 100644 --- a/packages/svelte/tests/runtime-runes/samples/event-attribute-window/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/event-attribute-window/_config.js @@ -1,11 +1,12 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: `

    0

    `, - async test({ assert, target }) { + test({ assert, target }) { target.click(); - await Promise.resolve(); + flushSync(); assert.htmlEqual(target.innerHTML, '

    1

    '); } }); diff --git a/packages/svelte/tests/runtime-runes/samples/event-exported/_config.js b/packages/svelte/tests/runtime-runes/samples/event-exported/_config.js index 6dd1f8181e..e8eedc2e96 100644 --- a/packages/svelte/tests/runtime-runes/samples/event-exported/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/event-exported/_config.js @@ -1,17 +1,18 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ mode: ['client'], - async test({ assert, target }) { + test({ assert, target }) { const [b1, b2] = target.querySelectorAll('button'); b1?.click(); - await Promise.resolve(); + flushSync(); assert.htmlEqual(target.innerHTML, ''); b2?.click(); - await Promise.resolve(); + flushSync(); assert.htmlEqual(target.innerHTML, ''); } }); diff --git a/packages/svelte/tests/runtime-runes/samples/event-listener-spread/_config.js b/packages/svelte/tests/runtime-runes/samples/event-listener-spread/_config.js index 43084e6809..26e442228b 100644 --- a/packages/svelte/tests/runtime-runes/samples/event-listener-spread/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/event-listener-spread/_config.js @@ -1,13 +1,14 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ``, - async test({ assert, target }) { + test({ assert, target }) { const button = target.querySelector('button'); button?.click(); - await Promise.resolve(); + flushSync(); assert.htmlEqual(target.innerHTML, ''); } }); diff --git a/packages/svelte/tests/runtime-runes/samples/event-used-in-component-and-element/_config.js b/packages/svelte/tests/runtime-runes/samples/event-used-in-component-and-element/_config.js index 6dd1f8181e..e8eedc2e96 100644 --- a/packages/svelte/tests/runtime-runes/samples/event-used-in-component-and-element/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/event-used-in-component-and-element/_config.js @@ -1,17 +1,18 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ mode: ['client'], - async test({ assert, target }) { + test({ assert, target }) { const [b1, b2] = target.querySelectorAll('button'); b1?.click(); - await Promise.resolve(); + flushSync(); assert.htmlEqual(target.innerHTML, ''); b2?.click(); - await Promise.resolve(); + flushSync(); assert.htmlEqual(target.innerHTML, ''); } }); diff --git a/packages/svelte/tests/runtime-runes/samples/exports-1/_config.js b/packages/svelte/tests/runtime-runes/samples/exports-1/_config.js index 0e447e7055..96323bd0c6 100644 --- a/packages/svelte/tests/runtime-runes/samples/exports-1/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/exports-1/_config.js @@ -1,7 +1,8 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ - async test({ assert, target, component }) { + test({ assert, target, component }) { assert.htmlEqual( target.innerHTML, '

    clicks: 0

    ' @@ -9,21 +10,21 @@ export default test({ const [incrementButton, decrementButton, doubleButton] = target.querySelectorAll('button'); incrementButton?.click(); - await Promise.resolve(); + flushSync(); assert.htmlEqual( target.innerHTML, '

    clicks: 1

    ' ); doubleButton?.click(); - await Promise.resolve(); + flushSync(); assert.htmlEqual( target.innerHTML, '

    clicks: 2

    ' ); decrementButton?.click(); - await Promise.resolve(); + flushSync(); assert.htmlEqual( target.innerHTML, '

    clicks: 1

    ' diff --git a/packages/svelte/tests/runtime-runes/samples/exports-2/_config.js b/packages/svelte/tests/runtime-runes/samples/exports-2/_config.js index 0e447e7055..96323bd0c6 100644 --- a/packages/svelte/tests/runtime-runes/samples/exports-2/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/exports-2/_config.js @@ -1,7 +1,8 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ - async test({ assert, target, component }) { + test({ assert, target, component }) { assert.htmlEqual( target.innerHTML, '

    clicks: 0

    ' @@ -9,21 +10,21 @@ export default test({ const [incrementButton, decrementButton, doubleButton] = target.querySelectorAll('button'); incrementButton?.click(); - await Promise.resolve(); + flushSync(); assert.htmlEqual( target.innerHTML, '

    clicks: 1

    ' ); doubleButton?.click(); - await Promise.resolve(); + flushSync(); assert.htmlEqual( target.innerHTML, '

    clicks: 2

    ' ); decrementButton?.click(); - await Promise.resolve(); + flushSync(); assert.htmlEqual( target.innerHTML, '

    clicks: 1

    ' diff --git a/packages/svelte/tests/runtime-runes/samples/exports-3/_config.js b/packages/svelte/tests/runtime-runes/samples/exports-3/_config.js index 6eb043db3d..cf22671d9f 100644 --- a/packages/svelte/tests/runtime-runes/samples/exports-3/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/exports-3/_config.js @@ -1,12 +1,13 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ - async test({ assert, target }) { + test({ assert, target }) { assert.htmlEqual(target.innerHTML, `0 0 `); const [btn] = target.querySelectorAll('button'); btn?.click(); - await Promise.resolve(); + flushSync(); assert.htmlEqual(target.innerHTML, '1 2 '); } }); diff --git a/packages/svelte/tests/runtime-runes/samples/inspect-derived/_config.js b/packages/svelte/tests/runtime-runes/samples/inspect-derived/_config.js index a8c47665b5..f115c15dfe 100644 --- a/packages/svelte/tests/runtime-runes/samples/inspect-derived/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/inspect-derived/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; /** @@ -17,14 +18,14 @@ export default test({ }; }, - async test({ assert, target }) { + test({ assert, target }) { const button = target.querySelector('button'); button?.click(); - await Promise.resolve(); + flushSync(); button?.click(); - await Promise.resolve(); + flushSync(); assert.deepEqual(log, ['init', 'X', 'update', 'XX', 'update', 'XXX']); } diff --git a/packages/svelte/tests/runtime-runes/samples/invalidate-effect/_config.js b/packages/svelte/tests/runtime-runes/samples/invalidate-effect/_config.js index b4ba660ad4..1562c8f88c 100644 --- a/packages/svelte/tests/runtime-runes/samples/invalidate-effect/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/invalidate-effect/_config.js @@ -1,12 +1,13 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ - async test({ assert, target }) { + test({ assert, target }) { assert.htmlEqual(target.innerHTML, 'a\n `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const [multiplier, count] = target.querySelectorAll('button'); const clickEvent = new window.Event('click', { bubbles: true }); const span = /** @type {HTMLSpanElement} */ (target.querySelector('span')); @@ -19,16 +20,20 @@ export default test({ const expect_span_to_be = (count, multiplier) => assert.htmlEqual(span.innerHTML, `${count} * ${multiplier} = ${count * multiplier}`); - await count.dispatchEvent(clickEvent); + count.dispatchEvent(clickEvent); + flushSync(); expect_span_to_be(1, 2); - await multiplier.dispatchEvent(clickEvent); + multiplier.dispatchEvent(clickEvent); + flushSync(); expect_span_to_be(1, 3); - await count.dispatchEvent(clickEvent); + count.dispatchEvent(clickEvent); + flushSync(); expect_span_to_be(2, 3); - await multiplier.dispatchEvent(clickEvent); + multiplier.dispatchEvent(clickEvent); + flushSync(); expect_span_to_be(2, 4); } }); diff --git a/packages/svelte/tests/runtime-runes/samples/mutation/_config.js b/packages/svelte/tests/runtime-runes/samples/mutation/_config.js index af8ead3929..9c666942f0 100644 --- a/packages/svelte/tests/runtime-runes/samples/mutation/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/mutation/_config.js @@ -1,16 +1,19 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ``, - async test({ assert, target, window }) { + test({ assert, target, window }) { const btn = target.querySelector('button'); const clickEvent = new window.Event('click', { bubbles: true }); - await btn?.dispatchEvent(clickEvent); + btn?.dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual(target.innerHTML, ``); - await btn?.dispatchEvent(clickEvent); + btn?.dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual(target.innerHTML, ``); } }); diff --git a/packages/svelte/tests/runtime-runes/samples/nested-destructure-assignment/_config.js b/packages/svelte/tests/runtime-runes/samples/nested-destructure-assignment/_config.js index 905e8b5d29..497939900e 100644 --- a/packages/svelte/tests/runtime-runes/samples/nested-destructure-assignment/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/nested-destructure-assignment/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -14,10 +15,11 @@ export default test({

    16

    `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const button = target.querySelector('button'); const clickEvent = new window.Event('click', { bubbles: true }); - await button?.dispatchEvent(clickEvent); + button?.dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-runes/samples/not-actual-runes/_config.js b/packages/svelte/tests/runtime-runes/samples/not-actual-runes/_config.js index 8d4d781076..83cd12f640 100644 --- a/packages/svelte/tests/runtime-runes/samples/not-actual-runes/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/not-actual-runes/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -6,9 +7,10 @@ export default test({ `, - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-runes/samples/pre-effect/_config.js b/packages/svelte/tests/runtime-runes/samples/pre-effect/_config.js index 384356dc07..c836a2e593 100644 --- a/packages/svelte/tests/runtime-runes/samples/pre-effect/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/pre-effect/_config.js @@ -1,11 +1,12 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ - async test({ assert, target, logs }) { + test({ assert, target, logs }) { const [b1, b2] = target.querySelectorAll('button'); b1.click(); b2.click(); - await Promise.resolve(); + flushSync(); assert.deepEqual(logs, [0, 1]); } diff --git a/packages/svelte/tests/runtime-runes/samples/props-alias/_config.js b/packages/svelte/tests/runtime-runes/samples/props-alias/_config.js index 0fc80f0df5..a0ab706edc 100644 --- a/packages/svelte/tests/runtime-runes/samples/props-alias/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/props-alias/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -9,14 +10,14 @@ export default test({ `, - async test({ assert, target, component }) { + test({ assert, target, component }) { const [b1, b2, b3, b4] = target.querySelectorAll('button'); b1.click(); b2.click(); b3.click(); b4.click(); - await Promise.resolve(); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-runes/samples/props-bound-fallback/_config.js b/packages/svelte/tests/runtime-runes/samples/props-bound-fallback/_config.js index 3839cb0250..d04d8884ca 100644 --- a/packages/svelte/tests/runtime-runes/samples/props-bound-fallback/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/props-bound-fallback/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; // Tests that fallback value is propagated up correctly when the inner component @@ -6,10 +7,11 @@ export default test({ accessors: false, // so that prop actually becomes $.prop and not $.prop_source html: `0`, - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, `1`); }, diff --git a/packages/svelte/tests/runtime-runes/samples/props-bound-to-normal/_config.js b/packages/svelte/tests/runtime-runes/samples/props-bound-to-normal/_config.js index aaf8f3b193..39eadeac90 100644 --- a/packages/svelte/tests/runtime-runes/samples/props-bound-to-normal/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/props-bound-to-normal/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -6,16 +7,19 @@ export default test({ async test({ assert, target }) { const [btn1, btn2, btn3] = target.querySelectorAll('button'); - await btn1.click(); - await Promise.resolve(); + btn1.click(); + flushSync(); + assert.htmlEqual(target.innerHTML, ``); - await btn3.click(); - await Promise.resolve(); + btn3.click(); + flushSync(); + assert.htmlEqual(target.innerHTML, ``); - await btn2.click(); - await Promise.resolve(); + btn2.click(); + flushSync(); + assert.htmlEqual(target.innerHTML, ``); } }); diff --git a/packages/svelte/tests/runtime-runes/samples/props-bound/_config.js b/packages/svelte/tests/runtime-runes/samples/props-bound/_config.js index 0fc80f0df5..a0ab706edc 100644 --- a/packages/svelte/tests/runtime-runes/samples/props-bound/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/props-bound/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -9,14 +10,14 @@ export default test({ `, - async test({ assert, target, component }) { + test({ assert, target, component }) { const [b1, b2, b3, b4] = target.querySelectorAll('button'); b1.click(); b2.click(); b3.click(); b4.click(); - await Promise.resolve(); + flushSync(); assert.htmlEqual( target.innerHTML, diff --git a/packages/svelte/tests/runtime-runes/samples/props-default-value-behavior/_config.js b/packages/svelte/tests/runtime-runes/samples/props-default-value-behavior/_config.js index 47f48b5c20..0b337d7bcb 100644 --- a/packages/svelte/tests/runtime-runes/samples/props-default-value-behavior/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/props-default-value-behavior/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; // Tests that default values apply every time and that they propagate back correctly for bindings @@ -59,7 +60,7 @@ export default test({ `, - async test({ assert, target }) { + test({ assert, target }) { const [ btn_5_1, btn_undefined_1, @@ -77,7 +78,8 @@ export default test({ btn_undefined_2.click(); btn_undefined_3.click(); btn_undefined_4.click(); - await Promise.resolve(); + flushSync(); + assert.htmlEqual( target.innerHTML, ` @@ -140,7 +142,8 @@ export default test({ btn_5_2.click(); btn_5_3.click(); btn_5_4.click(); - await Promise.resolve(); + flushSync(); + assert.htmlEqual( target.innerHTML, ` @@ -199,8 +202,9 @@ export default test({ ` ); - await btn_all_10.click(); - await Promise.resolve(); + btn_all_10.click(); + flushSync(); + assert.htmlEqual( target.innerHTML, ` @@ -259,8 +263,9 @@ export default test({ ` ); - await btn_all_undefined.click(); - await Promise.resolve(); + btn_all_undefined.click(); + flushSync(); + assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-runes/samples/props-spread-fallback/_config.js b/packages/svelte/tests/runtime-runes/samples/props-spread-fallback/_config.js index 40ad73aa87..2fc8dd0fb9 100644 --- a/packages/svelte/tests/runtime-runes/samples/props-spread-fallback/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/props-spread-fallback/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; // Tests that fallback values are kept as long as the prop is not defined in the case of a spread @@ -9,10 +10,11 @@ export default test({

    true fallback

    `, - async test({ assert, target }) { + test({ assert, target }) { const [propA, propB] = target.querySelectorAll('button'); - await propA.click(); + propA.click(); + flushSync(); assert.htmlEqual( target.innerHTML, ` @@ -22,7 +24,8 @@ export default test({ ` ); - await propB.click(); + propB.click(); + flushSync(); assert.htmlEqual( target.innerHTML, ` @@ -32,7 +35,8 @@ export default test({ ` ); - await propA.click(); + propA.click(); + flushSync(); assert.htmlEqual( target.innerHTML, ` @@ -42,7 +46,8 @@ export default test({ ` ); - await propB.click(); + propB.click(); + flushSync(); assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-runes/samples/readonly-state-replace/_config.js b/packages/svelte/tests/runtime-runes/samples/readonly-state-replace/_config.js index 41d9e4061a..38163eb526 100644 --- a/packages/svelte/tests/runtime-runes/samples/readonly-state-replace/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/readonly-state-replace/_config.js @@ -1,10 +1,11 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ - async test({ assert, target }) { + test({ assert, target }) { const [b1] = target.querySelectorAll('button'); b1.click(); - await Promise.resolve(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); } diff --git a/packages/svelte/tests/runtime-runes/samples/readonly-state/_config.js b/packages/svelte/tests/runtime-runes/samples/readonly-state/_config.js index 384356dc07..c836a2e593 100644 --- a/packages/svelte/tests/runtime-runes/samples/readonly-state/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/readonly-state/_config.js @@ -1,11 +1,12 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ - async test({ assert, target, logs }) { + test({ assert, target, logs }) { const [b1, b2] = target.querySelectorAll('button'); b1.click(); b2.click(); - await Promise.resolve(); + flushSync(); assert.deepEqual(logs, [0, 1]); } diff --git a/packages/svelte/tests/runtime-runes/samples/runes-in-module-context/_config.js b/packages/svelte/tests/runtime-runes/samples/runes-in-module-context/_config.js index 09bd0a9aad..2ce8bf7e3f 100644 --- a/packages/svelte/tests/runtime-runes/samples/runes-in-module-context/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/runes-in-module-context/_config.js @@ -1,12 +1,14 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ``, - async test({ assert, target, window }) { + test({ assert, target, window }) { const btn = target.querySelector('button'); const clickEvent = new window.Event('click', { bubbles: true }); - await btn?.dispatchEvent(clickEvent); + btn?.dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual(target.innerHTML, ``); } diff --git a/packages/svelte/tests/runtime-runes/samples/snippet-argument-destructured-multiple/_config.js b/packages/svelte/tests/runtime-runes/samples/snippet-argument-destructured-multiple/_config.js index e756ff5cc2..ccd32ffe8c 100644 --- a/packages/svelte/tests/runtime-runes/samples/snippet-argument-destructured-multiple/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/snippet-argument-destructured-multiple/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -6,10 +7,11 @@ export default test({ `, - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-runes/samples/snippet-argument-destructured/_config.js b/packages/svelte/tests/runtime-runes/samples/snippet-argument-destructured/_config.js index b7b3133c30..5638cb79ca 100644 --- a/packages/svelte/tests/runtime-runes/samples/snippet-argument-destructured/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/snippet-argument-destructured/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -6,10 +7,11 @@ export default test({ `, - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-runes/samples/snippet-argument-multiple/_config.js b/packages/svelte/tests/runtime-runes/samples/snippet-argument-multiple/_config.js index e756ff5cc2..ccd32ffe8c 100644 --- a/packages/svelte/tests/runtime-runes/samples/snippet-argument-multiple/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/snippet-argument-multiple/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -6,10 +7,11 @@ export default test({ `, - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-runes/samples/snippet-argument/_config.js b/packages/svelte/tests/runtime-runes/samples/snippet-argument/_config.js index b7b3133c30..5638cb79ca 100644 --- a/packages/svelte/tests/runtime-runes/samples/snippet-argument/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/snippet-argument/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -6,10 +7,11 @@ export default test({ `, - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-runes/samples/snippet-complicated-defaults/_config.js b/packages/svelte/tests/runtime-runes/samples/snippet-complicated-defaults/_config.js index 4a403b3281..9b21023bf0 100644 --- a/packages/svelte/tests/runtime-runes/samples/snippet-complicated-defaults/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/snippet-complicated-defaults/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -14,17 +15,22 @@ export default test({ assert.htmlEqual(count?.innerHTML ?? '', 'Count: 0'); assert.htmlEqual(fallback_count?.innerHTML ?? '', 'Fallback count: 0'); - await increment?.click(); + increment?.click(); + flushSync(); assert.htmlEqual(count?.innerHTML ?? '', 'Count: 1'); assert.htmlEqual(fallback_count?.innerHTML ?? '', 'Fallback count: 0'); - await change_ref?.click(); - await increment?.click(); + change_ref?.click(); + flushSync(); + increment?.click(); + flushSync(); assert.htmlEqual(count?.innerHTML ?? '', 'Count: 1'); assert.htmlEqual(fallback_count?.innerHTML ?? '', 'Fallback count: 1'); - await change_ref?.click(); - await increment?.click(); + change_ref?.click(); + flushSync(); + increment?.click(); + flushSync(); assert.htmlEqual(count?.innerHTML ?? '', 'Count: 2'); assert.htmlEqual(fallback_count?.innerHTML ?? '', 'Fallback count: 1'); } diff --git a/packages/svelte/tests/runtime-runes/samples/snippet-const/_config.js b/packages/svelte/tests/runtime-runes/samples/snippet-const/_config.js index 8867993dbb..d0c32d4097 100644 --- a/packages/svelte/tests/runtime-runes/samples/snippet-const/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/snippet-const/_config.js @@ -1,16 +1,19 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ``, - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); assert.htmlEqual(target.innerHTML, ''); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ''); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ''); } }); diff --git a/packages/svelte/tests/runtime-runes/samples/snippet-expressions/_config.js b/packages/svelte/tests/runtime-runes/samples/snippet-expressions/_config.js index 99568fe493..e411862c8f 100644 --- a/packages/svelte/tests/runtime-runes/samples/snippet-expressions/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/snippet-expressions/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -20,9 +21,10 @@ export default test({ `, - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-runes/samples/snippet-optional-arguments/_config.js b/packages/svelte/tests/runtime-runes/samples/snippet-optional-arguments/_config.js index 203cb1c432..6007d56cfe 100644 --- a/packages/svelte/tests/runtime-runes/samples/snippet-optional-arguments/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/snippet-optional-arguments/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -8,7 +9,8 @@ export default test({ assert.htmlEqual(count?.innerHTML ?? '', '0'); assert.htmlEqual(fallback?.innerHTML ?? '', 'fallback'); - await count?.click(); + count?.click(); + flushSync(); assert.htmlEqual(count?.innerHTML ?? '', '1'); assert.htmlEqual(fallback?.innerHTML ?? '', 'fallback'); } diff --git a/packages/svelte/tests/runtime-runes/samples/snippet-prop-explicit/_config.js b/packages/svelte/tests/runtime-runes/samples/snippet-prop-explicit/_config.js index b7b3133c30..5638cb79ca 100644 --- a/packages/svelte/tests/runtime-runes/samples/snippet-prop-explicit/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/snippet-prop-explicit/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -6,10 +7,11 @@ export default test({ `, - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-runes/samples/snippet-prop-implicit/_config.js b/packages/svelte/tests/runtime-runes/samples/snippet-prop-implicit/_config.js index b7b3133c30..5638cb79ca 100644 --- a/packages/svelte/tests/runtime-runes/samples/snippet-prop-implicit/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/snippet-prop-implicit/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -6,10 +7,11 @@ export default test({ `, - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-runes/samples/snippet-prop-reactive/_config.js b/packages/svelte/tests/runtime-runes/samples/snippet-prop-reactive/_config.js index 89d4713cc0..fb5ee6b14b 100644 --- a/packages/svelte/tests/runtime-runes/samples/snippet-prop-reactive/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/snippet-prop-reactive/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -6,9 +7,10 @@ export default test({ `, - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-runes/samples/snippet-reactive/_config.js b/packages/svelte/tests/runtime-runes/samples/snippet-reactive/_config.js index 89d4713cc0..fb5ee6b14b 100644 --- a/packages/svelte/tests/runtime-runes/samples/snippet-reactive/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/snippet-reactive/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -6,9 +7,10 @@ export default test({ `, - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-runes/samples/state-snapshot/_config.js b/packages/svelte/tests/runtime-runes/samples/state-snapshot/_config.js index 1088a5189c..bcbb4819df 100644 --- a/packages/svelte/tests/runtime-runes/samples/state-snapshot/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/state-snapshot/_config.js @@ -1,12 +1,14 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: `[{"a":0}] `, - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, `[{"a":0}] `); } }); diff --git a/packages/svelte/tests/runtime-runes/samples/state-space/_config.js b/packages/svelte/tests/runtime-runes/samples/state-space/_config.js index 2f7c0d88ac..2850ae43ef 100644 --- a/packages/svelte/tests/runtime-runes/samples/state-space/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/state-space/_config.js @@ -1,12 +1,14 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: `
    `, - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual( target.innerHTML, `
    updated
    ` diff --git a/packages/svelte/tests/runtime-runes/samples/state-undefined/_config.js b/packages/svelte/tests/runtime-runes/samples/state-undefined/_config.js index e012718f83..624096fae9 100644 --- a/packages/svelte/tests/runtime-runes/samples/state-undefined/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/state-undefined/_config.js @@ -1,12 +1,15 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ``, - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); + assert.htmlEqual(target.innerHTML, ``); } }); diff --git a/packages/svelte/tests/runtime-runes/samples/store-subscribe-effect-init/_config.js b/packages/svelte/tests/runtime-runes/samples/store-subscribe-effect-init/_config.js index 5672e0806d..4983b8dba9 100644 --- a/packages/svelte/tests/runtime-runes/samples/store-subscribe-effect-init/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/store-subscribe-effect-init/_config.js @@ -1,17 +1,20 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: ``, - async test({ assert, target, logs }) { + test({ assert, target, logs }) { const btn = target.querySelector('button'); assert.deepEqual(logs, [1]); - await btn?.click(); + btn?.click(); + flushSync(); assert.deepEqual(logs, [1, 2]); - await btn?.click(); + btn?.click(); + flushSync(); assert.deepEqual(logs, [1, 2, 3]); } }); diff --git a/packages/svelte/tests/runtime-runes/samples/typescript/_config.js b/packages/svelte/tests/runtime-runes/samples/typescript/_config.js index 2115ae298a..7c9552b7b2 100644 --- a/packages/svelte/tests/runtime-runes/samples/typescript/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/typescript/_config.js @@ -1,11 +1,13 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ html: '', - async test({ assert, target }) { + test({ assert, target }) { const btn = target.querySelector('button'); - await btn?.click(); + btn?.click(); + flushSync(); assert.htmlEqual(target.innerHTML, ``); } }); diff --git a/packages/svelte/tests/runtime-runes/samples/untracked/_config.js b/packages/svelte/tests/runtime-runes/samples/untracked/_config.js index c3a3f87c5c..f4cde486ec 100644 --- a/packages/svelte/tests/runtime-runes/samples/untracked/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/untracked/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -6,12 +7,13 @@ export default test({ `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const [b1, b2] = target.querySelectorAll('button'); b1.click(); b2.click(); - await Promise.resolve(); + flushSync(); + assert.htmlEqual( target.innerHTML, ` @@ -21,7 +23,8 @@ export default test({ ); b1.click(); - await Promise.resolve(); + flushSync(); + assert.htmlEqual( target.innerHTML, ` @@ -31,7 +34,8 @@ export default test({ ); b2.click(); - await Promise.resolve(); + flushSync(); + assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-runes/samples/wrapped-$state-2/_config.js b/packages/svelte/tests/runtime-runes/samples/wrapped-$state-2/_config.js index 0f64191847..95668cc0b5 100644 --- a/packages/svelte/tests/runtime-runes/samples/wrapped-$state-2/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/wrapped-$state-2/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -5,9 +6,10 @@ export default test({ `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const clickEvent = new window.Event('click', { bubbles: true }); - await target.querySelector('button')?.dispatchEvent(clickEvent); + target.querySelector('button')?.dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual( target.innerHTML, ` diff --git a/packages/svelte/tests/runtime-runes/samples/wrapped-$state/_config.js b/packages/svelte/tests/runtime-runes/samples/wrapped-$state/_config.js index 5c2bf9e6b4..7238fedca7 100644 --- a/packages/svelte/tests/runtime-runes/samples/wrapped-$state/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/wrapped-$state/_config.js @@ -1,3 +1,4 @@ +import { flushSync } from 'svelte'; import { test } from '../../test'; export default test({ @@ -6,10 +7,11 @@ export default test({

    x

    `, - async test({ assert, target, window }) { + test({ assert, target, window }) { const clickEvent = new window.Event('click', { bubbles: true }); - await target.querySelector('button')?.dispatchEvent(clickEvent); + target.querySelector('button')?.dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual( target.innerHTML, ` @@ -20,7 +22,8 @@ export default test({ ` ); - await target.querySelectorAll('button')[1].dispatchEvent(clickEvent); + target.querySelectorAll('button')[1].dispatchEvent(clickEvent); + flushSync(); assert.htmlEqual( target.innerHTML, `