Skip to main content

A small library that includes details mocks of AWS Lambda event sources, Python implementation.

Project description

py-event-mocks

Python implementation of serverless / event-mocks

A small library that includes details mocks of AWS Lambda event sources, same with original event-mocks. Useful for use when unit testing your Lambda functions. Supported Event Sources are:

  • API Gateway
  • SNS
  • SQS
  • DynamoDB
  • S3
  • Scheduled
  • Websocket
  • Alexa Skill
  • Alexa Smart Home
  • CloudWatch
  • CloudWatch Log
  • Cognito Pool
  • IoT
  • AWS Batch

The library simply uses default event source mock templates and merge it with any overwrite you provide. Check out the JSON template files to learn more about the data structure of each event source.

Set up

pip install py-event-mocks

Usage

from py_event_mocks import create_event

event = create_event("aws:s3")

# event would be
#   {
#     "Records": [
#       {
#         "eventVersion": "2.0",
#         "eventSource": "aws:s3",
#         "awsRegion": "us-east-1",
#     ...
#   }

Allowed event_type (first parameter) is as follows:

  • "aws:alexa-skill-event"
  • "aws:alexa-smart-home-event"
  • "aws:api-gateway-event"
  • "aws:cloud-watch-event"
  • "aws:cloud-watch-log-event"
  • "aws:cognito-user-pool-event"
  • "aws:dynamo-stream-event"
  • "aws:kinesis"
  • "aws:s3"
  • "aws:scheduled"
  • "aws:sns"
  • "aws:sqs"

You can overwrite default template with "body" parameter.

event = create_event(
    event_type="aws:s3",
    body={
      "Records": [{
        "eventName": "ObjectCreated:Put",
        "s3": {
          "bucket": {
            "name": "my-bucket-name"
          },
          "object": {
            "key": "object-key"
          }
        }
      }]
    }
)

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

py-event-mocks-0.0.4.tar.gz (9.4 kB view hashes)

Uploaded Source

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