mirror of https://github.com/sveltejs/svelte
chore: tidy up tests to use flushSync (#11703)
parent
e45d1c37b6
commit
e6f8e95199
@ -1,8 +1,12 @@
|
|||||||
|
import { flushSync } from 'svelte';
|
||||||
import { test } from '../../test';
|
import { test } from '../../test';
|
||||||
|
|
||||||
export default test({
|
export default test({
|
||||||
async test({ assert, target }) {
|
test({ assert, target }) {
|
||||||
await target.querySelector('button')?.click();
|
flushSync(() => {
|
||||||
|
target.querySelector('button')?.click();
|
||||||
|
});
|
||||||
|
|
||||||
assert.htmlEqual(target.innerHTML, `<button>0</button>`);
|
assert.htmlEqual(target.innerHTML, `<button>0</button>`);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -1,10 +1,14 @@
|
|||||||
|
import { flushSync } from 'svelte';
|
||||||
import { test } from '../../test';
|
import { test } from '../../test';
|
||||||
|
|
||||||
export default test({
|
export default test({
|
||||||
async test({ assert, target }) {
|
async test({ assert, target }) {
|
||||||
assert.equal(target.querySelector('path')?.namespaceURI, 'http://www.w3.org/2000/svg');
|
assert.equal(target.querySelector('path')?.namespaceURI, 'http://www.w3.org/2000/svg');
|
||||||
|
|
||||||
await target.querySelector('button')?.click();
|
flushSync(() => {
|
||||||
|
target.querySelector('button')?.click();
|
||||||
|
});
|
||||||
|
|
||||||
assert.equal(target.querySelector('div')?.namespaceURI, 'http://www.w3.org/1999/xhtml');
|
assert.equal(target.querySelector('div')?.namespaceURI, 'http://www.w3.org/1999/xhtml');
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -1,25 +1,34 @@
|
|||||||
|
import { flushSync } from 'svelte';
|
||||||
import { test } from '../../test';
|
import { test } from '../../test';
|
||||||
|
|
||||||
export default test({
|
export default test({
|
||||||
html: `<button>0</button><button>x0</button><button>y0</button>`,
|
html: `<button>0</button><button>x0</button><button>y0</button>`,
|
||||||
|
|
||||||
async test({ assert, target }) {
|
test({ assert, target }) {
|
||||||
const [btn1, btn2, btn3] = target.querySelectorAll('button');
|
const [btn1, btn2, btn3] = target.querySelectorAll('button');
|
||||||
|
|
||||||
btn1.click();
|
flushSync(() => {
|
||||||
await Promise.resolve();
|
btn1.click();
|
||||||
|
});
|
||||||
|
|
||||||
assert.htmlEqual(target.innerHTML, '<button>1</button><button>x0</button><button>y0</button>');
|
assert.htmlEqual(target.innerHTML, '<button>1</button><button>x0</button><button>y0</button>');
|
||||||
|
|
||||||
btn1.dispatchEvent(new MouseEvent('mouseenter'));
|
flushSync(() => {
|
||||||
await Promise.resolve();
|
btn1.dispatchEvent(new MouseEvent('mouseenter'));
|
||||||
|
});
|
||||||
|
|
||||||
assert.htmlEqual(target.innerHTML, '<button>2</button><button>x0</button><button>y0</button>');
|
assert.htmlEqual(target.innerHTML, '<button>2</button><button>x0</button><button>y0</button>');
|
||||||
|
|
||||||
btn2.click();
|
flushSync(() => {
|
||||||
await Promise.resolve();
|
btn2.click();
|
||||||
|
});
|
||||||
|
|
||||||
assert.htmlEqual(target.innerHTML, '<button>2</button><button>x1</button><button>y0</button>');
|
assert.htmlEqual(target.innerHTML, '<button>2</button><button>x1</button><button>y0</button>');
|
||||||
|
|
||||||
btn3.click();
|
flushSync(() => {
|
||||||
await Promise.resolve();
|
btn3.click();
|
||||||
|
});
|
||||||
|
|
||||||
assert.htmlEqual(target.innerHTML, '<button>2</button><button>x1</button><button>y1</button>');
|
assert.htmlEqual(target.innerHTML, '<button>2</button><button>x1</button><button>y1</button>');
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -1,19 +1,26 @@
|
|||||||
|
import { flushSync } from 'svelte';
|
||||||
import { test } from '../../test';
|
import { test } from '../../test';
|
||||||
|
|
||||||
export default test({
|
export default test({
|
||||||
html: `<button>0</button><button>change handler</button>`,
|
html: `<button>0</button><button>change handler</button>`,
|
||||||
|
|
||||||
async test({ assert, target }) {
|
test({ assert, target }) {
|
||||||
const [b1, b2] = target.querySelectorAll('button');
|
const [b1, b2] = target.querySelectorAll('button');
|
||||||
|
|
||||||
b1?.click();
|
flushSync(() => {
|
||||||
await Promise.resolve();
|
b1?.click();
|
||||||
|
});
|
||||||
|
|
||||||
assert.htmlEqual(target.innerHTML, '<button>1</button><button>change handler</button>');
|
assert.htmlEqual(target.innerHTML, '<button>1</button><button>change handler</button>');
|
||||||
|
|
||||||
b2?.click();
|
flushSync(() => {
|
||||||
await Promise.resolve();
|
b2?.click();
|
||||||
b1?.click();
|
});
|
||||||
await Promise.resolve();
|
|
||||||
|
flushSync(() => {
|
||||||
|
b1?.click();
|
||||||
|
});
|
||||||
|
|
||||||
assert.htmlEqual(target.innerHTML, '<button>0</button><button>change handler</button>');
|
assert.htmlEqual(target.innerHTML, '<button>0</button><button>change handler</button>');
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -1,17 +1,22 @@
|
|||||||
|
import { flushSync } from 'svelte';
|
||||||
import { test } from '../../test';
|
import { test } from '../../test';
|
||||||
|
|
||||||
export default test({
|
export default test({
|
||||||
html: `<button>0</button><button>0</button>`,
|
html: `<button>0</button><button>0</button>`,
|
||||||
|
|
||||||
async test({ assert, target }) {
|
test({ assert, target }) {
|
||||||
const [b1, b2] = target.querySelectorAll('button');
|
const [b1, b2] = target.querySelectorAll('button');
|
||||||
|
|
||||||
b1?.click();
|
flushSync(() => {
|
||||||
await Promise.resolve();
|
b1?.click();
|
||||||
|
});
|
||||||
|
|
||||||
assert.htmlEqual(target.innerHTML, '<button>1</button><button>1</button>');
|
assert.htmlEqual(target.innerHTML, '<button>1</button><button>1</button>');
|
||||||
|
|
||||||
b2?.click();
|
flushSync(() => {
|
||||||
await Promise.resolve();
|
b2?.click();
|
||||||
|
});
|
||||||
|
|
||||||
assert.htmlEqual(target.innerHTML, '<button>2</button><button>2</button>');
|
assert.htmlEqual(target.innerHTML, '<button>2</button><button>2</button>');
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -1,13 +1,17 @@
|
|||||||
|
import { flushSync } from 'svelte';
|
||||||
import { test } from '../../test';
|
import { test } from '../../test';
|
||||||
|
|
||||||
export default test({
|
export default test({
|
||||||
compileOptions: {
|
compileOptions: {
|
||||||
dev: true
|
dev: true
|
||||||
},
|
},
|
||||||
async test({ assert, target }) {
|
test({ assert, target }) {
|
||||||
const btn = target.querySelector('button');
|
const btn = target.querySelector('button');
|
||||||
|
|
||||||
await btn?.click();
|
flushSync(() => {
|
||||||
|
btn?.click();
|
||||||
|
});
|
||||||
|
|
||||||
assert.htmlEqual(target.innerHTML, `<button></button>\n[object Object]`);
|
assert.htmlEqual(target.innerHTML, `<button></button>\n[object Object]`);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
Loading…
Reference in new issue