update tests

pull/9789/head
Rich Harris 3 years ago
parent 5dc98303db
commit c263119408

@ -1,36 +1,41 @@
import { flushSync } from 'svelte';
import { test } from '../../test';
import { log } from './log.js';
export default test({
// The component context class instance gets shared between tests, strangely, causing hydration to fail?
skip_if_hydrate: 'permanent',
async test({ assert, target, component }) {
before_test() {
log.length = 0;
},
async test({ assert, target }) {
const btn = target.querySelector('button');
flushSync(() => {
btn?.click();
});
assert.deepEqual(component.log, [0, 'class trigger false', 'local trigger false', 1]);
assert.deepEqual(log, [0, 'class trigger false', 'local trigger false', 1]);
flushSync(() => {
btn?.click();
});
assert.deepEqual(component.log, [0, 'class trigger false', 'local trigger false', 1, 2]);
assert.deepEqual(log, [0, 'class trigger false', 'local trigger false', 1, 2]);
flushSync(() => {
btn?.click();
});
assert.deepEqual(component.log, [0, 'class trigger false', 'local trigger false', 1, 2, 3]);
assert.deepEqual(log, [0, 'class trigger false', 'local trigger false', 1, 2, 3]);
flushSync(() => {
btn?.click();
});
assert.deepEqual(component.log, [
assert.deepEqual(log, [
0,
'class trigger false',
'local trigger false',

@ -1,17 +1,17 @@
<script context="module">
class SomeLogic {
someValue = $state(0);
isAboveThree = $derived(this.someValue > 3);
trigger() {
this.someValue++;
}
class SomeLogic {
someValue = $state(0);
isAboveThree = $derived(this.someValue > 3);
trigger() {
this.someValue++;
}
}
const someLogic = new SomeLogic();
</script>
<script>
const {log = []} = $props();
import { log } from './log.js';
function increment() {
someLogic.trigger();

@ -1,9 +1,14 @@
import { test } from '../../test';
import { log } from './log.js';
export default test({
html: `<button>0</button>`,
async test({ assert, target, component }) {
before_test() {
log.length = 0;
},
async test({ assert, target }) {
const btn = target.querySelector('button');
await btn?.click();
@ -12,6 +17,6 @@ export default test({
await btn?.click();
assert.htmlEqual(target.innerHTML, `<button>2</button>`);
assert.deepEqual(component.log, [undefined]);
assert.deepEqual(log, [undefined]);
}
});

@ -1,5 +1,5 @@
<script>
const {log = []} = $props();
import { log } from './log.js';
const logger = (obj) => {
log.push(obj.count)

@ -1,9 +1,14 @@
import { test } from '../../test';
import { log } from './log.js';
export default test({
html: `<button>0</button>`,
async test({ assert, target, component }) {
before_test() {
log.length = 0;
},
async test({ assert, target }) {
const btn = target.querySelector('button');
await btn?.click();
@ -12,6 +17,6 @@ export default test({
await btn?.click();
assert.htmlEqual(target.innerHTML, `<button>2</button>`);
assert.deepEqual(component.log, [undefined]);
assert.deepEqual(log, [undefined]);
}
});

@ -1,5 +1,5 @@
<script>
const {log = []} = $props();
import { log } from './log.js';
class Counter {
count = $state();

@ -1,9 +1,14 @@
import { test } from '../../test';
import { log } from './log.js';
export default test({
html: `<button>0</button>`,
async test({ assert, target, component }) {
before_test() {
log.length = 0;
},
async test({ assert, target }) {
const btn = target.querySelector('button');
await btn?.click();
@ -12,6 +17,6 @@ export default test({
await btn?.click();
assert.htmlEqual(target.innerHTML, `<button>2</button>`);
assert.deepEqual(component.log, [100]);
assert.deepEqual(log, [100]);
}
});

@ -1,5 +1,5 @@
<script>
const {log = []} = $props();
import { log } from './log.js';
class Counter {
count = $state(100);

@ -1,8 +1,13 @@
import { flushSync } from 'svelte';
import { test } from '../../test';
import { log } from './log.js';
export default test({
async test({ assert, target, component }) {
before_test() {
log.length = 0;
},
async test({ assert, target }) {
const [b1] = target.querySelectorAll('button');
flushSync(() => {
@ -10,6 +15,6 @@ export default test({
});
await Promise.resolve();
assert.deepEqual(component.log, ['onclick']);
assert.deepEqual(log, ['onclick']);
}
});

@ -1,5 +1,5 @@
<script>
const {log = []} = $props();
import { log } from './log.js';
function send() {
log.push("onclick")

Loading…
Cancel
Save