fix: refactor to have child classes that inherit from RecordValue, but represent the distinct types of value objects that can be returned by the api. fix: added and updated tests to address this refactor

This commit is contained in:
Stevan Freeborn
2023-02-13 17:05:50 -06:00
parent ec82dd066e
commit 74d247047e
32 changed files with 1809 additions and 331 deletions
+30
View File
@@ -0,0 +1,30 @@
import { IntegerRecordValue } from '../src/models/IntegerRecordValue';
import { expect } from 'chai';
describe('IntegerRecordValue', function () {
it('should be defined', function () {
expect(IntegerRecordValue).to.not.be.undefined;
});
it('should have a constructor', function () {
expect(IntegerRecordValue).to.have.property('constructor');
});
it('should hav a constructor that takes a fieldId and value', function () {
expect(IntegerRecordValue).to.have.lengthOf(2);
});
it('should have fieldId, value, and type properties', function () {
const integerRecordValue = new IntegerRecordValue(1, 1);
expect(integerRecordValue).to.have.property('fieldId');
expect(integerRecordValue).to.have.property('value');
expect(integerRecordValue).to.have.property('type');
});
it('should have a constructor that sets its properties correctly', function () {
const integerRecordValue = new IntegerRecordValue(1, 1);
expect(integerRecordValue.fieldId).to.equal(1);
expect(integerRecordValue.value).to.deep.equal(1);
expect(integerRecordValue.type).to.equal('Integer');
});
});