trade360-nodejs-sdk
Version:
LSports Trade360 SDK for Node.js
30 lines • 1.54 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const class_transformer_1 = require("class-transformer");
const fixture_event_1 = require("../../../../src/entities/core-entities/fixture/fixture-event");
const fixture_1 = require("../../../../src/entities/core-entities/fixture/fixture");
describe('FixtureEvent Entity', () => {
it('should deserialize a plain object into a FixtureEvent instance', () => {
const plain = {
FixtureId: 123,
Fixture: {
Sport: { id: 2, name: 'Football' },
Status: 'Scheduled',
},
};
const event = (0, class_transformer_1.plainToInstance)(fixture_event_1.FixtureEvent, plain, { excludeExtraneousValues: true });
expect(event).toBeInstanceOf(fixture_event_1.FixtureEvent);
expect(event.fixtureId).toBe(123);
expect(event.fixture).toBeInstanceOf(fixture_1.Fixture);
expect(event.fixture.sport).toBeDefined();
expect(event.fixture.status).toBe('Scheduled');
});
it('should throw if required properties are missing', () => {
const plain = {};
const event = (0, class_transformer_1.plainToInstance)(fixture_event_1.FixtureEvent, plain, { excludeExtraneousValues: true });
// fixtureId and fixture will be undefined, but class-transformer does not throw by default
expect(event.fixtureId).toBeUndefined();
expect(event.fixture).toBeUndefined();
});
});
//# sourceMappingURL=fixture-event.spec.js.map