delete/update tests

pull/1864/head
Rich Harris 7 years ago
parent e37cdd18b4
commit c95ba68e46

@ -0,0 +1,13 @@
<script>
import { afterRender } from 'svelte';
export let value;
let mirror;
afterRender(() => {
mirror = value;
});
</script>
<p>{value}</p>
<p>{mirror}</p>

@ -2,19 +2,19 @@ export default {
'skip-ssr': true,
props: {
foo: 'woo!'
value: 'hello!'
},
html: `
<p>woo!</p>
<p>WOO!</p>
<p>hello!</p>
<p>hello!</p>
`,
test(assert, component, target) {
component.foo = 'yeah!';
component.value = 'goodbye!';
assert.htmlEqual(target.innerHTML, `
<p>yeah!</p>
<p>YEAH!</p>
<p>goodbye!</p>
<p>goodbye!</p>
`);
}
};

@ -0,0 +1,21 @@
export default {
'skip-ssr': true,
html: `
<span>3</span>
<span>2</span>
<span>1</span>
`,
async test(assert, component, target) {
await component.list.update();
assert.htmlEqual(target.innerHTML, `
<span>1</span>
<span>2</span>
<span>3</span>
<span>4</span>
<span>5</span>
`);
}
};

@ -0,0 +1,20 @@
export default {
'skip-ssr': true,
props: {
value: 'hello!'
},
html: `
<p>hello!</p>
<p>hello!</p>
`,
test(assert, component, target) {
component.value = 'goodbye!';
assert.htmlEqual(target.innerHTML, `
<p>goodbye!</p>
<p>goodbye!</p>
`);
}
};

@ -1,13 +1,13 @@
<script>
import { beforeRender } from 'svelte';
export let foo;
export let bar;
export let value;
let mirror;
beforeRender(() => {
bar = foo.toUpperCase();
mirror = value;
});
</script>
<p>{foo}</p>
<p>{bar}</p>
<p>{value}</p>
<p>{mirror}</p>

@ -7,8 +7,8 @@ export default {
assert.deepEqual(order, [
'beforeRender',
'render',
'oncreate',
'afterRender'
'afterRender',
'onMount'
]);
order.length = 0;

@ -17,7 +17,7 @@
});
onMount(() => {
order.push('oncreate');
order.push('onMount');
});
</script>

@ -1 +0,0 @@
<input type="number" bind:value={field1}>

@ -1,34 +0,0 @@
export default {
html: `
<input type=number>
<p>field1: 1</p>
<p>field2: 2</p>
`,
ssrHtml: `
<input type=number value=1>
<p>field1: 1</p>
<p>field2: 2</p>
`,
test(assert, component, target, window) {
let triggered = false;
component.nested.on('state', ({ changed }) => {
if (changed.field2) triggered = true;
});
const input = target.querySelector('input');
const event = new window.Event('input');
input.value = 3;
input.dispatchEvent(event); // will throw error if observer fires incorrectly
assert.ok(!triggered);
assert.htmlEqual(target.innerHTML, `
<input type='number'>
<p>field1: 3</p>
<p>field2: 2</p>
`);
}
};

@ -1,14 +0,0 @@
<script>
export let nested;
import Nested from './Nested.html';
export let myObject = {
field1: 1,
field2: 2
};
</script>
<Nested ref:nested bind:field1={myObject.field1} bind:field2={myObject.field2} />
<p>field1: {myObject.field1}</p>
<p>field2: {myObject.field2}</p>

@ -1,29 +0,0 @@
export default {
props: {
thing: { a: 1 }
},
test(assert, component) {
const thing = component.thing;
component.$on('state', ({ changed, current }) => {
if (changed.thing) {
const { thing } = current;
thing.b = thing.a * 2;
component.thing = thing; // triggers infinite loop, unless event handler breaks it
}
});
assert.deepEqual(thing, {
a: 1
});
thing.a = 3;
component.thing = thing;
assert.deepEqual(thing, {
a: 3,
b: 6
});
}
};

@ -1,3 +0,0 @@
export default {
skip: +(/^v(\d)/.exec(process.version)[1]) < 8
};

@ -1,3 +0,0 @@
export default {
skip: +(/^v(\d)/.exec(process.version)[1]) < 8
};

@ -1,5 +0,0 @@
<script>
import { onMount } from 'svelte';
onMount(async () => await 123);
</script>

@ -1,3 +0,0 @@
export default {
skip: +(/^v(\d)/.exec(process.version)[1]) < 8
};

@ -1,7 +0,0 @@
<script>
import { onMount } from 'svelte';
onMount(async () => {
await 123
});
</script>

@ -0,0 +1,3 @@
export default {
skip: +(/^v(\d+)/.exec(process.version)[1]) < 8
};

@ -6,7 +6,7 @@
export let name;
onMount(() => {
result.push(`oncreate ${name}`);
result.push(`onMount ${name}`);
});
</script>

@ -3,8 +3,8 @@ import result from './result.js';
export default {
test(assert) {
assert.deepEqual(result, [
'oncreate foo',
'oncreate bar'
'onMount foo',
'onMount bar'
]);
result.pop();

@ -1,15 +0,0 @@
export default {
'skip-ssr': true,
html: `
<span>3</span><span>2</span><span>1</span>
`,
test(assert, component, target) {
component.list.update();
assert.htmlEqual(target.innerHTML, `
<span>1</span><span>2</span><span>3</span><span>4</span><span>5</span>
`);
}
};

@ -1,8 +0,0 @@
export default {
'skip-ssr': true,
test(assert, component, target) {
assert.ok(component.onstateRanBeforeOncreate);
assert.ok(!component.onupdateRanBeforeOncreate);
}
};

@ -1,21 +0,0 @@
<script>
import { onMount, beforeRender, afterRender } from 'svelte';
export let onstateRanBeforeOncreate;
export let onupdateRanBeforeOncreate;
let onpropsRan;
let onupdateRan;
beforeRender(() => {
onstateRan = true;
});
afterRender(() => {
onupdateRan = true;
});
onMount(() => {
onpropsRanBeforeOncreate = onpropsRan;
onupdateRanBeforeOncreate = onupdateRan;
});
</script>
Loading…
Cancel
Save