@@ -460,3 +460,38 @@ def test_create_model_field_convert_underscore():
460460
461461 result = _create_model_field (field_info , int , "user_id" , False )
462462 assert result .alias == "user-id"
463+
464+
465+ def test_openapi_with_example_as_list ():
466+ app = APIGatewayRestResolver ()
467+
468+ @app .get ("/users" , summary = "Get Users" , operation_id = "GetUsers" , description = "Get paginated users" , tags = ["Users" ])
469+ def handler (
470+ count : Annotated [
471+ int ,
472+ Query (gt = 0 , lt = 100 , examples = ["Example 1" ]),
473+ ] = 1 ,
474+ ):
475+ print (count )
476+ raise NotImplementedError ()
477+
478+ schema = app .get_openapi_schema ()
479+
480+ get = schema .paths ["/users" ].get
481+ assert len (get .parameters ) == 1
482+ assert get .summary == "Get Users"
483+ assert get .operationId == "GetUsers"
484+ assert get .description == "Get paginated users"
485+ assert get .tags == ["Users" ]
486+
487+ parameter = get .parameters [0 ]
488+ assert parameter .required is False
489+ assert parameter .name == "count"
490+ assert parameter .in_ == ParameterInType .query
491+ assert parameter .schema_ .type == "integer"
492+ assert parameter .schema_ .default == 1
493+ assert parameter .schema_ .title == "Count"
494+ assert parameter .schema_ .exclusiveMinimum == 0
495+ assert parameter .schema_ .exclusiveMaximum == 100
496+ assert len (parameter .schema_ .examples ) == 1
497+ assert parameter .schema_ .examples [0 ] == "Example 1"
0 commit comments