mirror of
				https://github.com/OpenAPITools/openapi-generator.git
				synced 2025-11-04 10:43:44 +00:00 
			
		
		
		
	* remove legacy laravel generator * initial setup of my vision for the laravel generator * update the php laravel samples * update php laravel docs * moved api validation into controller and handle edge cases presented by sample generation * updated samples * added php-laravel to github workflow php8 and removed php7 workflow as it only contained old laravel * preemptive work to support union types as soon as php serde supports them * updated samples * update templates in accordance to samples output * fix pipelines and update samples * correct serde version * fixed phpunit execution and updated samples * added named routes * remove * readd samples --------- Co-authored-by: gijs.blanken@futureof.finance <gijs.blanken@finly.nl> Co-authored-by: William Cheng <wing328hk@gmail.com>
		
			
				
	
	
		
			345 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			345 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
<?php declare(strict_types=1);
 | 
						|
 | 
						|
/**
 | 
						|
 * OpenAPI Petstore
 | 
						|
 * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\
 | 
						|
 * PHP version 8.1
 | 
						|
 *
 | 
						|
 * The version of the OpenAPI document: 1.0.0
 | 
						|
 * 
 | 
						|
 *
 | 
						|
 * NOTE: This class is auto generated by OpenAPI-Generator
 | 
						|
 * https://openapi-generator.tech
 | 
						|
 * Do not edit the class manually.
 | 
						|
 *
 | 
						|
 * Source files are located at:
 | 
						|
 *
 | 
						|
 * > https://github.com/OpenAPITools/openapi-generator/blob/master/modules/openapi-generator/src/main/resources/php-laravel/
 | 
						|
 */
 | 
						|
 | 
						|
 | 
						|
use Illuminate\Support\Facades\Route;
 | 
						|
 | 
						|
/**
 | 
						|
 * PATCH call123TestSpecialTags
 | 
						|
 * Summary: To test special tags
 | 
						|
 * Notes: To test special tags and operation ID starting with number
 | 
						|
 */
 | 
						|
Route::PATCH('/v2/another-fake/dummy', [\OpenAPI\Server\Http\Controllers\AnotherFakeController::class, 'call123TestSpecialTags'])->name('anotherFake.call123.test.special.tags');
 | 
						|
 | 
						|
/**
 | 
						|
 * GET fooGet
 | 
						|
 * Summary: 
 | 
						|
 * Notes: 
 | 
						|
 */
 | 
						|
Route::GET('/v2/foo', [\OpenAPI\Server\Http\Controllers\DefaultController::class, 'fooGet'])->name('default.foo.get');
 | 
						|
 | 
						|
/**
 | 
						|
 * GET fakeBigDecimalMap
 | 
						|
 * Summary: 
 | 
						|
 * Notes: for Java apache and Java native, test toUrlQueryString for maps with BegDecimal keys
 | 
						|
 */
 | 
						|
Route::GET('/v2/fake/BigDecimalMap', [\OpenAPI\Server\Http\Controllers\FakeController::class, 'fakeBigDecimalMap'])->name('fake.fake.big.decimal.map');
 | 
						|
 | 
						|
/**
 | 
						|
 * GET fakeHealthGet
 | 
						|
 * Summary: Health check endpoint
 | 
						|
 * Notes: 
 | 
						|
 */
 | 
						|
Route::GET('/v2/fake/health', [\OpenAPI\Server\Http\Controllers\FakeController::class, 'fakeHealthGet'])->name('fake.fake.health.get');
 | 
						|
 | 
						|
/**
 | 
						|
 * GET fakeHttpSignatureTest
 | 
						|
 * Summary: test http signature authentication
 | 
						|
 * Notes: 
 | 
						|
 */
 | 
						|
Route::GET('/v2/fake/http-signature-test', [\OpenAPI\Server\Http\Controllers\FakeController::class, 'fakeHttpSignatureTest'])->name('fake.fake.http.signature.test');
 | 
						|
 | 
						|
/**
 | 
						|
 * POST fakeOuterBooleanSerialize
 | 
						|
 * Summary: 
 | 
						|
 * Notes: Test serialization of outer boolean types
 | 
						|
 */
 | 
						|
Route::POST('/v2/fake/outer/boolean', [\OpenAPI\Server\Http\Controllers\FakeController::class, 'fakeOuterBooleanSerialize'])->name('fake.fake.outer.boolean.serialize');
 | 
						|
 | 
						|
/**
 | 
						|
 * POST fakeOuterCompositeSerialize
 | 
						|
 * Summary: 
 | 
						|
 * Notes: Test serialization of object with outer number type
 | 
						|
 */
 | 
						|
Route::POST('/v2/fake/outer/composite', [\OpenAPI\Server\Http\Controllers\FakeController::class, 'fakeOuterCompositeSerialize'])->name('fake.fake.outer.composite.serialize');
 | 
						|
 | 
						|
/**
 | 
						|
 * POST fakeOuterNumberSerialize
 | 
						|
 * Summary: 
 | 
						|
 * Notes: Test serialization of outer number types
 | 
						|
 */
 | 
						|
Route::POST('/v2/fake/outer/number', [\OpenAPI\Server\Http\Controllers\FakeController::class, 'fakeOuterNumberSerialize'])->name('fake.fake.outer.number.serialize');
 | 
						|
 | 
						|
/**
 | 
						|
 * POST fakeOuterStringSerialize
 | 
						|
 * Summary: 
 | 
						|
 * Notes: Test serialization of outer string types
 | 
						|
 */
 | 
						|
Route::POST('/v2/fake/outer/string', [\OpenAPI\Server\Http\Controllers\FakeController::class, 'fakeOuterStringSerialize'])->name('fake.fake.outer.string.serialize');
 | 
						|
 | 
						|
/**
 | 
						|
 * POST fakePropertyEnumIntegerSerialize
 | 
						|
 * Summary: 
 | 
						|
 * Notes: Test serialization of enum (int) properties with examples
 | 
						|
 */
 | 
						|
Route::POST('/v2/fake/property/enum-int', [\OpenAPI\Server\Http\Controllers\FakeController::class, 'fakePropertyEnumIntegerSerialize'])->name('fake.fake.property.enum.integer.serialize');
 | 
						|
 | 
						|
/**
 | 
						|
 * POST testAdditionalPropertiesReference
 | 
						|
 * Summary: test referenced additionalProperties
 | 
						|
 * Notes: 
 | 
						|
 */
 | 
						|
Route::POST('/v2/fake/additionalProperties-reference', [\OpenAPI\Server\Http\Controllers\FakeController::class, 'testAdditionalPropertiesReference'])->name('fake.test.additional.properties.reference');
 | 
						|
 | 
						|
/**
 | 
						|
 * PUT testBodyWithBinary
 | 
						|
 * Summary: 
 | 
						|
 * Notes: For this test, the body has to be a binary file.
 | 
						|
 */
 | 
						|
Route::PUT('/v2/fake/body-with-binary', [\OpenAPI\Server\Http\Controllers\FakeController::class, 'testBodyWithBinary'])->name('fake.test.body.with.binary');
 | 
						|
 | 
						|
/**
 | 
						|
 * PUT testBodyWithFileSchema
 | 
						|
 * Summary: 
 | 
						|
 * Notes: For this test, the body for this request must reference a schema named `File`.
 | 
						|
 */
 | 
						|
Route::PUT('/v2/fake/body-with-file-schema', [\OpenAPI\Server\Http\Controllers\FakeController::class, 'testBodyWithFileSchema'])->name('fake.test.body.with.file.schema');
 | 
						|
 | 
						|
/**
 | 
						|
 * PUT testBodyWithQueryParams
 | 
						|
 * Summary: 
 | 
						|
 * Notes: 
 | 
						|
 */
 | 
						|
Route::PUT('/v2/fake/body-with-query-params', [\OpenAPI\Server\Http\Controllers\FakeController::class, 'testBodyWithQueryParams'])->name('fake.test.body.with.query.params');
 | 
						|
 | 
						|
/**
 | 
						|
 * PATCH testClientModel
 | 
						|
 * Summary: To test \"client\" model
 | 
						|
 * Notes: To test \"client\" model
 | 
						|
 */
 | 
						|
Route::PATCH('/v2/fake', [\OpenAPI\Server\Http\Controllers\FakeController::class, 'testClientModel'])->name('fake.test.client.model');
 | 
						|
 | 
						|
/**
 | 
						|
 * POST testEndpointParameters
 | 
						|
 * Summary: Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트
 | 
						|
 * Notes: Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트
 | 
						|
 */
 | 
						|
Route::POST('/v2/fake', [\OpenAPI\Server\Http\Controllers\FakeController::class, 'testEndpointParameters'])->name('fake.test.endpoint.parameters');
 | 
						|
 | 
						|
/**
 | 
						|
 * GET testEnumParameters
 | 
						|
 * Summary: To test enum parameters
 | 
						|
 * Notes: To test enum parameters
 | 
						|
 */
 | 
						|
Route::GET('/v2/fake', [\OpenAPI\Server\Http\Controllers\FakeController::class, 'testEnumParameters'])->name('fake.test.enum.parameters');
 | 
						|
 | 
						|
/**
 | 
						|
 * DELETE testGroupParameters
 | 
						|
 * Summary: Fake endpoint to test group parameters (optional)
 | 
						|
 * Notes: Fake endpoint to test group parameters (optional)
 | 
						|
 */
 | 
						|
Route::DELETE('/v2/fake', [\OpenAPI\Server\Http\Controllers\FakeController::class, 'testGroupParameters'])->name('fake.test.group.parameters');
 | 
						|
 | 
						|
/**
 | 
						|
 * POST testInlineAdditionalProperties
 | 
						|
 * Summary: test inline additionalProperties
 | 
						|
 * Notes: 
 | 
						|
 */
 | 
						|
Route::POST('/v2/fake/inline-additionalProperties', [\OpenAPI\Server\Http\Controllers\FakeController::class, 'testInlineAdditionalProperties'])->name('fake.test.inline.additional.properties');
 | 
						|
 | 
						|
/**
 | 
						|
 * POST testInlineFreeformAdditionalProperties
 | 
						|
 * Summary: test inline free-form additionalProperties
 | 
						|
 * Notes: 
 | 
						|
 */
 | 
						|
Route::POST('/v2/fake/inline-freeform-additionalProperties', [\OpenAPI\Server\Http\Controllers\FakeController::class, 'testInlineFreeformAdditionalProperties'])->name('fake.test.inline.freeform.additional.properties');
 | 
						|
 | 
						|
/**
 | 
						|
 * GET testJsonFormData
 | 
						|
 * Summary: test json serialization of form data
 | 
						|
 * Notes: 
 | 
						|
 */
 | 
						|
Route::GET('/v2/fake/jsonFormData', [\OpenAPI\Server\Http\Controllers\FakeController::class, 'testJsonFormData'])->name('fake.test.json.form.data');
 | 
						|
 | 
						|
/**
 | 
						|
 * POST testNullable
 | 
						|
 * Summary: test nullable parent property
 | 
						|
 * Notes: 
 | 
						|
 */
 | 
						|
Route::POST('/v2/fake/nullable', [\OpenAPI\Server\Http\Controllers\FakeController::class, 'testNullable'])->name('fake.test.nullable');
 | 
						|
 | 
						|
/**
 | 
						|
 * PUT testQueryParameterCollectionFormat
 | 
						|
 * Summary: 
 | 
						|
 * Notes: To test the collection format in query parameters
 | 
						|
 */
 | 
						|
Route::PUT('/v2/fake/test-query-parameters', [\OpenAPI\Server\Http\Controllers\FakeController::class, 'testQueryParameterCollectionFormat'])->name('fake.test.query.parameter.collection.format');
 | 
						|
 | 
						|
/**
 | 
						|
 * POST testStringMapReference
 | 
						|
 * Summary: test referenced string map
 | 
						|
 * Notes: 
 | 
						|
 */
 | 
						|
Route::POST('/v2/fake/stringMap-reference', [\OpenAPI\Server\Http\Controllers\FakeController::class, 'testStringMapReference'])->name('fake.test.string.map.reference');
 | 
						|
 | 
						|
/**
 | 
						|
 * PATCH testClassname
 | 
						|
 * Summary: To test class name in snake case
 | 
						|
 * Notes: To test class name in snake case
 | 
						|
 */
 | 
						|
Route::PATCH('/v2/fake_classname_test', [\OpenAPI\Server\Http\Controllers\FakeClassnameTags123Controller::class, 'testClassname'])->name('fakeClassnameTags123.test.classname');
 | 
						|
 | 
						|
/**
 | 
						|
 * POST addPet
 | 
						|
 * Summary: Add a new pet to the store
 | 
						|
 * Notes: 
 | 
						|
 */
 | 
						|
Route::POST('/v2/pet', [\OpenAPI\Server\Http\Controllers\PetController::class, 'addPet'])->name('pet.add.pet');
 | 
						|
 | 
						|
/**
 | 
						|
 * DELETE deletePet
 | 
						|
 * Summary: Deletes a pet
 | 
						|
 * Notes: 
 | 
						|
 */
 | 
						|
Route::DELETE('/v2/pet/{petId}', [\OpenAPI\Server\Http\Controllers\PetController::class, 'deletePet'])->name('pet.delete.pet');
 | 
						|
 | 
						|
/**
 | 
						|
 * GET findPetsByStatus
 | 
						|
 * Summary: Finds Pets by status
 | 
						|
 * Notes: Multiple status values can be provided with comma separated strings
 | 
						|
 */
 | 
						|
Route::GET('/v2/pet/findByStatus', [\OpenAPI\Server\Http\Controllers\PetController::class, 'findPetsByStatus'])->name('pet.find.pets.by.status');
 | 
						|
 | 
						|
/**
 | 
						|
 * GET findPetsByTags
 | 
						|
 * Summary: Finds Pets by tags
 | 
						|
 * Notes: Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.
 | 
						|
 */
 | 
						|
Route::GET('/v2/pet/findByTags', [\OpenAPI\Server\Http\Controllers\PetController::class, 'findPetsByTags'])->name('pet.find.pets.by.tags');
 | 
						|
 | 
						|
/**
 | 
						|
 * GET getPetById
 | 
						|
 * Summary: Find pet by ID
 | 
						|
 * Notes: Returns a single pet
 | 
						|
 */
 | 
						|
Route::GET('/v2/pet/{petId}', [\OpenAPI\Server\Http\Controllers\PetController::class, 'getPetById'])->name('pet.get.pet.by.id');
 | 
						|
 | 
						|
/**
 | 
						|
 * PUT updatePet
 | 
						|
 * Summary: Update an existing pet
 | 
						|
 * Notes: 
 | 
						|
 */
 | 
						|
Route::PUT('/v2/pet', [\OpenAPI\Server\Http\Controllers\PetController::class, 'updatePet'])->name('pet.update.pet');
 | 
						|
 | 
						|
/**
 | 
						|
 * POST updatePetWithForm
 | 
						|
 * Summary: Updates a pet in the store with form data
 | 
						|
 * Notes: 
 | 
						|
 */
 | 
						|
Route::POST('/v2/pet/{petId}', [\OpenAPI\Server\Http\Controllers\PetController::class, 'updatePetWithForm'])->name('pet.update.pet.with.form');
 | 
						|
 | 
						|
/**
 | 
						|
 * POST uploadFile
 | 
						|
 * Summary: uploads an image
 | 
						|
 * Notes: 
 | 
						|
 */
 | 
						|
Route::POST('/v2/pet/{petId}/uploadImage', [\OpenAPI\Server\Http\Controllers\PetController::class, 'uploadFile'])->name('pet.upload.file');
 | 
						|
 | 
						|
/**
 | 
						|
 * POST uploadFileWithRequiredFile
 | 
						|
 * Summary: uploads an image (required)
 | 
						|
 * Notes: 
 | 
						|
 */
 | 
						|
Route::POST('/v2/fake/{petId}/uploadImageWithRequiredFile', [\OpenAPI\Server\Http\Controllers\PetController::class, 'uploadFileWithRequiredFile'])->name('pet.upload.file.with.required.file');
 | 
						|
 | 
						|
/**
 | 
						|
 * DELETE deleteOrder
 | 
						|
 * Summary: Delete purchase order by ID
 | 
						|
 * Notes: For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors
 | 
						|
 */
 | 
						|
Route::DELETE('/v2/store/order/{order_id}', [\OpenAPI\Server\Http\Controllers\StoreController::class, 'deleteOrder'])->name('store.delete.order');
 | 
						|
 | 
						|
/**
 | 
						|
 * GET getInventory
 | 
						|
 * Summary: Returns pet inventories by status
 | 
						|
 * Notes: Returns a map of status codes to quantities
 | 
						|
 */
 | 
						|
Route::GET('/v2/store/inventory', [\OpenAPI\Server\Http\Controllers\StoreController::class, 'getInventory'])->name('store.get.inventory');
 | 
						|
 | 
						|
/**
 | 
						|
 * GET getOrderById
 | 
						|
 * Summary: Find purchase order by ID
 | 
						|
 * Notes: For valid response try integer IDs with value <= 5 or > 10. Other values will generate exceptions
 | 
						|
 */
 | 
						|
Route::GET('/v2/store/order/{order_id}', [\OpenAPI\Server\Http\Controllers\StoreController::class, 'getOrderById'])->name('store.get.order.by.id');
 | 
						|
 | 
						|
/**
 | 
						|
 * POST placeOrder
 | 
						|
 * Summary: Place an order for a pet
 | 
						|
 * Notes: 
 | 
						|
 */
 | 
						|
Route::POST('/v2/store/order', [\OpenAPI\Server\Http\Controllers\StoreController::class, 'placeOrder'])->name('store.place.order');
 | 
						|
 | 
						|
/**
 | 
						|
 * POST createUser
 | 
						|
 * Summary: Create user
 | 
						|
 * Notes: This can only be done by the logged in user.
 | 
						|
 */
 | 
						|
Route::POST('/v2/user', [\OpenAPI\Server\Http\Controllers\UserController::class, 'createUser'])->name('user.create.user');
 | 
						|
 | 
						|
/**
 | 
						|
 * POST createUsersWithArrayInput
 | 
						|
 * Summary: Creates list of users with given input array
 | 
						|
 * Notes: 
 | 
						|
 */
 | 
						|
Route::POST('/v2/user/createWithArray', [\OpenAPI\Server\Http\Controllers\UserController::class, 'createUsersWithArrayInput'])->name('user.create.users.with.array.input');
 | 
						|
 | 
						|
/**
 | 
						|
 * POST createUsersWithListInput
 | 
						|
 * Summary: Creates list of users with given input array
 | 
						|
 * Notes: 
 | 
						|
 */
 | 
						|
Route::POST('/v2/user/createWithList', [\OpenAPI\Server\Http\Controllers\UserController::class, 'createUsersWithListInput'])->name('user.create.users.with.list.input');
 | 
						|
 | 
						|
/**
 | 
						|
 * DELETE deleteUser
 | 
						|
 * Summary: Delete user
 | 
						|
 * Notes: This can only be done by the logged in user.
 | 
						|
 */
 | 
						|
Route::DELETE('/v2/user/{username}', [\OpenAPI\Server\Http\Controllers\UserController::class, 'deleteUser'])->name('user.delete.user');
 | 
						|
 | 
						|
/**
 | 
						|
 * GET getUserByName
 | 
						|
 * Summary: Get user by user name
 | 
						|
 * Notes: 
 | 
						|
 */
 | 
						|
Route::GET('/v2/user/{username}', [\OpenAPI\Server\Http\Controllers\UserController::class, 'getUserByName'])->name('user.get.user.by.name');
 | 
						|
 | 
						|
/**
 | 
						|
 * GET loginUser
 | 
						|
 * Summary: Logs user into the system
 | 
						|
 * Notes: 
 | 
						|
 */
 | 
						|
Route::GET('/v2/user/login', [\OpenAPI\Server\Http\Controllers\UserController::class, 'loginUser'])->name('user.login.user');
 | 
						|
 | 
						|
/**
 | 
						|
 * GET logoutUser
 | 
						|
 * Summary: Logs out current logged in user session
 | 
						|
 * Notes: 
 | 
						|
 */
 | 
						|
Route::GET('/v2/user/logout', [\OpenAPI\Server\Http\Controllers\UserController::class, 'logoutUser'])->name('user.logout.user');
 | 
						|
 | 
						|
/**
 | 
						|
 * PUT updateUser
 | 
						|
 * Summary: Updated user
 | 
						|
 * Notes: This can only be done by the logged in user.
 | 
						|
 */
 | 
						|
Route::PUT('/v2/user/{username}', [\OpenAPI\Server\Http\Controllers\UserController::class, 'updateUser'])->name('user.update.user');
 | 
						|
 |