trade360-nodejs-sdk
Version:
LSports Trade360 SDK for Node.js
27 lines • 1.54 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const class_transformer_1 = require("class-transformer");
const participant_result_1 = require("../../../../src/entities/core-entities/outright-sport/participant-result");
describe('ParticipantResult', () => {
it('should deserialize a plain object into a ParticipantResult instance', () => {
const plain = { ParticipantId: 1, Name: 'P1', Result: 2 };
const result = (0, class_transformer_1.plainToInstance)(participant_result_1.ParticipantResult, plain, { excludeExtraneousValues: true });
expect(result).toBeInstanceOf(participant_result_1.ParticipantResult);
expect(result.participantId).toBe(1);
expect(result.name).toBe('P1');
expect(result.result).toBe(2);
});
it('should handle missing properties', () => {
const plain = {};
const result = (0, class_transformer_1.plainToInstance)(participant_result_1.ParticipantResult, plain, { excludeExtraneousValues: true });
expect(result.participantId).toBeUndefined();
expect(result.name).toBeUndefined();
expect(result.result).toBeUndefined();
});
it('should ignore extraneous properties', () => {
const plain = { Name: 'P2', Extra: 'ignore me' };
const result = (0, class_transformer_1.plainToInstance)(participant_result_1.ParticipantResult, plain, { excludeExtraneousValues: true });
expect(result.Extra).toBeUndefined();
});
});
//# sourceMappingURL=participant-result.spec.js.map