zahra-mapping / rose-test-sdk
Eiusmod facilis quis
Requires
- php: ^7.2 || ^8.0
- ext-curl: *
- ext-json: *
- apimatic/core: ~0.3.13
- apimatic/core-interfaces: ~0.1.5
- apimatic/unirest-php: ^4.0.6
Requires (Dev)
- phan/phan: 5.4.5
- phpunit/phpunit: ^7.5 || ^8.5 || ^9.5
- squizlabs/php_codesniffer: ^3.5
This package is not auto-updated.
Last update: 2025-09-13 08:35:35 UTC
README
Introduction
This is a sample server Petstore server. You can find out more about Swagger at http://swagger.io or on irc.freenode.net, #swagger. For this sample, you can use the api key special-key
to test the authorization filters.
Find out more about Swagger: http://swagger.io
Install the Package
Run the following command to install the package and automatically add the dependency to your composer.json file:
composer require "zahra-mapping/rose-test-sdk:0.1.0"
Or add it to the composer.json file manually as given below:
"require": { "zahra-mapping/rose-test-sdk": "0.1.0" }
You can also view the package at: https://packagist.org/packages/zahra-mapping/rose-test-sdk#0.1.0
Test the SDK
Unit tests in this SDK can be run using PHPUnit.
- First install the dependencies using composer including the
require-dev
dependencies. - Run
vendor\bin\phpunit --verbose
from commandline to execute tests. If you have installed PHPUnit globally, run tests usingphpunit --verbose
instead.
You can change the PHPUnit test configuration in the phpunit.xml
file.
Initialize the API Client
Note: Documentation for the client can be found here.
The following parameters are configurable for the API Client:
Parameter | Type | Description |
---|---|---|
testHeader | string |
This is a test header Default: 'TestHeaderDefaultValue' |
environment | Environment |
The API environment. Default: Environment.PRODUCTION |
timeout | int |
Timeout for API calls in seconds. Default: 0 |
enableRetries | bool |
Whether to enable retries and backoff feature. Default: false |
numberOfRetries | int |
The number of retries to make. Default: 0 |
retryInterval | float |
The retry time interval between the endpoint calls. Default: 1 |
backOffFactor | float |
Exponential backoff factor to increase interval between retries. Default: 2 |
maximumRetryWaitTime | int |
The maximum wait time in seconds for overall retrying requests. Default: 0 |
retryOnTimeout | bool |
Whether to retry on request timeout. Default: true |
httpStatusCodesToRetry | array |
Http status codes to retry against. Default: 408, 413, 429, 500, 502, 503, 504, 521, 522, 524 |
httpMethodsToRetry | array |
Http methods to retry against. Default: 'GET', 'PUT' |
proxyConfiguration | ProxyConfigurationBuilder |
Represents the proxy configurations for API calls |
apiKeyCredentials | ApiKeyCredentials |
The Credentials Setter for Custom Header Signature |
httpBasicCredentials | HttpBasicCredentials |
The Credentials Setter for Basic Authentication |
petstoreAuthCredentials | PetstoreAuthCredentials |
The Credentials Setter for OAuth 2 Implicit Grant |
The API client can be initialized as follows:
use SwaggerPetstoreLib\Environment; use SwaggerPetstoreLib\Authentication\ApiKeyCredentialsBuilder; use SwaggerPetstoreLib\Authentication\HttpBasicCredentialsBuilder; use SwaggerPetstoreLib\Authentication\PetstoreAuthCredentialsBuilder; use SwaggerPetstoreLib\Models\OAuthScopePetstoreAuthEnum; use SwaggerPetstoreLib\SwaggerPetstoreClientBuilder; $client = SwaggerPetstoreClientBuilder::init() ->apiKeyCredentials( ApiKeyCredentialsBuilder::init( 'api_key' ) ) ->httpBasicCredentials( HttpBasicCredentialsBuilder::init( 'username', 'passwprd' ) ) ->petstoreAuthCredentials( PetstoreAuthCredentialsBuilder::init( 'OAuthClientId', 'OAuthRedirectUri' ) ->oAuthScopes( [ OAuthScopePetstoreAuthEnum::READPETS, OAuthScopePetstoreAuthEnum::WRITEPETS ] ) ) ->testHeader('TestHeaderDefaultValue') ->environment(Environment::PRODUCTION) ->build();
Environments
The SDK can be configured to use a different environment for making API calls. Available environments are:
Fields
Name | Description |
---|---|
production | Default |
environment2 | - |
environment3 | - |
Authorization
This API uses the following authentication schemes.
api_key (Custom Header Signature)
httpBasic (Basic Authentication)
petstore_auth (OAuth 2 Implicit Grant)