Skip to content

Locally invoke Serverless functions via their HTTP event as specified in Serverless.yml for testing purposes.

License

Notifications You must be signed in to change notification settings

casualuser/serverless-http-invoker

 
 

Repository files navigation

npm version license Build Status JavaScript Style Guide

serverless-http-invoker

Locally invoke Serverless functions via their HTTP event as specified in Serverless.yml.

It makes it easy to test not only your handler logic, but also ensures that you have your http events setup properly in serverless.yml without deploying.

Usage

Use it in tests of Serverless functions to test your HTTP endpoints along with the handler code. For example, you can write the following to test a Serverless function:

it('should invoke simple path', function () {
  let response = invoker.invoke('GET api/hello')  
  return expect(response).to.eventually.have.property('statusCode', 200)
})

The test above is a test of a Serverless function defined in Serverless.yml as follows:

functions:
  hello:
    handler: handler.hello
    events:
      - http:
          path: api/hello
          method: get

Many more examples and exaustive list of what is supported in the tests. Some additional real-world examples are demonstrated in the sheetmonkey-server project. See PluginsHandler.js and PluginAuthHandler.js among others.

Installation

npm (npm install serverless-http-invoker --save-dev) or yarn (yarn add serverless-http-invoker --dev)

About

Locally invoke Serverless functions via their HTTP event as specified in Serverless.yml for testing purposes.

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%