Skip to content

Commit 1b0c009

Browse files
committed
test: update fake form
Signed-off-by: Logan McAnsh <[email protected]>
1 parent 440e950 commit 1b0c009

File tree

1 file changed

+34
-25
lines changed

1 file changed

+34
-25
lines changed

packages/form-data/test/form-data.spec.js

Lines changed: 34 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -261,32 +261,41 @@ export const test = (test) => {
261261
});
262262

263263
test("Should allow passing a form element", () => {
264-
// /** @type {globalThis.HTMLFormElement} */
265-
/** @type {any} */
266-
const form = {
267-
id: "my-form",
268-
elements: [
269-
{
270-
tagName: "INPUT",
271-
name: "inside",
272-
value: "",
273-
},
274-
{
275-
tagName: "INPUT",
276-
name: "outside",
277-
value: "",
278-
form: "my-form",
279-
},
280-
{
281-
tagName: "INPUT",
282-
name: "remember-me",
283-
value: "on",
284-
checked: true,
285-
}
286-
]
287-
};
288264

289-
// @ts-ignore
265+
class FakeForm {
266+
get [Symbol.toStringTag]() {
267+
return "HTMLFormElement";
268+
}
269+
270+
get elements() {
271+
return [
272+
{
273+
tagName: "INPUT",
274+
name: "inside",
275+
value: "",
276+
},
277+
{
278+
tagName: "INPUT",
279+
name: "outside",
280+
value: "",
281+
form: "my-form",
282+
},
283+
{
284+
tagName: "INPUT",
285+
name: "remember-me",
286+
value: "on",
287+
checked: true,
288+
}
289+
]
290+
}
291+
292+
get id() {
293+
return "my-form"
294+
}
295+
}
296+
297+
let form = /** @type {globalThis.HTMLFormElement} */ (/** @type {unknown} */ (new FakeForm()))
298+
290299
const formData = new FormData(form);
291300
assert.equal(formData.has("inside"), true)
292301
assert.equal(formData.has("outside"), true)

0 commit comments

Comments
 (0)