Skip to content

Commit d63db39

Browse files
authored
Merge pull request #112 from hagishi/feature/required-body
feat: set required field when a request body is present
2 parents 5e78190 + eafe5d5 commit d63db39

File tree

2 files changed

+13
-0
lines changed

2 files changed

+13
-0
lines changed

src/utils.ts

+1
Original file line numberDiff line numberDiff line change
@@ -264,6 +264,7 @@ export const registerSchemaPath = ({
264264
...(bodySchema
265265
? {
266266
requestBody: {
267+
required: true,
267268
content: mapTypesResponse(
268269
contentTypes,
269270
typeof bodySchema === 'string'

test/index.test.ts

+12
Original file line numberDiff line numberDiff line change
@@ -156,4 +156,16 @@ describe('Swagger', () => {
156156
response.paths['/null'].get.responses['204'].content
157157
).toBeUndefined()
158158
})
159+
160+
it("should set the required field to true when a request body is present", async () => {
161+
const app = new Elysia().use(swagger()).post("/post", () => {}, {
162+
body: t.Object({ name: t.String() }),
163+
});
164+
165+
const res = await app.handle(req("/swagger/json"));
166+
expect(res.status).toBe(200);
167+
const response = await res.json();
168+
expect(response.paths['/post'].post.requestBody.required).toBe(true);
169+
})
170+
159171
})

0 commit comments

Comments
 (0)