mirror of https://github.com/sveltejs/svelte
monkey-patch console.log and console.warn for all tests (#11265)
* monkey-patch console.log and console.warn for all tests * update legacy tests * various * tests passing * tidy up * tidy up * tidier outputpull/11260/head
parent
47ba488cf2
commit
fd5f5bb85d
@ -1,8 +1,7 @@
|
|||||||
<script>
|
<script>
|
||||||
import Nested from './Nested.svelte';
|
import Nested from './Nested.svelte';
|
||||||
export let log = [];
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<Nested {log} let:set let:key let:item>
|
<Nested let:set let:key let:item>
|
||||||
<button type="button" on:click={() => set(`value-${key}-${item}`)}>Set {key}-{item}</button>
|
<button type="button" on:click={() => set(`value-${key}-${item}`)}>Set {key}-{item}</button>
|
||||||
</Nested>
|
</Nested>
|
@ -1,8 +1,7 @@
|
|||||||
<script>
|
<script>
|
||||||
import Nested from './Nested.svelte';
|
import Nested from './Nested.svelte';
|
||||||
export let log = [];
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<Nested {log} let:set let:key>
|
<Nested let:set let:key>
|
||||||
<button type="button" on:click={() => set(`value-${key}`)}>Set {key}</button>
|
<button type="button" on:click={() => set(`value-${key}`)}>Set {key}</button>
|
||||||
</Nested>
|
</Nested>
|
@ -1,8 +1,7 @@
|
|||||||
<script>
|
<script>
|
||||||
import Inner from './Inner.svelte';
|
import Inner from './Inner.svelte';
|
||||||
export let log;
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<Inner {log} let:key let:set>
|
<Inner let:key let:set>
|
||||||
<slot {key} set={(value) => set(key, value)} />
|
<slot {key} set={(value) => set(key, value)} />
|
||||||
</Inner>
|
</Inner>
|
@ -1,8 +1,7 @@
|
|||||||
<script>
|
<script>
|
||||||
import Nested from './Nested.svelte';
|
import Nested from './Nested.svelte';
|
||||||
export let log = [];
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<Nested {log} let:set let:key>
|
<Nested let:set let:key>
|
||||||
<button type="button" on:click={() => set(`value-${key}`)}>Set {key}</button>
|
<button type="button" on:click={() => set(`value-${key}`)}>Set {key}</button>
|
||||||
</Nested>
|
</Nested>
|
||||||
|
@ -1,2 +0,0 @@
|
|||||||
/** @type {string[]} */
|
|
||||||
export const log = [];
|
|
@ -1,7 +1,6 @@
|
|||||||
<script>
|
<script>
|
||||||
export let name;
|
export let name;
|
||||||
export let log;
|
$: console.log('name in child: ' + name);
|
||||||
$: log.push('name in child: ' + name);
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<p>welcome, dan</p>
|
<p>welcome, dan</p>
|
||||||
|
@ -1,2 +0,0 @@
|
|||||||
/** @type {any[]} */
|
|
||||||
export const log = [];
|
|
@ -1,22 +1,17 @@
|
|||||||
import { ok, test } from '../../test';
|
import { ok, test } from '../../test';
|
||||||
import { flushSync, tick } from 'svelte';
|
import { flushSync } from 'svelte';
|
||||||
import { log } from './log.js';
|
|
||||||
|
|
||||||
export default test({
|
export default test({
|
||||||
html: `<button>0</button>`,
|
html: `<button>0</button>`,
|
||||||
|
|
||||||
before_test() {
|
async test({ assert, target, logs }) {
|
||||||
log.length = 0;
|
|
||||||
},
|
|
||||||
|
|
||||||
async test({ assert, target }) {
|
|
||||||
const btn = target.querySelector('button');
|
const btn = target.querySelector('button');
|
||||||
ok(btn);
|
ok(btn);
|
||||||
|
|
||||||
flushSync(() => btn.click());
|
flushSync(() => btn.click());
|
||||||
assert.deepEqual(log, ['update', 0, 1]);
|
assert.deepEqual(logs, ['update', 0, 1]);
|
||||||
|
|
||||||
flushSync(() => btn.click());
|
flushSync(() => btn.click());
|
||||||
assert.deepEqual(log, ['update', 0, 1, 'destroy', 1]);
|
assert.deepEqual(logs, ['update', 0, 1, 'destroy', 1]);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -1,2 +0,0 @@
|
|||||||
/** @type {any[]} */
|
|
||||||
export const log = [];
|
|
@ -1,2 +0,0 @@
|
|||||||
/** @type {any[]} */
|
|
||||||
export const log = [];
|
|
@ -1,20 +1,15 @@
|
|||||||
import { flushSync } from 'svelte';
|
import { flushSync } from 'svelte';
|
||||||
import { test } from '../../test';
|
import { test } from '../../test';
|
||||||
import { logs } from './logs.js';
|
|
||||||
|
|
||||||
export default test({
|
export default test({
|
||||||
html: `<button>clicks: 0</button>`,
|
html: `<button>clicks: 0</button>`,
|
||||||
|
|
||||||
test({ assert, target }) {
|
test({ assert, target, logs }) {
|
||||||
const btn = target.querySelector('button');
|
const btn = target.querySelector('button');
|
||||||
|
|
||||||
flushSync(() => btn?.click());
|
flushSync(() => btn?.click());
|
||||||
|
|
||||||
assert.htmlEqual(target.innerHTML, `<button>clicks: 1</button>`);
|
assert.htmlEqual(target.innerHTML, `<button>clicks: 1</button>`);
|
||||||
assert.deepEqual(logs, ['changed', 'changed']);
|
assert.deepEqual(logs, ['changed', 'changed']);
|
||||||
},
|
|
||||||
|
|
||||||
after_test() {
|
|
||||||
logs.length = 0;
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -1,2 +0,0 @@
|
|||||||
/** @type {any[]} */
|
|
||||||
export const logs = [];
|
|
@ -1,2 +0,0 @@
|
|||||||
/** @type {any[]} */
|
|
||||||
export const log = [];
|
|
@ -1,2 +0,0 @@
|
|||||||
/** @type {any[]} */
|
|
||||||
export const log = [];
|
|
@ -1,2 +0,0 @@
|
|||||||
/** @type {any[]} */
|
|
||||||
export const log = [];
|
|
@ -1,2 +0,0 @@
|
|||||||
/** @type {any[]} */
|
|
||||||
export const log = [];
|
|
@ -1,2 +0,0 @@
|
|||||||
/** @type {any[]} */
|
|
||||||
export const log = [];
|
|
@ -1,2 +0,0 @@
|
|||||||
/** @type {any[]} */
|
|
||||||
export const log = [];
|
|
@ -1,2 +0,0 @@
|
|||||||
/** @type {any[]} */
|
|
||||||
export const log = [];
|
|
@ -1,28 +1,23 @@
|
|||||||
import { test } from '../../test';
|
import { test } from '../../test';
|
||||||
import { flushSync } from 'svelte';
|
import { flushSync } from 'svelte';
|
||||||
import { log } from './log.js';
|
|
||||||
|
|
||||||
export default test({
|
export default test({
|
||||||
before_test() {
|
async test({ assert, target, logs }) {
|
||||||
log.length = 0;
|
|
||||||
},
|
|
||||||
|
|
||||||
async test({ assert, target }) {
|
|
||||||
const [b1, b2, b3] = target.querySelectorAll('button');
|
const [b1, b2, b3] = target.querySelectorAll('button');
|
||||||
log.length = 0;
|
logs.length = 0;
|
||||||
flushSync(() => {
|
flushSync(() => {
|
||||||
b1.click();
|
b1.click();
|
||||||
});
|
});
|
||||||
assert.deepEqual(log, ['a', 1]);
|
assert.deepEqual(logs, ['a', 1]);
|
||||||
log.length = 0;
|
logs.length = 0;
|
||||||
flushSync(() => {
|
flushSync(() => {
|
||||||
b2.click();
|
b2.click();
|
||||||
});
|
});
|
||||||
assert.deepEqual(log, ['b', 1]);
|
assert.deepEqual(logs, ['b', 1]);
|
||||||
log.length = 0;
|
logs.length = 0;
|
||||||
flushSync(() => {
|
flushSync(() => {
|
||||||
b3.click();
|
b3.click();
|
||||||
});
|
});
|
||||||
assert.deepEqual(log, ['c', 1]);
|
assert.deepEqual(logs, ['c', 1]);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -1,2 +0,0 @@
|
|||||||
/** @type {any[]} */
|
|
||||||
export const log = [];
|
|
@ -1,19 +1,15 @@
|
|||||||
import { test } from '../../test';
|
import { test } from '../../test';
|
||||||
import { log } from './log.js';
|
|
||||||
|
|
||||||
export default test({
|
export default test({
|
||||||
before_test() {
|
mode: ['server'],
|
||||||
log.length = 0;
|
|
||||||
},
|
|
||||||
|
|
||||||
html: `<button>0</button>`,
|
html: `<button>0</button>`,
|
||||||
|
|
||||||
async test({ assert, target, window }) {
|
async test({ assert, target, window, logs }) {
|
||||||
const btn = target.querySelector('button');
|
const btn = target.querySelector('button');
|
||||||
const clickEvent = new window.Event('click', { bubbles: true });
|
const clickEvent = new window.Event('click', { bubbles: true });
|
||||||
await btn?.dispatchEvent(clickEvent);
|
await btn?.dispatchEvent(clickEvent);
|
||||||
|
|
||||||
assert.htmlEqual(target.innerHTML, `<button>2</button>`);
|
assert.htmlEqual(target.innerHTML, `<button>2</button>`);
|
||||||
assert.deepEqual(log, ['create_derived']);
|
assert.deepEqual(logs, ['create_derived']);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -1,2 +0,0 @@
|
|||||||
/** @type {any[]} */
|
|
||||||
export const log = [];
|
|
@ -1,2 +0,0 @@
|
|||||||
/** @type {any[]} */
|
|
||||||
export const log = [];
|
|
@ -1,15 +1,10 @@
|
|||||||
import { test } from '../../test';
|
import { test } from '../../test';
|
||||||
import { log } from './log.js';
|
|
||||||
|
|
||||||
export default test({
|
export default test({
|
||||||
before_test() {
|
async test({ assert, target, logs }) {
|
||||||
log.length = 0;
|
|
||||||
},
|
|
||||||
|
|
||||||
async test({ assert, target, window }) {
|
|
||||||
const btn = target.querySelector('button');
|
const btn = target.querySelector('button');
|
||||||
await btn?.click();
|
await btn?.click();
|
||||||
|
|
||||||
assert.deepEqual(log, ['works!']);
|
assert.deepEqual(logs, ['works!']);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -1,2 +0,0 @@
|
|||||||
/** @type {any[]} */
|
|
||||||
export const log = [];
|
|
@ -1,31 +1,26 @@
|
|||||||
import { flushSync } from 'svelte';
|
import { flushSync } from 'svelte';
|
||||||
import { test } from '../../test';
|
import { test } from '../../test';
|
||||||
import { log } from './log.js';
|
|
||||||
|
|
||||||
export default test({
|
export default test({
|
||||||
before_test() {
|
async test({ assert, target, logs }) {
|
||||||
log.length = 0;
|
|
||||||
},
|
|
||||||
|
|
||||||
async test({ assert, target }) {
|
|
||||||
const [b1, b2] = target.querySelectorAll('button');
|
const [b1, b2] = target.querySelectorAll('button');
|
||||||
|
|
||||||
flushSync(() => {
|
flushSync(() => {
|
||||||
b1.click();
|
b1.click();
|
||||||
});
|
});
|
||||||
|
|
||||||
assert.deepEqual(log, ['transition 2']);
|
assert.deepEqual(logs, ['transition 2']);
|
||||||
|
|
||||||
flushSync(() => {
|
flushSync(() => {
|
||||||
b2.click();
|
b2.click();
|
||||||
});
|
});
|
||||||
|
|
||||||
assert.deepEqual(log, ['transition 2']);
|
assert.deepEqual(logs, ['transition 2']);
|
||||||
|
|
||||||
flushSync(() => {
|
flushSync(() => {
|
||||||
b1.click();
|
b1.click();
|
||||||
});
|
});
|
||||||
|
|
||||||
assert.deepEqual(log, ['transition 2', 'transition 1']);
|
assert.deepEqual(logs, ['transition 2', 'transition 1']);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -1,2 +0,0 @@
|
|||||||
/** @type {any[]} */
|
|
||||||
export const log = [];
|
|
@ -1,2 +0,0 @@
|
|||||||
/** @type {any[]} */
|
|
||||||
export const log = [];
|
|
@ -1,2 +0,0 @@
|
|||||||
/** @type {any[]} */
|
|
||||||
export const log = [];
|
|
@ -1,2 +0,0 @@
|
|||||||
/** @type {any[]} */
|
|
||||||
export const log = [];
|
|
@ -1,31 +1,26 @@
|
|||||||
import { flushSync } from 'svelte';
|
import { flushSync } from 'svelte';
|
||||||
import { test } from '../../test';
|
import { test } from '../../test';
|
||||||
import { log } from './log.js';
|
|
||||||
|
|
||||||
export default test({
|
export default test({
|
||||||
before_test() {
|
async test({ assert, target, logs }) {
|
||||||
log.length = 0;
|
|
||||||
},
|
|
||||||
|
|
||||||
async test({ assert, target }) {
|
|
||||||
const [b1, b2] = target.querySelectorAll('button');
|
const [b1, b2] = target.querySelectorAll('button');
|
||||||
|
|
||||||
flushSync(() => {
|
flushSync(() => {
|
||||||
b1.click();
|
b1.click();
|
||||||
});
|
});
|
||||||
|
|
||||||
assert.deepEqual(log, [0]);
|
assert.deepEqual(logs, [0]);
|
||||||
|
|
||||||
flushSync(() => {
|
flushSync(() => {
|
||||||
b2.click();
|
b2.click();
|
||||||
});
|
});
|
||||||
|
|
||||||
assert.deepEqual(log, [0, 'cleanup']);
|
assert.deepEqual(logs, [0, 'cleanup']);
|
||||||
|
|
||||||
flushSync(() => {
|
flushSync(() => {
|
||||||
b1.click();
|
b1.click();
|
||||||
});
|
});
|
||||||
|
|
||||||
assert.deepEqual(log, [0, 'cleanup']);
|
assert.deepEqual(logs, [0, 'cleanup']);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -1,2 +0,0 @@
|
|||||||
/** @type {any[]} */
|
|
||||||
export const log = [];
|
|
@ -1,2 +0,0 @@
|
|||||||
/** @type {any[]} */
|
|
||||||
export const log = [];
|
|
@ -1,17 +1,12 @@
|
|||||||
import { test } from '../../test';
|
import { test } from '../../test';
|
||||||
import { log } from './log.js';
|
|
||||||
|
|
||||||
export default test({
|
export default test({
|
||||||
before_test() {
|
async test({ assert, target, logs }) {
|
||||||
log.length = 0;
|
|
||||||
},
|
|
||||||
|
|
||||||
async test({ assert, target }) {
|
|
||||||
const [b1, b2] = target.querySelectorAll('button');
|
const [b1, b2] = target.querySelectorAll('button');
|
||||||
b1.click();
|
b1.click();
|
||||||
b2.click();
|
b2.click();
|
||||||
await Promise.resolve();
|
await Promise.resolve();
|
||||||
|
|
||||||
assert.deepEqual(log, [0, 1]);
|
assert.deepEqual(logs, [0, 1]);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -1,2 +0,0 @@
|
|||||||
/** @type {any[]} */
|
|
||||||
export const log = [];
|
|
@ -1,17 +1,12 @@
|
|||||||
import { test } from '../../test';
|
import { test } from '../../test';
|
||||||
import { log } from './log.js';
|
|
||||||
|
|
||||||
export default test({
|
export default test({
|
||||||
before_test() {
|
async test({ assert, target, logs }) {
|
||||||
log.length = 0;
|
|
||||||
},
|
|
||||||
|
|
||||||
async test({ assert, target }) {
|
|
||||||
const [b1, b2] = target.querySelectorAll('button');
|
const [b1, b2] = target.querySelectorAll('button');
|
||||||
b1.click();
|
b1.click();
|
||||||
b2.click();
|
b2.click();
|
||||||
await Promise.resolve();
|
await Promise.resolve();
|
||||||
|
|
||||||
assert.deepEqual(log, ['first0', 'second0', 'first1', 'second1']);
|
assert.deepEqual(logs, ['first0', 'second0', 'first1', 'second1']);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -1,2 +0,0 @@
|
|||||||
/** @type {any[]} */
|
|
||||||
export const log = [];
|
|
@ -1,2 +0,0 @@
|
|||||||
/** @type {any[]} */
|
|
||||||
export const log = [];
|
|
@ -1,8 +1,5 @@
|
|||||||
<script>
|
<div on:click={(e) => { console.log('clicked div') }}>
|
||||||
import { log } from './log.js';
|
<button onclick={(e) => { console.log('clicked button'); e.stopPropagation() }}>
|
||||||
</script>
|
|
||||||
<div on:click={(e) => { log.push('clicked div') }}>
|
|
||||||
<button onclick={(e) => { log.push('clicked button'); e.stopPropagation() }}>
|
|
||||||
Button
|
Button
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue