SmartIT_Extensions/BMC/smart-it-full/test/app/ticket-console/ticket-console-item-vo.spec.js

160 lines
7.5 KiB
JavaScript

/**
* Created by mkumar1 on 15-05-2017.
*/
describe('Testing Ticket Console Item VO', function () {
var ticketConsoleItemVo;
it(' should create object and test properties', function () {
ticketConsoleItemVo = new TicketConsoleItemVO();
expect(ticketConsoleItemVo.type).toEqual('');
expect(ticketConsoleItemVo.desc).toEqual('');
expect(ticketConsoleItemVo.impact).toEqual('');
expect(ticketConsoleItemVo.displayId).toEqual('');
expect(ticketConsoleItemVo.parentId).toEqual('');
expect(ticketConsoleItemVo.isEscalated).toEqual(false);
expect(ticketConsoleItemVo.priority).toEqual('');
expect(ticketConsoleItemVo.productName).toEqual('');
expect(ticketConsoleItemVo.urgency).toEqual('');
expect(ticketConsoleItemVo.scheduledStartDate).toEqual('');
expect(ticketConsoleItemVo.submitDate).toEqual('');
expect(ticketConsoleItemVo.slaStatus).toEqual('');
expect(ticketConsoleItemVo.summary).toEqual('');
expect(ticketConsoleItemVo.modifiedDate).toEqual('');
expect(ticketConsoleItemVo.targetDate).toEqual('');
expect(ticketConsoleItemVo.urgency).toEqual('');
expect(ticketConsoleItemVo.deploymentStartDate).toEqual('');
expect(ticketConsoleItemVo.deploymentEndDate).toEqual('');
expect(ticketConsoleItemVo.scheduledEndDate).toEqual('');
expect(ticketConsoleItemVo.actualEndDate).toEqual('');
expect(ticketConsoleItemVo.actualStartDate).toEqual('');
expect(ticketConsoleItemVo.completedDate).toEqual('');
expect(ticketConsoleItemVo.submittedBy).toEqual('');
expect(ticketConsoleItemVo.vendorTicketNumber).toEqual('');
expect(ticketConsoleItemVo.resolvedDate).toEqual('');
expect(ticketConsoleItemVo.respondedDate).toEqual('');
expect(ticketConsoleItemVo.incidentType).toEqual('');
expect(ticketConsoleItemVo.reportedSource).toEqual('');
expect(ticketConsoleItemVo.taskType).toEqual('');
expect(ticketConsoleItemVo.workOrderType).toEqual('');
expect(ticketConsoleItemVo.changeClass).toEqual('');
expect(ticketConsoleItemVo.riskLevel).toEqual('');
expect(ticketConsoleItemVo.investigationDriver).toEqual('');
expect(ticketConsoleItemVo.validateCompany).toEqual(false);
expect(ticketConsoleItemVo.requiredResolutionDate).toEqual('');
expect(ticketConsoleItemVo.processFlowInstanceId).toEqual('');
expect(ticketConsoleItemVo.processFlowName).toEqual('');
expect(ticketConsoleItemVo.milestone).toEqual('');
expect(ticketConsoleItemVo.businessJustification).toEqual('');
expect(ticketConsoleItemVo.releaseType).toEqual('');
expect(Object.keys(ticketConsoleItemVo.supportGroup).length).toEqual(0);
expect(Object.keys(ticketConsoleItemVo.assignee).length).toEqual(0);
expect(Object.keys(ticketConsoleItemVo.customer).length).toEqual(0);
expect(Object.keys(ticketConsoleItemVo.company).length).toEqual(0);
expect(Object.keys(ticketConsoleItemVo.impactedService).length).toEqual(0);
expect(Object.keys(ticketConsoleItemVo.serviceTargets).length).toEqual(0);
expect(Object.keys(ticketConsoleItemVo.categories).length).toEqual(0);
expect(Object.keys(ticketConsoleItemVo.categorizations).length).toEqual(0);
expect(Object.keys(ticketConsoleItemVo.vendorGroup).length).toEqual(0);
expect(Object.keys(ticketConsoleItemVo.contact).length).toEqual(0);
expect(Object.keys(ticketConsoleItemVo.owner).length).toEqual(0);
expect(Object.keys(ticketConsoleItemVo.ownerGroup).length).toEqual(0);
expect(Object.keys(ticketConsoleItemVo.requestManager).length).toEqual(0);
expect(Object.keys(ticketConsoleItemVo.requestManagerGroup).length).toEqual(0);
expect(Object.keys(ticketConsoleItemVo.changeManager).length).toEqual(0);
expect(Object.keys(ticketConsoleItemVo.changeManagerGroup).length).toEqual(0);
expect(Object.keys(ticketConsoleItemVo.problemCoordinator).length).toEqual(0);
expect(Object.keys(ticketConsoleItemVo.problemCoordinatorGroup).length).toEqual(0);
expect(Object.keys(ticketConsoleItemVo.releaseCoordinator).length).toEqual(0);
expect(Object.keys(ticketConsoleItemVo.releaseCoordinatorGroup).length).toEqual(0);
expect(ticketConsoleItemVo.isInApproval).toEqual(false);
expect(ticketConsoleItemVo.allowBulkUpdateStatus).toEqual(true);
});
it(' should test the inheritance ', function () {
expect(ticketConsoleItemVo instanceof BaseVO).toBeTruthy();
});
it(' should verify all the properties ', function () {
var returnVal = ticketConsoleItemVo.getProps();
expect(returnVal).toEqual([ 'id', 'createDate', 'type', 'desc', 'impact', 'displayId', 'parentId', 'isEscalated', 'priority', 'productName', 'urgency', 'scheduledStartDate', 'submitDate', 'slaStatus', 'summary', 'modifiedDate', 'targetDate', 'deploymentStartDate', 'deploymentEndDate', 'scheduledEndDate', 'actualEndDate', 'actualStartDate', 'completedDate', 'submittedBy', 'vendorTicketNumber', 'resolvedDate', 'respondedDate', 'incidentType', 'reportedSource', 'taskType', 'workOrderType', 'changeClass', 'changeReason', 'riskLevel', 'investigationDriver', 'validateCompany', 'requiredResolutionDate', 'processFlowInstanceId', 'processFlowName', 'milestone', 'businessJustification', 'releaseType', 'supportGroup', 'assignee', 'customFields', 'customer', 'company', 'impactedService', 'status', 'serviceTargets', 'categories', 'categorizations', 'vendorGroup', 'contact', 'owner', 'ownerGroup', 'requestManager', 'requestManagerGroup', 'changeManager', 'changeManagerGroup', 'problemCoordinator', 'problemCoordinatorGroup', 'releaseCoordinator', 'releaseCoordinatorGroup', 'isInApproval', 'allowBulkUpdateStatus' ]);
});
it(' should test the post build features', function () {
ticketConsoleItemVo['categorizations'] = [{
"name": "operational",
"tiers": {
"operationCategoryTier1": "IT"
}
}, {
"name": "product",
"tiers": {
"productCategoryTier1": "Software"
}
}, {
"name": "resolution",
"tiers": {
"resCategory1": " ",
"resCategory2": " ",
"resCategory3": " "
}
}, {
"name": "resolutionProduct",
"tiers": {
"resProdCategory1": " ",
"resProdCategory2": " ",
"resProdCategory3": " ",
"resProductName": " ",
"resProductModelVersion": " ",
"resProductManufacturer": " "
}
}];
ticketConsoleItemVo.postBuild();
expect(ticketConsoleItemVo.categories['operationCategoryTier1']).toEqual('IT');
expect(ticketConsoleItemVo.categories['productCategoryTier1']).toEqual('Software');
expect(ticketConsoleItemVo.categories['resCategory1']).toEqual(' ');
expect(ticketConsoleItemVo.categories['resCategory2']).toEqual(' ');
expect(ticketConsoleItemVo.categories['resCategory3']).toEqual(' ');
expect(ticketConsoleItemVo.categories['resProdCategory1']).toEqual(' ');
expect(ticketConsoleItemVo.categories['resProdCategory2']).toEqual(' ');
expect(ticketConsoleItemVo.categories['resProdCategory3']).toEqual(' ');
expect(ticketConsoleItemVo.categories['resProductName']).toEqual(' ');
expect(ticketConsoleItemVo.categories['resProductModelVersion']).toEqual(' ');
expect(ticketConsoleItemVo.categories['resProductManufacturer']).toEqual(' ');
ticketConsoleItemVo.isInApproval = true;
ticketConsoleItemVo.postBuild();
expect(ticketConsoleItemVo.allowBulkUpdateStatus).toEqual(false);
ticketConsoleItemVo.allowBulkUpdateStatus = true;
ticketConsoleItemVo.type = EntityVO.TYPE_TASK;
ticketConsoleItemVo.status = {
'value': 'Staged'
};
ticketConsoleItemVo.postBuild();
expect(ticketConsoleItemVo.allowBulkUpdateStatus).toEqual(false);
ticketConsoleItemVo.allowBulkUpdateStatus = true;
ticketConsoleItemVo.status = {
'value': 'Closed'
};
ticketConsoleItemVo.postBuild();
expect(ticketConsoleItemVo.allowBulkUpdateStatus).toEqual(false);
});
});