UNPKG

@aptpod/iscp-ts

Version:

iSCP 2.0 client library for TypeScript

105 lines 2.91 kB
import { ISCPMalformedMessageError } from '../../exceptions'; import { DataId, QOS, UpstreamOpenRequest, UpstreamOpenRequestExtensionFields } from '../../message'; import { QoS as QoSPb } from '../codegen/common'; const WIRE_UPSTREAM_OPEN_REQUEST = new UpstreamOpenRequest({ requestId: 100, sessionId: 'sessionId', expiryInterval: 200, dataIds: [new DataId({ name: 'name', type: 'type' })], qos: QOS.RELIABLE, ackInterval: 300, extensionFields: undefined, }); const PROTO_UPSTREAM_OPEN_REQUEST = { requestId: 100, sessionId: 'sessionId', expiryInterval: 200, dataIds: [ { name: 'name', type: 'type', }, ], qos: QoSPb.RELIABLE, ackInterval: 300, extensionFields: undefined, }; export const withoutExtensionFields = { toWire: () => { return new UpstreamOpenRequest({ ...WIRE_UPSTREAM_OPEN_REQUEST, }); }, toProto: () => { return { message: { oneofKind: 'upstreamOpenRequest', upstreamOpenRequest: { ...PROTO_UPSTREAM_OPEN_REQUEST, }, }, }; }, }; export const withExtensionFields = { toWire: () => { return new UpstreamOpenRequest({ ...WIRE_UPSTREAM_OPEN_REQUEST, extensionFields: new UpstreamOpenRequestExtensionFields({ persist: true, }), }); }, toProto: () => { return { message: { oneofKind: 'upstreamOpenRequest', upstreamOpenRequest: { ...PROTO_UPSTREAM_OPEN_REQUEST, extensionFields: { persist: true, }, }, }, }; }, }; export const invalidWire = { qos: { toWire: () => { return new UpstreamOpenRequest({ ...WIRE_UPSTREAM_OPEN_REQUEST, // @ts-ignore qos: 9999, }); }, toErrorClass: () => { return ISCPMalformedMessageError; }, toError: () => { return new (invalidWire.qos.toErrorClass())('Unrecognized qos.'); }, }, }; export const invalidProto = { qos: { toProto: () => { return { message: { oneofKind: 'upstreamOpenRequest', upstreamOpenRequest: { ...PROTO_UPSTREAM_OPEN_REQUEST, qos: 9999, }, }, }; }, toErrorClass: () => { return ISCPMalformedMessageError; }, toError: () => { return new (invalidWire.qos.toErrorClass())('Unrecognized qos.'); }, }, }; //# sourceMappingURL=upstream-open-request.js.map