0.0.18 • Published 2 months ago
@awsless/lambda v0.0.18
TODO
- Rename ViewableError to ExpectedError
Basic usage
import { lambda } from "@awsless/lambda";
// simple echo function
export default lambda({
handle(event) {
return event
}
})
import { lambda } from "@awsless/lambda";
import { object, string } from "@awsless/validate";
import { bugsnag } from "@awsless/bugsnag";
export default lambda({
// Validate the input
schema: object({
message: string()
}),
// Log errors to bugsnag
logger: bugsnag(),
handle({ message }) {
return message
}
})
Invoking a lambda
import { lambda, invoke } from "@awsless/lambda";
import { string } from "@awsless/validate";
export const echo = lambda({
schema: string(),
handle(value) {
return value
}
})
export default lambda({
handle() {
// Providing the type definition of the lambda you want to invoke will give you type hinting for the payload and return value.
return invoke<typeof echo>({
name: 'echo',
payload: 'Hi'
})
}
})
Mock invoking lambda's
import { mockLambda } from "@awsless/lambda";
const lambdas = mockLambda({
echo: a => a,
})
it('your test', async () => {
const result = await invoke({
name: 'echo',
payload: 'Hi'
})
expect(result).toBe('Hi')
expect(lambdas.echo).toBeCalled()
})
0.0.16
2 months ago
0.0.17
2 months ago
0.0.18
2 months ago
0.0.15
4 months ago
0.0.14
5 months ago
0.0.10
6 months ago
0.0.11
6 months ago
0.0.12
6 months ago
0.0.13
6 months ago
0.0.9
6 months ago
0.0.8
6 months ago
0.0.7
6 months ago
0.0.5
10 months ago
0.0.6
7 months ago
0.0.4
11 months ago
0.0.3
1 year ago
0.0.2
1 year ago
0.0.1
1 year ago