UNPKG

trade360-nodejs-sdk

Version:
31 lines 1.96 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const class_transformer_1 = require("class-transformer"); const outright_score_1 = require("../../../../src/entities/core-entities/outright-sport/outright-score"); const participant_result_1 = require("../../../../src/entities/core-entities/outright-sport/participant-result"); const outright_score_status_1 = require("../../../../src/entities/core-entities/enums/outright-score-status"); describe('OutrightScore', () => { it('should deserialize a plain object into an OutrightScore instance', () => { const plain = { ParticipantResults: [{ Id: 1, Name: 'P1' }], Status: outright_score_status_1.OutrightScoreStatus.Completed, }; const score = (0, class_transformer_1.plainToInstance)(outright_score_1.OutrightScore, plain, { excludeExtraneousValues: true }); expect(score).toBeInstanceOf(outright_score_1.OutrightScore); expect(Array.isArray(score.participantResults)).toBe(true); expect(score.participantResults?.[0]).toBeInstanceOf(participant_result_1.ParticipantResult); expect(score.status).toBe(outright_score_status_1.OutrightScoreStatus.Completed); }); it('should handle missing properties', () => { const plain = {}; const score = (0, class_transformer_1.plainToInstance)(outright_score_1.OutrightScore, plain, { excludeExtraneousValues: true }); expect(score.participantResults).toBeUndefined(); expect(score.status).toBeUndefined(); }); it('should ignore extraneous properties', () => { const plain = { Status: outright_score_status_1.OutrightScoreStatus.InProgress, Extra: 'ignore me' }; const score = (0, class_transformer_1.plainToInstance)(outright_score_1.OutrightScore, plain, { excludeExtraneousValues: true }); expect(score.Extra).toBeUndefined(); }); }); //# sourceMappingURL=outright-score.spec.js.map