@aptpod/iscp-ts
Version:
iSCP 2.0 client library for TypeScript
143 lines • 3.98 kB
JavaScript
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