Skip to main content

Easily create dummy HTTP servers

Project description

Create fake HTTP servers with simple stanzas.

This module allows you to easily create “dummy” servers from simple descriptive text. Need a dummy server for testing, or maybe the service you’re trying to test doesn’t have a “stage” environment? That’s what this is for.

Installation

You can install the extension with pip like

pip install dumdum

Usage

dumdum is both a command-line utility and a library. It takes a simple _stanza_ format and generates a web server with endpoints from that. E.g. to do “hello world” you could do

printf "
> GET
> /hello
< body world
.
" | dumdum

Then you can test with

% curl http://localhost:8001/hello

> GET /hello HTTP/1.1
> Host: localhost:8001
> User-Agent: curl/7.51.0
> Accept: */*
>
* HTTP 1.0, assume close after body
< HTTP/1.0 200 OK
< Date: Wed, 17 May 2017 18:43:39 GMT
< Server: WSGIServer/0.1 Python/2.7.13
< Content-type: text/plain
< Content-Length: 7

world

This will create a server listening on the default port (8001). Dumdum is a WSGI compliant library, so you can easily serve it from your own code like

from wsgiref.simple_server import make_server
from dumdum import Dumdum

dum = Dumdum("""
> GET
> /hello
< body world
.
""")
srv = make_server('', 5000, dum.server)
srv.serve_forever()

Source and further details can be found at https://github.com/jar-o/dumdum

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

dumdum-0.1.9.tar.gz (7.2 kB view details)

Uploaded Source

File details

Details for the file dumdum-0.1.9.tar.gz.

File metadata

  • Download URL: dumdum-0.1.9.tar.gz
  • Upload date:
  • Size: 7.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for dumdum-0.1.9.tar.gz
Algorithm Hash digest
SHA256 1f09d551cf3601f24758b9d942897cf11ae104d34c4359f56b2cc1c3ce1b8ac4
MD5 4d6767719445783eb2b91c109b81c0b0
BLAKE2b-256 e50a873ce3117b5cc2afb8ddc07ae8a5a4a66aa71e95056d3910c170cc600413

See more details on using hashes here.

Supported by

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