Skip to content

Commit 733cf38

Browse files
committed
Add tests for set method in FormParser, ObjectParser, and SearchParamsParser
1 parent 1b852ca commit 733cf38

3 files changed

Lines changed: 31 additions & 0 deletions

File tree

src/lib/form-parser.test.ts

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -181,4 +181,15 @@ describe(FormParser.name, () => {
181181
`Key "age" could not be coerced to number`,
182182
);
183183
});
184+
185+
test("#set sets the value of a form field", () => {
186+
let formData = new FormData();
187+
let parser = new FormParser(formData);
188+
189+
parser.set("name", "Alice");
190+
parser.set("age", "25");
191+
192+
expect(formData.get("name")).toBe("Alice");
193+
expect(formData.get("age")).toBe("25");
194+
});
184195
});

src/lib/object-parser.test.ts

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -259,4 +259,15 @@ describe(ObjectParser.name, () => {
259259
'Key "createdAt" expected instance of DateTimeFormat',
260260
);
261261
});
262+
263+
test("#set sets the value of a key", () => {
264+
let object = { name: "Alice" };
265+
let parser = new ObjectParser(object);
266+
267+
parser.set("name", "Bob");
268+
parser.set("age", 20);
269+
270+
expect(parser.string("name")).toBe("Bob");
271+
expect(parser.number("age")).toBe(20);
272+
});
262273
});

src/lib/search-params-parser.test.ts

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,4 +57,13 @@ describe(SearchParamsParser.name, () => {
5757

5858
expect(() => parser.get("name")).toThrow('Key "name" does not exist');
5959
});
60+
61+
test("#set adds a new key-value pair", () => {
62+
let searchParams = new URLSearchParams();
63+
let parser = new SearchParamsParser(searchParams);
64+
65+
parser.set("name", "Alice");
66+
67+
expect(parser.get("name")).toBe("Alice");
68+
});
6069
});

0 commit comments

Comments
 (0)