UNPKG

serverless-offline

Version:

Emulate AWS λ and API Gateway locally when developing your Serverless project

41 lines (36 loc) 943 B
'use strict'; const _ = require('lodash'); const sinon = require('sinon'); module.exports = class ServerlessBuilder { constructor(serverless) { const serverlessDefaults = { service: { provider: { name: 'aws', stage: 'dev', region: 'us-east-1', runtime: 'nodejs4.3', }, functions: {}, getFunction(functionName) { return this.functions[functionName]; }, }, cli: { log: sinon.stub(), }, version: '1.0.2', config: { servicePath: '', }, }; this.serverless = _.merge(serverlessDefaults, serverless); this.serverless.service.getFunction = this.serverless.service.getFunction.bind(this.serverless.service); } addFunction(functionName, functionConfig) { this.serverless.service.functions[functionName] = functionConfig; } toObject() { return this.serverless; } };