UNPKG

serverless-spy

Version:

CDK-based library for writing elegant integration tests on AWS serverless architecture and an additional web console to monitor events in real time.

19 lines (18 loc) 783 B
import { EventStreamMarshaller as UniversalEventStreamMarshaller } from "@smithy/eventstream-serde-universal"; import { Readable } from "stream"; import { readabletoIterable } from "./utils"; export class EventStreamMarshaller { constructor({ utf8Encoder, utf8Decoder }) { this.universalMarshaller = new UniversalEventStreamMarshaller({ utf8Decoder, utf8Encoder, }); } deserialize(body, deserializer) { const bodyIterable = typeof body[Symbol.asyncIterator] === "function" ? body : readabletoIterable(body); return this.universalMarshaller.deserialize(bodyIterable, deserializer); } serialize(input, serializer) { return Readable.from(this.universalMarshaller.serialize(input, serializer)); } }