forked from sveltejs/svelte
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path_config.js
60 lines (48 loc) · 1.06 KB
/
_config.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
export default {
props: {
prop: 'bar',
obj: {
foo: 'a',
bar: 'b',
baz: 'c',
},
},
html: `
<input>
<pre>{"foo":"a","bar":"b","baz":"c"}</pre>
`,
ssrHtml: `
<input value=b>
<pre>{"foo":"a","bar":"b","baz":"c"}</pre>
`,
async test({ assert, component, target, window }) {
const input = target.querySelector('input');
const event = new window.Event('input');
assert.equal(input.value, 'b');
// edit bar
input.value = 'e';
await input.dispatchEvent(event);
assert.htmlEqual(target.innerHTML, `
<input>
<pre>{"foo":"a","bar":"e","baz":"c"}</pre>
`);
// edit baz
component.prop = 'baz';
assert.equal(input.value, 'c');
input.value = 'f';
await input.dispatchEvent(event);
assert.htmlEqual(target.innerHTML, `
<input>
<pre>{"foo":"a","bar":"e","baz":"f"}</pre>
`);
// edit foo
component.prop = 'foo';
assert.equal(input.value, 'a');
input.value = 'd';
await input.dispatchEvent(event);
assert.htmlEqual(target.innerHTML, `
<input>
<pre>{"foo":"d","bar":"e","baz":"f"}</pre>
`);
},
};