This repository was archived by the owner on Feb 20, 2026. It is now read-only.
Description Steps to reproduce:
Add the following to generator/testfiles/requestBodies.yaml:
/testRequestBodySchemaReference :
post :
operationId : testRequestBodySchemaReference
requestBody :
required : true
content :
application/json :
schema :
$ref : ' #/components/schemas/TestRequestBodySchemaReferenceRequest'
responses :
" 201 " :
description : OK
components :
schemas :
TestRequestBodySchemaReferenceRequest :
type : object
properties :
person :
$ref : ' #/components/schemas/Person'
Execute TestFileDescriptorGeneratorRequestBodies to generate an updated .proto file
Observe the following duplication:
message TestRequestBodySchemaReferenceRequest {
Person person = 1 ;
}
message Person {
int64 id = 1 ;
int64 age = 2 ;
string name = 3 ;
repeated string photo_urls = 4 ;
}
//TestRequestBodySchemaReferenceParameters holds parameters to TestRequestBodySchemaReference
message TestRequestBodySchemaReferenceRequest {
TestRequestBodySchemaReferenceRequest test_request_body_schema_reference_request = 1 ;
}
service Requestbodies {
rpc TestRequestBody ( TestRequestBodyRequest ) returns ( google.protobuf.Empty ) {
option (google.api.http ) = { get :"/testRequestBody" body :"person" };
}
rpc TestRequestBodyReference ( TestRequestBodyReferenceRequest ) returns ( google.protobuf.Empty ) {
option (google.api.http ) = { get :"/testRequestBodyReference" body :"person" };
}
rpc TestRequestBodySchemaReference ( TestRequestBodySchemaReferenceRequest ) returns ( google.protobuf.Empty ) {
option (google.api.http ) = { post :"/testRequestBodySchemaReference" body :"test_request_body_schema_reference_request" };
}
}Reactions are currently unavailable