Jim Schubert 60ceded171
[ci][cli] Moving ensures script to config-based batch generation of samples (#6509)
* Ensure CLI-level generator settings are available in additional properties

* Initial conversion to yaml configs

Configs prefix with 1- need to be manually evaluated.

* Add "other" configs not in ensure-up-to-date

* Add other/openapi3 files

* Cleanup all generation scripts

* Clean up: add missed configs and fix some openapi 3 diffs

* Move generate-samples script, error on batch failures

* Temporarily disable elm which requires skip validation of spec

* CI updates (todo: run all generators through appveyor or move to github workflows)

* Add success count to batch generation command output

* [samples] Regenerate

* Remove bin/windows

* Generate swift5 samples in bitrise

* Expand user input glob pattern

* Regenerate samples

* Update PR template

* Support config based generateAliasAsModel

* [samples] Regenerate

* [rust] Generate as alias for all samples configs

* [csharp] Move test staged file changes to in-directory

* Include "live" test files and ignore test cache files from samples.ci

* Remove concept of samples.ci staging

Generators support .openapi-generator-ignore, allowing maintainers to
explicitly ignore the regeneration of files which have been modified.

Note that the tooling does not overwrite test files whenever those files
exist, and it's not entirely necessary to add test files to the ignore
file.

* Re-add meta generator scripts

* Modify ensure-up-to-date to log stdout, so script does not look like it hangs on slower machines

* [csharp] Regenerate sample

* Set generateAliasAsModel CodegenConfigurator#toContext

This ensures the property (which is effectively a thread-local) gets set
as expected if the caller resets GlobalSettings as is done in the
GenerateBatch command.

* [rust] Regenerate samples

* Re-enable elm

* [java] Support OffsetDateTime example, fail ensures script on any generation error

* [samples] Regenerate

* Fix jersey2-java8 ignore file

* Fix elm spec validation

* Force UTC in sample generation to avoid timezone conflicts during generation (user vs ci)

Co-authored-by: William Cheng <wing328hk@gmail.com>
2020-06-09 18:28:58 +08:00
..

OpenAPI Petstore API Client

This is a sample server Petstore server. For this sample, you can use the api key special-key to test the authorization filters.

Requirements

If everything is set correctly:

  • Running sfdx version in a command prompt should output something like:

    sfdx-cli/5.7.5-05549de (darwin-amd64) go1.7.5 sfdxstable
    

Installation

  1. Copy the output into your Salesforce DX folder - or alternatively deploy the output directly into the workspace.

  2. Deploy the code via Salesforce DX to your Scratch Org

       sfdx force:source:push
    
  3. If the API needs authentication update the Named Credential in Setup.

  4. Run your Apex tests using

        sfdx sfdx force:apex:test:run
    
  5. Retrieve the job id from the console and check the test results.

sfdx force:apex:test:report -i theJobId

Getting Started

Please follow the installation instruction and execute the following Apex code:

OASPetApi api = new OASPetApi();
OASClient client = api.getClient();


Map<String, Object> params = new Map<String, Object>{
    'oaSPet' => ''
};

try {
    // cross your fingers
    OASPet result = api.addPet(params);
    System.debug(result);
} catch (OAS.ApiException e) {
    // ...handle your exceptions
}

Documentation for API Endpoints

All URIs are relative to http://petstore.swagger.io/v2

Class Method HTTP request Description
OASPetApi addPet POST /pet Add a new pet to the store
OASPetApi deletePet DELETE /pet/{petId} Deletes a pet
OASPetApi findPetsByStatus GET /pet/findByStatus Finds Pets by status
OASPetApi findPetsByTags GET /pet/findByTags Finds Pets by tags
OASPetApi getPetById GET /pet/{petId} Find pet by ID
OASPetApi updatePet PUT /pet Update an existing pet
OASPetApi updatePetWithForm POST /pet/{petId} Updates a pet in the store with form data
OASPetApi uploadFile POST /pet/{petId}/uploadImage uploads an image
OASStoreApi deleteOrder DELETE /store/order/{orderId} Delete purchase order by ID
OASStoreApi getInventory GET /store/inventory Returns pet inventories by status
OASStoreApi getOrderById GET /store/order/{orderId} Find purchase order by ID
OASStoreApi placeOrder POST /store/order Place an order for a pet
OASUserApi createUser POST /user Create user
OASUserApi createUsersWithArrayInput POST /user/createWithArray Creates list of users with given input array
OASUserApi createUsersWithListInput POST /user/createWithList Creates list of users with given input array
OASUserApi deleteUser DELETE /user/{username} Delete user
OASUserApi getUserByName GET /user/{username} Get user by user name
OASUserApi loginUser GET /user/login Logs user into the system
OASUserApi logoutUser GET /user/logout Logs out current logged in user session
OASUserApi updateUser PUT /user/{username} Updated user

Documentation for Models

Documentation for Authorization

Authentication schemes defined for the API:

api_key

  • Type: API key
  • API key parameter name: api_key
  • Location: HTTP header

petstore_auth

Author