Skip to main content

Python HTTP client for wiremock

Project description

sky-wiremock

https://img.shields.io/pypi/v/sky_wiremock.svg https://img.shields.io/travis/grubert65/sky_wiremock.svg Documentation Status

Python HTTP client for wiremock

Features

Usage:

from sky_wiremock.sky_wiremock import Wiremock

# get a client object
w = Wiremock("localhost", 8080)


# get the list of all mappings defined
mappings = w.mappings()

# get a mapping by its id
mapping = w.mapping_by_id(id)

# get a mapping by its request path and method
mapping = w.mapping_by_url_and_method(url, method)

# add a single mapping and get back its id
id = w.add_mapping({
    "request": {
        "method": "GET",
        "url": "/some/thing"
    },
    "response": {
        "status": 200,
        "body": "Hello world!",
        "headers": {
            "Content-Type": "text/plain"
        }
    }
})

# populate wiremock with a list of mappings and
# get their ids
ids = w.populate([{
    "request": {
        "method": "GET",
        "url": "/some/thing"
    },
    "response": {
        "status": 200,
        "body": "Hello world!",
        "headers": {
            "Content-Type": "text/plain"
        }
    }
},{
    "request": {
        "method": "GET",
        "url": "/some/thing/else"
    },
        "response": {
        "status": 200,
        "body": "Hello world again!",
        "headers": {
            "Content-Type": "text/plain"
        }
    }
}])

# delete a mapping by its id
# returns the deleted mapping id or -1 in
# case of errors
id = w.delete_mapping(id)

# add a fixed delay to a mapping
delayed_id = w.fixed_delay(url, method, 10000)

# add a global fixed delay
ret = w.global_fixed_delay(300)

# add a random delay to a mapping dictionary
delayed_id = w.random_delay(
    filter={
        "method": "GET",
        "url": "/some/thing/to/delay"
    },
    delayDistribution={
        "type": "lognormal",
        "median": 80,
        "sigma": 0.4
    })

# add a global random delay
ret = w.global_random_delay({
    "type": "lognormal",
    "median": 90,
    "sigma": 0.1
})

# add a chunked dribble delay to a mapping
delayed_id = w.chunked_dribble_delay(mapping, {
    "numberOfChunks": 5,
    "totalDuration": 1000
})

# resets a list of mappings deleting all delays attached to them
# returns the list of mapping ids actually reset
ids_up = w.up([{
    "method": "GET",
    "url": "/some/thing/to/delete"
}])

Credits

This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.

History

0.1.0 (2019-02-12)

  • First release on PyPI.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sky_wiremock-0.3.11.tar.gz (14.0 kB view details)

Uploaded Source

File details

Details for the file sky_wiremock-0.3.11.tar.gz.

File metadata

  • Download URL: sky_wiremock-0.3.11.tar.gz
  • Upload date:
  • Size: 14.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.6

File hashes

Hashes for sky_wiremock-0.3.11.tar.gz
Algorithm Hash digest
SHA256 37ad61b5a1b3ad8db9a19a1682b50d0ee3537b30b628d8935a2de94d7049c439
MD5 406abcb01302ec12c8bc98740922db5c
BLAKE2b-256 880166c5d4dbd703ecf91391d62b5d167ca70285c8111e996e543619e078a106

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page