Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

AWS Cognito Mock

I want to write BDD tests for my nodejs based API which uses AWS cognito as user authentication service, but I don't want to hit the real cognito service every time my build runs.

Is there an easy and elegant way to mock Cognito calls.

Used frameworks :

  • Nodejs (Hapi.js)
  • aws-sdk for nodejs
like image 648
amgohan Avatar asked Jan 26 '16 06:01

amgohan


1 Answers

We have created an aws-sdk-mock npm module which mocks out all the AWS SDK services and methods. https://github.com/dwyl/aws-sdk-mock

It's really easy to use. Just call AWS.mock with the service, method and a stub function.

AWS.mock('CognitoIdentityServiceProvider', 'theCallYouWantToMock', function(params, callback) {
    callback(null, 'success');
});

Then restore the methods after your tests by calling:

AWS.restore('CognitoIdentityServiceProvider', 'theCallYouWantToMock');
like image 170
jruts Avatar answered Sep 29 '22 04:09

jruts