JSPM

lambda-event-mock

2.0.0-beta1
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 19897
  • Score
    100M100P100Q142921F
  • License BSD-3-Clause

Mocks AWS Lambda events

Package Exports

  • lambda-event-mock

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (lambda-event-mock) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

Build Status npm version

lambda-event-mock

Mocking library for testing AWS Lambda events by creating realistic events that contain dynamic data.

Features

  • Easy to use builder-pattern to create mock lambda events for testing
  • Works with lambda-tester
  • Works with Node 10.x

Installation

Install via npm.

npm install lambda-event-mock --save-dev

Getting Started

The following example code creates an s3 lambda event for the object picture1.gif in the my-bucket-uploaded-pictures bucket.

const lambdaEventMock = require( 'lambda-event-mock' );

let myMock = lambdaEventMock.s3()
                .object( 'picture1.gif' )
                .bucket( 'my-bucket-uploaded-pictures' )
                .build();

// myMock contains an s3 event object:
/*
{
  "Records": [
    {
      "eventVersion": "2.0",
      "eventTime": "2018-11-15T20:46:39.446Z",
      "requestParameters": {
        "sourceIPAddress": "127.0.0.1"
      },
      "s3": {
        "configurationId": "testConfigRule",
        "object": {
          "eTag": "0123456789abcdef0123456789abcdef",
          "sequencer": "0A1B2C3D4E5F678901",
          "key": "picture1.gif",
          "size": 1024
        },
        "bucket": {
          "arn": "bucketarn",
          "name": "my-bucket-uploaded-pictures",
          "ownerIdentity": {
            "principalId": "USER"
          }
        },
        "s3SchemaVersion": "1.0"
      },
      "responseElements": {
        "x-amz-id-2": "EXAMPLE123/5678abcdefghijklambdaisawesome/mnopqrstuvwxyzABCDEFGH",
        "x-amz-request-id": "EXAMPLE123456789"
      },
      "awsRegion": "us-east-1",
      "eventName": "ObjectCreated:Put",
      "userIdentity": {
        "principalId": "USER"
      },
      "eventSource": "aws:s3"
    }
  ]
}
*/

Note that lambda-event-mock fills in the time, date, and other properties of the event to create a realistic looking event.

Documentation

For documentation on how to use this module in your project, please see our documentation page.

Feedback

We'd love to get feedback on how you're using lambda-event-mock and things we could add to make this tool better. Feel free to contact us at feedback@vandium.io

License

BSD-3-Clause