UNPKG

@aptpod/iscp-ts

Version:

iSCP 2.0 client library for TypeScript

143 lines 3.98 kB
import { ISCPMalformedMessageError } from '../../exceptions'; import { UpstreamMetadata, UpstreamMetadataExtensionFields, BaseTime } from '../../message'; const WIRE_UPSTREAM_METADATA = new UpstreamMetadata({ requestId: 100, metadata: new BaseTime({ sessionId: 'sessionId', name: 'name', priority: 100, elapsedTime: 1234n, baseTime: 4567n, }), extensionFields: undefined, }); const PROTO_UPSTREAM_METADATA = { requestId: 100, metadata: { oneofKind: 'baseTime', baseTime: { sessionId: 'sessionId', name: 'name', priority: 100, elapsedTime: 1234n, baseTime: 4567n, }, }, extensionFields: undefined, }; export const withoutExtensionFields = { toWire: () => { return new UpstreamMetadata({ ...WIRE_UPSTREAM_METADATA, }); }, toProto: () => { return { message: { oneofKind: 'upstreamMetadata', upstreamMetadata: { ...PROTO_UPSTREAM_METADATA, }, }, }; }, }; export const withExtensionFields = { toWire: () => { return new UpstreamMetadata({ ...WIRE_UPSTREAM_METADATA, extensionFields: new UpstreamMetadataExtensionFields({ persist: true, }), }); }, toProto: () => { return { message: { oneofKind: 'upstreamMetadata', upstreamMetadata: { ...PROTO_UPSTREAM_METADATA, extensionFields: { persist: true, }, }, }, }; }, }; export const withMetadataBaseTime = { toWire: () => { return new UpstreamMetadata({ ...WIRE_UPSTREAM_METADATA, metadata: new BaseTime({ sessionId: 'sessionId', name: 'name', priority: 100, elapsedTime: 1234n, baseTime: 4567n, }), }); }, toProto: () => { return { message: { oneofKind: 'upstreamMetadata', upstreamMetadata: { ...PROTO_UPSTREAM_METADATA, metadata: { oneofKind: 'baseTime', baseTime: { sessionId: 'sessionId', name: 'name', priority: 100, elapsedTime: 1234n, baseTime: 4567n, }, }, }, }, }; }, }; export const invalidWire = { metadataOneOf: { toWire: () => { return new UpstreamMetadata({ ...WIRE_UPSTREAM_METADATA, // @ts-ignore metadata: 10, }); }, toErrorClass() { return ISCPMalformedMessageError; }, toError() { return new ISCPMalformedMessageError('Unrecognized metadata.'); }, }, }; export const invalidProto = { metadataOneOf: { toProto: () => { return { message: { oneofKind: 'upstreamMetadata', upstreamMetadata: { ...PROTO_UPSTREAM_METADATA, metadata: { // @ts-ignore oneofKind: '__unrecognized__', }, }, }, }; }, toErrorClass() { return ISCPMalformedMessageError; }, toError() { return new ISCPMalformedMessageError('Unrecognized metadata.'); }, }, }; //# sourceMappingURL=upstream-metadata.js.map