mirror of https://github.com/sveltejs/svelte
parent
d4718e0755
commit
44115840bd
@ -1,39 +1,40 @@
|
|||||||
|
import { flushSync } from 'svelte';
|
||||||
import { test } from '../../test';
|
import { test } from '../../test';
|
||||||
|
|
||||||
export default test({
|
export default test({
|
||||||
async test({ assert, target, window }) {
|
test({ assert, target, window }) {
|
||||||
const [input1, input2, input3, input4] = target.querySelectorAll('input');
|
const [input1, input2, input3, input4] = target.querySelectorAll('input');
|
||||||
const [p] = target.querySelectorAll('p');
|
const [p] = target.querySelectorAll('p');
|
||||||
const event = new window.Event('change');
|
const event = new window.Event('change');
|
||||||
|
|
||||||
input1.checked = true;
|
input1.checked = true;
|
||||||
await input1.dispatchEvent(event);
|
input1.dispatchEvent(event);
|
||||||
await Promise.resolve();
|
flushSync();
|
||||||
assert.htmlEqual(p.innerHTML, '["1a"]');
|
assert.htmlEqual(p.innerHTML, '["1a"]');
|
||||||
|
|
||||||
input2.checked = true;
|
input2.checked = true;
|
||||||
await input1.dispatchEvent(event);
|
input1.dispatchEvent(event);
|
||||||
await Promise.resolve();
|
flushSync();
|
||||||
assert.htmlEqual(p.innerHTML, '["1a","1b"]');
|
assert.htmlEqual(p.innerHTML, '["1a","1b"]');
|
||||||
|
|
||||||
input3.checked = true;
|
input3.checked = true;
|
||||||
await input1.dispatchEvent(event);
|
input1.dispatchEvent(event);
|
||||||
await Promise.resolve();
|
flushSync();
|
||||||
assert.htmlEqual(p.innerHTML, '["1a","1b","2a"]');
|
assert.htmlEqual(p.innerHTML, '["1a","1b","2a"]');
|
||||||
|
|
||||||
input4.checked = true;
|
input4.checked = true;
|
||||||
await input1.dispatchEvent(event);
|
input1.dispatchEvent(event);
|
||||||
await Promise.resolve();
|
flushSync();
|
||||||
assert.htmlEqual(p.innerHTML, '["1a","1b","2a","2b"]');
|
assert.htmlEqual(p.innerHTML, '["1a","1b","2a","2b"]');
|
||||||
|
|
||||||
input1.checked = false;
|
input1.checked = false;
|
||||||
await input1.dispatchEvent(event);
|
input1.dispatchEvent(event);
|
||||||
await Promise.resolve();
|
flushSync();
|
||||||
assert.htmlEqual(p.innerHTML, '["1b","2a","2b"]');
|
assert.htmlEqual(p.innerHTML, '["1b","2a","2b"]');
|
||||||
|
|
||||||
input3.checked = false;
|
input3.checked = false;
|
||||||
await input1.dispatchEvent(event);
|
input1.dispatchEvent(event);
|
||||||
await Promise.resolve();
|
flushSync();
|
||||||
assert.htmlEqual(p.innerHTML, '["1b","2b"]');
|
assert.htmlEqual(p.innerHTML, '["1b","2b"]');
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -1,10 +1,12 @@
|
|||||||
|
import { flushSync } from 'svelte';
|
||||||
import { test } from '../../test';
|
import { test } from '../../test';
|
||||||
|
|
||||||
export default test({
|
export default test({
|
||||||
html: `child: 0 parent: 0 <button>inc x</button>`,
|
html: `child: 0 parent: 0 <button>inc x</button>`,
|
||||||
|
|
||||||
async test({ assert, target }) {
|
test({ assert, target }) {
|
||||||
await target.querySelector('button')?.click();
|
target.querySelector('button')?.click();
|
||||||
|
flushSync();
|
||||||
assert.htmlEqual(target.innerHTML, `child: 1 parent: 1 <button>inc x</button>`);
|
assert.htmlEqual(target.innerHTML, `child: 1 parent: 1 <button>inc x</button>`);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue