trade360-nodejs-sdk
Version:
LSports Trade360 SDK for Node.js
67 lines • 2.8 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const states_collection_response_1 = require("../../../../../src/api/common/metadata/responses/states-collection-response");
describe('StatesCollectionResponse', () => {
it('should instantiate with default values', () => {
const response = new states_collection_response_1.StatesCollectionResponse();
expect(response).toBeInstanceOf(states_collection_response_1.StatesCollectionResponse);
expect(response.data).toBeUndefined();
});
it('should instantiate with data object', () => {
const stateData = {
stateId: 1,
name: 'Test State',
country: { id: 100, name: 'Test Country' },
};
const data = {
data: [stateData],
};
const response = new states_collection_response_1.StatesCollectionResponse(data);
expect(response.data).toEqual([stateData]);
});
it('should handle empty data array', () => {
const data = {
data: [],
};
const response = new states_collection_response_1.StatesCollectionResponse(data);
expect(response.data).toEqual([]);
});
it('should handle multiple states in data array', () => {
const statesData = [
{
stateId: 1,
name: 'State 1',
country: { id: 100, name: 'Country 1' },
},
{
stateId: 2,
name: 'State 2',
country: { id: 200, name: 'Country 2' },
},
];
const data = {
data: statesData,
};
const response = new states_collection_response_1.StatesCollectionResponse(data);
expect(response.data).toEqual(statesData);
expect(response.data).toHaveLength(2);
});
it('should handle null/undefined data', () => {
const response1 = new states_collection_response_1.StatesCollectionResponse(null);
const response2 = new states_collection_response_1.StatesCollectionResponse(undefined);
expect(response1).toBeInstanceOf(states_collection_response_1.StatesCollectionResponse);
expect(response2).toBeInstanceOf(states_collection_response_1.StatesCollectionResponse);
});
it('should handle additional properties from data object', () => {
const data = {
data: [],
totalItems: 0,
customProperty: 'test',
};
const response = new states_collection_response_1.StatesCollectionResponse(data);
expect(response.data).toEqual([]);
expect(response.totalItems).toBe(0);
expect(response.customProperty).toBe('test');
});
});
//# sourceMappingURL=states-collection-response.spec.js.map