Skip to content

Commit 0e9678b

Browse files
committed
test
1 parent aaa8812 commit 0e9678b

File tree

2 files changed

+95
-53
lines changed

2 files changed

+95
-53
lines changed

packages/svelte/tests/runtime-runes/samples/form-default-value/_config.js

Lines changed: 53 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,8 @@ export default test({
3737
const after_reset = [];
3838

3939
const reset = /** @type {HTMLInputElement} */ (target.querySelector('input[type=reset]'));
40-
const [test1, test2, test3, test4, test5, test12] = target.querySelectorAll('div');
41-
const [test6, test7, test8, test9] = target.querySelectorAll('select');
40+
const [test1, test2, test3, test4, test5, test6, test13] = target.querySelectorAll('div');
41+
const [test7, test8, test9, test10] = target.querySelectorAll('select');
4242
const [
4343
test1_span,
4444
test2_span,
@@ -48,7 +48,8 @@ export default test({
4848
test6_span,
4949
test7_span,
5050
test8_span,
51-
test9_span
51+
test9_span,
52+
test10_span
5253
] = target.querySelectorAll('span');
5354

5455
{
@@ -74,8 +75,8 @@ export default test({
7475
{
7576
/** @type {NodeListOf<HTMLInputElement | HTMLTextAreaElement>} */
7677
const inputs = test2.querySelectorAll('input, textarea');
77-
check_inputs(inputs, 'value', 'y');
78-
assert.htmlEqual(test2_span.innerHTML, 'y y y y');
78+
check_inputs(inputs, 'value', 'x');
79+
assert.htmlEqual(test2_span.innerHTML, 'x x x x');
7980

8081
for (const input of inputs) {
8182
set_input(input, 'value', 'foo');
@@ -85,125 +86,145 @@ export default test({
8586
assert.htmlEqual(test2_span.innerHTML, 'foo foo foo foo');
8687

8788
after_reset.push(() => {
89+
console.log('-------------');
8890
check_inputs(inputs, 'value', 'x');
8991
assert.htmlEqual(test2_span.innerHTML, 'x x x x');
9092
});
9193
}
9294

95+
{
96+
/** @type {NodeListOf<HTMLInputElement | HTMLTextAreaElement>} */
97+
const inputs = test3.querySelectorAll('input, textarea');
98+
check_inputs(inputs, 'value', 'y');
99+
assert.htmlEqual(test3_span.innerHTML, 'y y y y');
100+
101+
for (const input of inputs) {
102+
set_input(input, 'value', 'foo');
103+
}
104+
flushSync();
105+
check_inputs(inputs, 'value', 'foo');
106+
assert.htmlEqual(test3_span.innerHTML, 'foo foo foo foo');
107+
108+
after_reset.push(() => {
109+
check_inputs(inputs, 'value', 'x');
110+
assert.htmlEqual(test3_span.innerHTML, 'x x x x');
111+
});
112+
}
113+
93114
{
94115
/** @type {NodeListOf<HTMLInputElement>} */
95-
const inputs = test3.querySelectorAll('input');
116+
const inputs = test4.querySelectorAll('input');
96117
check_inputs(inputs, 'checked', true);
97-
assert.htmlEqual(test3_span.innerHTML, 'true true');
118+
assert.htmlEqual(test4_span.innerHTML, 'true true');
98119

99120
for (const input of inputs) {
100121
set_input(input, 'checked', false);
101122
}
102123
flushSync();
103124
check_inputs(inputs, 'checked', false);
104-
assert.htmlEqual(test3_span.innerHTML, 'false false');
125+
assert.htmlEqual(test4_span.innerHTML, 'false false');
105126

106127
after_reset.push(() => {
107128
check_inputs(inputs, 'checked', true);
108-
assert.htmlEqual(test3_span.innerHTML, 'true true');
129+
assert.htmlEqual(test4_span.innerHTML, 'true true');
109130
});
110131
}
111132

112133
{
113134
/** @type {NodeListOf<HTMLInputElement>} */
114-
const inputs = test4.querySelectorAll('input');
135+
const inputs = test5.querySelectorAll('input');
115136
check_inputs(inputs, 'checked', false);
116-
assert.htmlEqual(test4_span.innerHTML, 'false false');
137+
assert.htmlEqual(test5_span.innerHTML, 'false false');
117138

118139
after_reset.push(() => {
119140
check_inputs(inputs, 'checked', true);
120-
assert.htmlEqual(test4_span.innerHTML, 'true true');
141+
assert.htmlEqual(test5_span.innerHTML, 'true true');
121142
});
122143
}
123144

124145
{
125146
/** @type {NodeListOf<HTMLInputElement>} */
126-
const inputs = test5.querySelectorAll('input');
147+
const inputs = test6.querySelectorAll('input');
127148
check_inputs(inputs, 'checked', true);
128-
assert.htmlEqual(test5_span.innerHTML, 'true');
149+
assert.htmlEqual(test6_span.innerHTML, 'true');
129150

130151
after_reset.push(() => {
131152
check_inputs(inputs, 'checked', false);
132-
assert.htmlEqual(test5_span.innerHTML, 'false');
153+
assert.htmlEqual(test6_span.innerHTML, 'false');
133154
});
134155
}
135156

136157
{
137158
/** @type {NodeListOf<HTMLOptionElement>} */
138-
const options = test6.querySelectorAll('option');
159+
const options = test7.querySelectorAll('option');
139160
check_inputs(options, 'selected', [false, true, false]);
140-
assert.htmlEqual(test6_span.innerHTML, 'b');
161+
assert.htmlEqual(test7_span.innerHTML, 'b');
141162

142163
select_option(options[2]);
143164
flushSync();
144165
check_inputs(options, 'selected', [false, false, true]);
145-
assert.htmlEqual(test6_span.innerHTML, 'c');
166+
assert.htmlEqual(test7_span.innerHTML, 'c');
146167

147168
after_reset.push(() => {
148169
check_inputs(options, 'selected', [false, true, false]);
149-
assert.htmlEqual(test6_span.innerHTML, 'b');
170+
assert.htmlEqual(test7_span.innerHTML, 'b');
150171
});
151172
}
152173

153174
{
154175
/** @type {NodeListOf<HTMLOptionElement>} */
155-
const options = test7.querySelectorAll('option');
176+
const options = test8.querySelectorAll('option');
156177
check_inputs(options, 'selected', [false, true, false]);
157-
assert.htmlEqual(test7_span.innerHTML, 'b');
178+
assert.htmlEqual(test8_span.innerHTML, 'b');
158179

159180
select_option(options[2]);
160181
flushSync();
161182
check_inputs(options, 'selected', [false, false, true]);
162-
assert.htmlEqual(test7_span.innerHTML, 'c');
183+
assert.htmlEqual(test8_span.innerHTML, 'c');
163184

164185
after_reset.push(() => {
165186
check_inputs(options, 'selected', [false, true, false]);
166-
assert.htmlEqual(test7_span.innerHTML, 'b');
187+
assert.htmlEqual(test8_span.innerHTML, 'b');
167188
});
168189
}
169190

170191
{
171192
/** @type {NodeListOf<HTMLOptionElement>} */
172-
const options = test8.querySelectorAll('option');
193+
const options = test9.querySelectorAll('option');
173194
check_inputs(options, 'selected', [false, false, true]);
174-
assert.htmlEqual(test8_span.innerHTML, 'c');
195+
assert.htmlEqual(test9_span.innerHTML, 'c');
175196

176197
select_option(options[0]);
177198
flushSync();
178199
check_inputs(options, 'selected', [true, false, false]);
179-
assert.htmlEqual(test8_span.innerHTML, 'a');
200+
assert.htmlEqual(test9_span.innerHTML, 'a');
180201

181202
after_reset.push(() => {
182203
check_inputs(options, 'selected', [false, true, false]);
183-
assert.htmlEqual(test8_span.innerHTML, 'b');
204+
assert.htmlEqual(test9_span.innerHTML, 'b');
184205
});
185206
}
186207

187208
{
188209
/** @type {NodeListOf<HTMLOptionElement>} */
189-
const options = test9.querySelectorAll('option');
210+
const options = test10.querySelectorAll('option');
190211
check_inputs(options, 'selected', [false, false, true]);
191-
assert.htmlEqual(test9_span.innerHTML, 'c');
212+
assert.htmlEqual(test10_span.innerHTML, 'c');
192213

193214
select_option(options[0]);
194215
flushSync();
195216
check_inputs(options, 'selected', [true, false, false]);
196-
assert.htmlEqual(test9_span.innerHTML, 'a');
217+
assert.htmlEqual(test10_span.innerHTML, 'a');
197218

198219
after_reset.push(() => {
199220
check_inputs(options, 'selected', [false, true, false]);
200-
assert.htmlEqual(test9_span.innerHTML, 'b');
221+
assert.htmlEqual(test10_span.innerHTML, 'b');
201222
});
202223
}
203224

204225
{
205226
/** @type {NodeListOf<HTMLInputElement | HTMLTextAreaElement>} */
206-
const inputs = test12.querySelectorAll('input, textarea');
227+
const inputs = test13.querySelectorAll('input, textarea');
207228
assert.equal(inputs[0].value, 'x');
208229
assert.equal(/** @type {HTMLInputElement} */ (inputs[1]).checked, true);
209230
assert.equal(inputs[2].value, 'x');

packages/svelte/tests/runtime-runes/samples/form-default-value/main.svelte

Lines changed: 42 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,22 @@
77
let value6 = $state();
88
let value7 = $state();
99
let value8 = $state();
10-
let value9 = $state('y');
11-
let value10 = $state('y');
12-
let value11 = $state('y');
13-
let value12 = $state('y');
14-
let value13 = $state('y');
15-
let value14 = $state('y');
16-
let value15 = $state('y');
17-
let value16 = $state('y');
10+
let value9 = $state(null);
11+
let value10 = $state(null);
12+
let value11 = $state(null);
13+
let value12 = $state(null);
14+
let value13 = $state(null);
15+
let value14 = $state(null);
16+
let value15 = $state(null);
17+
let value16 = $state(null);
18+
let value17 = $state('y');
19+
let value18 = $state('y');
20+
let value19 = $state('y');
21+
let value20 = $state('y');
22+
let value21 = $state('y');
23+
let value22 = $state('y');
24+
let value23 = $state('y');
25+
let value24 = $state('y');
1826
1927
let checked1 = $state();
2028
let checked2 = $state();
@@ -53,7 +61,7 @@
5361
<textarea defaultValue="x" bind:value={value8}></textarea>
5462
</div>
5563

56-
<!-- defaultValue=x, value=y -->
64+
<!-- defaultValue=x, value=null -->
5765
<div class="test-2">
5866
<input {defaultValue} bind:value={value9} />
5967
<input {defaultValue} value={value10} />
@@ -65,25 +73,37 @@
6573
<textarea defaultValue="x" bind:value={value16}></textarea>
6674
</div>
6775

76+
<!-- defaultValue=x, value=y -->
77+
<div class="test-3">
78+
<input {defaultValue} bind:value={value17} />
79+
<input {defaultValue} value={value18} />
80+
<input defaultValue="x" value={value19} />
81+
<input defaultValue="x" bind:value={value20} />
82+
<textarea {defaultValue} value={value21}></textarea>
83+
<textarea {defaultValue} bind:value={value22}></textarea>
84+
<textarea defaultValue="x" value={value23}></textarea>
85+
<textarea defaultValue="x" bind:value={value24}></textarea>
86+
</div>
87+
6888
<p>Input checked</p>
6989
<!-- defaultChecked=true, checked=undefined -->
70-
<div class="test-3">
90+
<div class="test-4">
7191
<input type="checkbox" {defaultChecked} checked={checked1} />
7292
<input type="checkbox" {defaultChecked} bind:checked={checked2} />
7393
<input type="checkbox" defaultChecked checked={checked3} />
7494
<input type="checkbox" defaultChecked bind:checked={checked4} />
7595
</div>
7696

7797
<!-- defaultChecked=true, checked=false -->
78-
<div class="test-4">
98+
<div class="test-5">
7999
<input type="checkbox" {defaultChecked} checked={checked5} />
80100
<input type="checkbox" {defaultChecked} bind:checked={checked6} />
81101
<input type="checkbox" defaultChecked checked={checked7} />
82102
<input type="checkbox" defaultChecked bind:checked={checked8} />
83103
</div>
84104

85105
<!-- defaultChecked=false, checked=true -->
86-
<div class="test-5">
106+
<div class="test-6">
87107
<input type="checkbox" defaultChecked={false} checked={checked9} />
88108
<input type="checkbox" defaultChecked={false} bind:checked={checked10} />
89109
</div>
@@ -151,13 +171,14 @@
151171
Bound values:
152172
<span class="test-1">{value1} {value3} {value6} {value8}</span>
153173
<span class="test-2">{value9} {value12} {value14} {value16}</span>
154-
<span class="test-3">{checked2} {checked4}</span>
155-
<span class="test-4">{checked6} {checked8}</span>
156-
<span class="test-5">{checked10}</span>
157-
<span class="test-6">{selected1}</span>
158-
<span class="test-7">{selected2}</span>
159-
<span class="test-8">{selected3}</span>
160-
<span class="test-9">{selected4}</span>
161-
<span class="test-10">{selected5}</span>
162-
<span class="test-11">{selected6}</span>
174+
<span class="test-3">{value17} {value20} {value22} {value24}</span>
175+
<span class="test-4">{checked2} {checked4}</span>
176+
<span class="test-5">{checked6} {checked8}</span>
177+
<span class="test-6">{checked10}</span>
178+
<span class="test-7">{selected1}</span>
179+
<span class="test-8">{selected2}</span>
180+
<span class="test-9">{selected3}</span>
181+
<span class="test-10">{selected4}</span>
182+
<span class="test-11">{selected5}</span>
183+
<span class="test-12">{selected6}</span>
163184
</p>

0 commit comments

Comments
 (0)