Files
onspring-api-sdk-javascript/tests/ReportData.spec.ts
T

59 lines
1.5 KiB
TypeScript
Raw Normal View History

2023-02-09 18:23:49 -06:00
import { ReportData } from '../src/models/ReportData';
import { expect } from 'chai';
describe('ReportData', function () {
it('should be defined', function () {
expect(ReportData).to.not.be.undefined;
});
it('should have a constructor with 2 parameters', function () {
expect(ReportData).to.have.property('constructor');
expect(ReportData).to.have.lengthOf(2);
});
it('should have a construct that sets its properties correctly', function () {
const reportData = new ReportData(
['a', 'b'],
[
{
recordId: 1,
cells: [{}, {}],
},
{
recordId: 2,
cells: [{}, {}],
},
]
);
expect(reportData)
.to.have.property('columns')
.that.is.an('array')
.with.lengthOf(2);
expect(reportData)
.to.have.property('rows')
.that.is.an('array')
.with.lengthOf(2);
reportData.columns.forEach((column) => {
expect(column).to.be.a('string');
});
reportData.rows.forEach((row) => {
expect(row).to.have.property('recordId').that.is.a('number');
expect(row)
.to.have.property('cells')
.that.is.an('array')
.with.lengthOf(2);
});
});
it('should have a columns property', function () {
expect(new ReportData(['a', 'b'], [])).to.have.property('columns');
});
it('should have a rows property', function () {
expect(new ReportData(['a', 'b'], [])).to.have.property('rows');
});
2023-02-09 18:23:49 -06:00
});