Skip to content

Worldline-Global-Collect/connect-sdk-python2

Repository files navigation

Worldline Connect Python SDK

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:

  1. The source code of the SDK itself: /worldline/connect/sdk/
  2. The source code of the SDK unit tests: /tests/unit/
  3. The source code of the SDK integration tests: /tests/integration/
  4. 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:

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:

  1. 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.

  2. 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.