SDK to communicate with the Worldline Global Collect platform using the Worldline Connect Server API
Project description
Introduction
The Python SDK helps you to communicate with the Worldline Connect Server API. Its primary features are:
convenient Python library for the API calls and responses
marshalls Python request objects to HTTP requests
unmarshalls HTTP responses to Python response objects or Python exceptions
handling of all the details concerning authentication
handling of required metadata
Its use is demonstrated by an example for each possible call. The examples execute a call using the provided API keys.
See the Worldline Connect Developer Hub for more information on how to use the SDK.
Structure of this repository
This repository consists out of four main components:
The source code of the SDK itself: /worldline/connect/sdk/
The source code of the SDK unit tests: /tests/unit/
The source code of the SDK integration tests: /tests/integration/
Usage examples: /examples/
Note that the source code of the unit tests and integration tests and the examples can only be found on GitHub.
Requirements
Python 2.7 is required. In addition, the following packages are required:
requests 2.25.0 or higher
requests-toolbelt 0.8.0 or higher
These packages will be installed automatically if the SDK is installed manually or using pip following the below instructions.
Installation
To install the SDK using pip, execute the following command:
pip install connect-sdk-python2
Alternatively, you can install the SDK from a source distribution file:
Download the latest version of the Python SDK from GitHub. Choose the connect-sdk-python2-x.y.z.zip file from the releases page, where x.y.z is the version number.
Execute the following command in the folder where the SDK was downloaded to:
pip install connect-sdk-python2-x.y.z.zip
Uninstalling
After the Python SDK has been installed, it can be uninstalled using the following command:
pip uninstall connect-sdk-python2
The required packages can be uninstalled in the same way.
Running tests
There are two types of tests: unit tests and integration tests. The unit tests will work out-of-the-box; for the integration tests some configuration is required. First, some environment variables need to be set:
connect.api.apiKeyId for the API key id to use. This can be retrieved from the Configuration Center.
connect.api.secretApiKey for the secret API key to use. This can be retrieved from the Configuration Center.
connect.api.merchantId for your merchant ID.
In addition, to run the proxy integration tests, the proxy URI, username and password should be set in the tests/resources/configuration.proxy.ini file.
In order to run the unit and integration tests, the mock backport and mockito are required. These can be installed using the following command:
pip install mock 'mockito<1.3.1'
The following commands can now be executed from the tests directory to execute the tests:
Unit tests:
python run_unit_tests.py
Integration tests:
python run_integration_tests.py
Both unit and integration tests:
python run_all_tests.py
Note: in the current version of the unit tests, two errors will pop up ([Errno 10053] for Windows and [Errno 32] for Linux), indicating that there was a client disconnect. These errors occur during cleanup of the tests and do not hinder the tests in any way, and should therefore be ignored.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file connect-sdk-python2-4.2.0.zip
.
File metadata
- Download URL: connect-sdk-python2-4.2.0.zip
- Upload date:
- Size: 517.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.15.0 pkginfo/1.8.3 requests/2.27.1 setuptools/44.1.0 requests-toolbelt/0.10.1 tqdm/4.64.1 CPython/2.7.18
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 60fdd6e9378c14c4dcc092e4b65fd6a4046e7b092cab3074e46d9a5cd10ee2da |
|
MD5 | 2648c95172527260229757f0a8eff8f0 |
|
BLAKE2b-256 | 4d376da4f259a1005386dc566ff85e0717945bc23c2d29a09d964bd01733f38e |