|
@@ -32,85 +32,115 @@ class GetFromBodyParamAttributeTest extends TestCase
|
|
'required' => true,
|
|
'required' => true,
|
|
'description' => 'The id of the user.',
|
|
'description' => 'The id of the user.',
|
|
'example' => 9,
|
|
'example' => 9,
|
|
|
|
+ 'nullable' => false,
|
|
],
|
|
],
|
|
'room_id' => [
|
|
'room_id' => [
|
|
'type' => 'string',
|
|
'type' => 'string',
|
|
'required' => false,
|
|
'required' => false,
|
|
'description' => 'The id of the room.',
|
|
'description' => 'The id of the room.',
|
|
|
|
+ 'nullable' => false,
|
|
],
|
|
],
|
|
'forever' => [
|
|
'forever' => [
|
|
'type' => 'boolean',
|
|
'type' => 'boolean',
|
|
'required' => false,
|
|
'required' => false,
|
|
'description' => 'Whether to ban the user forever.',
|
|
'description' => 'Whether to ban the user forever.',
|
|
'example' => false,
|
|
'example' => false,
|
|
|
|
+ 'nullable' => false,
|
|
],
|
|
],
|
|
'another_one' => [
|
|
'another_one' => [
|
|
'type' => 'number',
|
|
'type' => 'number',
|
|
'required' => false,
|
|
'required' => false,
|
|
'description' => 'Just need something here.',
|
|
'description' => 'Just need something here.',
|
|
|
|
+ 'nullable' => false,
|
|
],
|
|
],
|
|
'yet_another_param' => [
|
|
'yet_another_param' => [
|
|
'type' => 'object',
|
|
'type' => 'object',
|
|
'required' => true,
|
|
'required' => true,
|
|
'description' => 'Some object params.',
|
|
'description' => 'Some object params.',
|
|
|
|
+ 'nullable' => false,
|
|
],
|
|
],
|
|
'yet_another_param.name' => [
|
|
'yet_another_param.name' => [
|
|
'type' => 'string',
|
|
'type' => 'string',
|
|
'description' => '',
|
|
'description' => '',
|
|
'required' => true,
|
|
'required' => true,
|
|
|
|
+ 'nullable' => false,
|
|
],
|
|
],
|
|
'even_more_param' => [
|
|
'even_more_param' => [
|
|
'type' => 'number[]',
|
|
'type' => 'number[]',
|
|
'description' => 'A list of numbers',
|
|
'description' => 'A list of numbers',
|
|
'required' => false,
|
|
'required' => false,
|
|
|
|
+ 'nullable' => false,
|
|
],
|
|
],
|
|
'book' => [
|
|
'book' => [
|
|
'type' => 'object',
|
|
'type' => 'object',
|
|
'description' => 'Book information',
|
|
'description' => 'Book information',
|
|
'required' => false,
|
|
'required' => false,
|
|
|
|
+ 'nullable' => false,
|
|
],
|
|
],
|
|
'book.name' => [
|
|
'book.name' => [
|
|
'type' => 'string',
|
|
'type' => 'string',
|
|
'description' => '',
|
|
'description' => '',
|
|
'required' => true,
|
|
'required' => true,
|
|
|
|
+ 'nullable' => false,
|
|
],
|
|
],
|
|
'book.author_id' => [
|
|
'book.author_id' => [
|
|
'type' => 'integer',
|
|
'type' => 'integer',
|
|
'description' => '',
|
|
'description' => '',
|
|
'required' => true,
|
|
'required' => true,
|
|
|
|
+ 'nullable' => false,
|
|
],
|
|
],
|
|
'book.pages_count' => [
|
|
'book.pages_count' => [
|
|
'type' => 'integer',
|
|
'type' => 'integer',
|
|
'description' => '',
|
|
'description' => '',
|
|
'required' => true,
|
|
'required' => true,
|
|
|
|
+ 'nullable' => false,
|
|
],
|
|
],
|
|
'ids' => [
|
|
'ids' => [
|
|
'type' => 'integer[]',
|
|
'type' => 'integer[]',
|
|
'description' => '',
|
|
'description' => '',
|
|
'required' => true,
|
|
'required' => true,
|
|
|
|
+ 'nullable' => false,
|
|
],
|
|
],
|
|
'state' => [
|
|
'state' => [
|
|
'type' => 'string',
|
|
'type' => 'string',
|
|
'description' => '',
|
|
'description' => '',
|
|
'required' => true,
|
|
'required' => true,
|
|
- 'enumValues' => ["active", "pending"]
|
|
|
|
|
|
+ 'enumValues' => ["active", "pending"],
|
|
|
|
+ 'nullable' => false,
|
|
],
|
|
],
|
|
'users' => [
|
|
'users' => [
|
|
'type' => 'object[]',
|
|
'type' => 'object[]',
|
|
'description' => 'Users\' details',
|
|
'description' => 'Users\' details',
|
|
'required' => false,
|
|
'required' => false,
|
|
|
|
+ 'nullable' => false,
|
|
],
|
|
],
|
|
'users[].first_name' => [
|
|
'users[].first_name' => [
|
|
'type' => 'string',
|
|
'type' => 'string',
|
|
'description' => 'The first name of the user.',
|
|
'description' => 'The first name of the user.',
|
|
'required' => false,
|
|
'required' => false,
|
|
'example' => 'John',
|
|
'example' => 'John',
|
|
|
|
+ 'nullable' => false,
|
|
],
|
|
],
|
|
'users[].last_name' => [
|
|
'users[].last_name' => [
|
|
'type' => 'string',
|
|
'type' => 'string',
|
|
'description' => 'The last name of the user.',
|
|
'description' => 'The last name of the user.',
|
|
'required' => false,
|
|
'required' => false,
|
|
'example' => 'Doe',
|
|
'example' => 'Doe',
|
|
|
|
+ 'nullable' => false,
|
|
|
|
+ ],
|
|
|
|
+ 'note' => [
|
|
|
|
+ 'type' => 'string',
|
|
|
|
+ 'description' => '',
|
|
|
|
+ 'required' => false,
|
|
|
|
+ 'example' => 'This is a note.',
|
|
|
|
+ 'nullable' => true,
|
|
|
|
+ ],
|
|
|
|
+ 'required_note' => [
|
|
|
|
+ 'type' => 'string',
|
|
|
|
+ 'description' => '',
|
|
|
|
+ 'required' => true,
|
|
|
|
+ 'example' => 'This is a note.',
|
|
|
|
+ 'nullable' => false,
|
|
],
|
|
],
|
|
], $results);
|
|
], $results);
|
|
}
|
|
}
|
|
@@ -226,6 +256,8 @@ class BodyParamAttributeTestController
|
|
#[BodyParam("users", "object[]", "Users' details", required: false)]
|
|
#[BodyParam("users", "object[]", "Users' details", required: false)]
|
|
#[BodyParam("users[].first_name", "string", "The first name of the user.", example: "John", required: false)]
|
|
#[BodyParam("users[].first_name", "string", "The first name of the user.", example: "John", required: false)]
|
|
#[BodyParam("users[].last_name", "string", "The last name of the user.", example: "Doe", required: false)]
|
|
#[BodyParam("users[].last_name", "string", "The last name of the user.", example: "Doe", required: false)]
|
|
|
|
+ #[BodyParam("note", example: "This is a note.", required: false, nullable: true)]
|
|
|
|
+ #[BodyParam("required_note", example: "This is a note.", required: true, nullable: true)]
|
|
public function methodWithAttributes()
|
|
public function methodWithAttributes()
|
|
{
|
|
{
|
|
|
|
|