188 lines
6.2 KiB
JavaScript
188 lines
6.2 KiB
JavaScript
/**
|
|
* Created by abhatkha on 5/8/17.
|
|
*/
|
|
//This is test suite for baseVO
|
|
|
|
describe("Test PanelVO", function() {
|
|
|
|
var panelObj
|
|
it(" should do object creation ", function() {
|
|
|
|
panelObj = new PanelVO();
|
|
expect(panelObj instanceof BaseVO).toEqual(true);
|
|
expect(panelObj instanceof PanelVO).toEqual(true);
|
|
|
|
});
|
|
|
|
it(" should do object initilization ", function() {
|
|
|
|
var panelProp= panelObj.getProps();
|
|
|
|
expect(panelProp).toEqual(['id', 'createDate', 'name', 'type', 'columnCount', 'fields']);
|
|
|
|
expect(panelObj.id).not.toBeDefined();
|
|
expect(panelObj.createDate).not.toBeDefined();
|
|
|
|
expect(panelObj.name).toEqual('');
|
|
expect(panelObj.type).toEqual('');
|
|
expect(panelObj.columnCount).toEqual(0);
|
|
expect(panelObj.fields).toEqual([]);
|
|
|
|
});
|
|
|
|
it(" should assign panels for postBuild method ", function() {
|
|
|
|
panelObj.postBuild();
|
|
expect(panelObj.shortId).toEqual('');
|
|
expect(panelObj.fields).toEqual([]);
|
|
});
|
|
|
|
|
|
it(" should return boolean for contains method ", function() {
|
|
|
|
panelObj.fields.push(new FieldVO().build({name:'test1',type: 1 }), new FieldVO().build({name:'test2',type: 2}));
|
|
expect(panelObj.contains({name:'test1'})).toBeTruthy();
|
|
expect(panelObj.contains({name:'other'})).toBeFalsy();
|
|
});
|
|
|
|
it(" should return boolean for hasAvailableSlots method ", function() {
|
|
|
|
expect(panelObj.hasAvailableSlots('test1')).toBeTruthy();
|
|
|
|
});
|
|
|
|
it(" should return boolean for addField method ", function() {
|
|
|
|
var fieldObj = new FieldVO();
|
|
panelObj.addField(fieldObj);
|
|
|
|
var fieldObj2 = new FieldVO();
|
|
fieldObj2.id = 'test123';
|
|
fieldObj2.name = 'test123';
|
|
panelObj.addField(fieldObj2);
|
|
expect(panelObj.contains(fieldObj)).toBeTruthy();
|
|
|
|
expect(panelObj.contains(fieldObj2)).toBeTruthy();
|
|
|
|
});
|
|
|
|
it(" should return boolean for removeField method ", function() {
|
|
|
|
var fieldObj1 = new FieldVO();
|
|
fieldObj1.id = 'test2017';
|
|
fieldObj1.name = 'test2017';
|
|
panelObj.addField(fieldObj1);
|
|
expect(panelObj.contains(fieldObj1)).toBeTruthy();
|
|
panelObj.removeField(fieldObj1);
|
|
|
|
expect(panelObj.contains(fieldObj1)).toBeFalsy();
|
|
panelObj.addField(fieldObj1);
|
|
|
|
var fieldObj2 = new FieldVO();
|
|
fieldObj2.id = undefined;
|
|
fieldObj2.name = undefined;
|
|
panelObj.addField(fieldObj2);
|
|
expect(panelObj.contains(fieldObj2)).toBeTruthy();
|
|
|
|
panelObj.removeField(fieldObj2);
|
|
|
|
var fieldObj3 = new FieldVO();
|
|
fieldObj3.id = undefined;
|
|
fieldObj3.name = undefined;
|
|
|
|
panelObj.removeField(fieldObj3);
|
|
|
|
expect(panelObj.contains(fieldObj2)).toBeFalsy();
|
|
|
|
});
|
|
|
|
it(" should return boolean for removeFieldFromGroup method ", function() {
|
|
|
|
var fieldObj1 = new FieldVO();
|
|
fieldObj1.id = 'test2017';
|
|
fieldObj1.name = 'test2017';
|
|
fieldObj1.type = FieldVO.prototype.GROUP_FIELD;
|
|
|
|
panelObj.addField(fieldObj1);
|
|
expect(panelObj.contains(fieldObj1)).toBeTruthy();
|
|
|
|
panelObj.removeFieldFromGroup(fieldObj1);
|
|
|
|
expect(panelObj.contains(fieldObj1)).toBeTruthy();
|
|
|
|
var fieldObj2 = new FieldVO();
|
|
fieldObj2.id = undefined;
|
|
fieldObj2.name = undefined;
|
|
panelObj.addField(fieldObj2);
|
|
expect(panelObj.contains(fieldObj1)).toBeTruthy();
|
|
panelObj.removeFieldFromGroup(fieldObj2);
|
|
|
|
expect(panelObj.contains(fieldObj2)).toBeTruthy();
|
|
|
|
});
|
|
|
|
|
|
|
|
it(" should return boolean for isValid method ", function() {
|
|
|
|
var fieldObj1 = new FieldVO();
|
|
fieldObj1.id = 'test2017';
|
|
fieldObj1.name = 'test2017';
|
|
|
|
panelObj.fields = [{isValid:function(){return true;}}]
|
|
|
|
|
|
expect(panelObj.isValid()).toBeTruthy();
|
|
|
|
});
|
|
|
|
it(" should return boolean for initFields method ", function() {
|
|
|
|
var fieldObj1 = new FieldVO();
|
|
fieldObj1.id = 'test2017';
|
|
fieldObj1.name = 'test2017';
|
|
fieldObj1.extension = [{classId:"class123", linkedFieldExist:true},{classId:"class456", linkedFieldExist:false}];
|
|
fieldObj1.members = [{classId:"class123", linkedFieldExist:true},{classId:"class456", linkedFieldExist:false}];
|
|
panelObj.shortId = "typeSpecific";
|
|
panelObj.classId = "class123";
|
|
panelObj.field = {extension:[{classId:"class123", linkedFieldExist:true},{classId:"class456", linkedFieldExist:false}]};
|
|
panelObj.fields = [fieldObj1];
|
|
var fieldDictonary = {'test2017':{label:'test2017', isSealed:function(){ return true;}}};
|
|
panelObj.initFields(fieldDictonary);
|
|
|
|
panelObj.postBuild();
|
|
|
|
panelObj.shortId = "other";
|
|
fieldDictonary = {'test2016':{label:'test2017', isSealed:function(){ return true;}}};
|
|
panelObj.initFields(fieldDictonary);
|
|
});
|
|
|
|
it(" should return boolean for initValueFieldNames method ", function() {
|
|
|
|
var fieldObj1 = new FieldVO();
|
|
fieldObj1.id = 'test2016';
|
|
fieldObj1.name = 'test2016';
|
|
fieldObj1.linkedFieldExist = false;
|
|
|
|
panelObj.fields.push(fieldObj1);
|
|
|
|
var valueFieldNames= {'test1':'test1','test2':'test2','test3':'test3'};
|
|
panelObj.linkedFieldExist = true;
|
|
panelObj.initValueFieldNames(valueFieldNames);
|
|
panelObj.linkedFieldExist = true;
|
|
panelObj.initValueFieldNames(valueFieldNames);
|
|
|
|
fieldDictonary = {'test2016':{label:'test2017', isSealed:function(){ return true;}}};
|
|
|
|
panelObj.shortId = "typeSpecific";
|
|
panelObj.classId = "class000";
|
|
panelObj.initFields(fieldDictonary);
|
|
|
|
});
|
|
|
|
|
|
it(" should return boolean for hasCustomFields method ", function() {
|
|
expect(panelObj.hasCustomFields()).toBeDefined();
|
|
expect(panelObj.hasCustomFields()).toEqual(0);
|
|
});
|
|
}); |