2018-05-25 08:03:45 +00:00
|
|
|
import './index.js';
|
2018-04-19 12:56:05 +00:00
|
|
|
|
2018-10-30 12:58:02 +00:00
|
|
|
describe('Component vnTicketIndex', () => {
|
|
|
|
let $element;
|
2018-11-06 13:27:16 +00:00
|
|
|
let controller;
|
2018-10-30 12:58:02 +00:00
|
|
|
let $window;
|
|
|
|
let tickets = [{
|
|
|
|
id: 1,
|
|
|
|
clientFk: 1,
|
|
|
|
salesPersonFk: 9,
|
|
|
|
shipped: new Date(),
|
|
|
|
nickname: 'Test',
|
|
|
|
total: 10.5
|
|
|
|
}];
|
|
|
|
|
|
|
|
beforeEach(() => {
|
2019-02-15 11:39:21 +00:00
|
|
|
ngModule('worker');
|
2018-10-30 12:58:02 +00:00
|
|
|
ngModule('client');
|
|
|
|
ngModule('item');
|
|
|
|
ngModule('ticket');
|
|
|
|
});
|
2018-08-13 07:32:33 +00:00
|
|
|
|
2019-02-15 11:39:21 +00:00
|
|
|
beforeEach(inject(($compile, $rootScope, _$window_) => {
|
2018-10-30 12:58:02 +00:00
|
|
|
$window = _$window_;
|
|
|
|
$element = $compile('<vn-ticket-index></vn-ticket-index>')($rootScope);
|
2018-11-06 13:27:16 +00:00
|
|
|
controller = $element.controller('vnTicketIndex');
|
2018-10-30 12:58:02 +00:00
|
|
|
}));
|
2018-08-13 07:32:33 +00:00
|
|
|
|
2018-10-30 12:58:02 +00:00
|
|
|
afterEach(() => {
|
|
|
|
$element.remove();
|
|
|
|
});
|
2018-08-13 07:32:33 +00:00
|
|
|
|
2018-10-30 12:58:02 +00:00
|
|
|
describe('compareDate()', () => {
|
|
|
|
it('should return warning when the date is the present', () => {
|
|
|
|
let curDate = new Date();
|
2018-11-06 13:27:16 +00:00
|
|
|
let result = controller.compareDate(curDate);
|
2018-08-13 07:32:33 +00:00
|
|
|
|
2018-10-30 12:58:02 +00:00
|
|
|
expect(result).toEqual('warning');
|
|
|
|
});
|
2018-08-13 07:32:33 +00:00
|
|
|
|
2018-10-30 12:58:02 +00:00
|
|
|
it('should return sucess when the date is in the future', () => {
|
|
|
|
let futureDate = new Date();
|
|
|
|
futureDate = futureDate.setDate(futureDate.getDate() + 10);
|
2018-11-06 13:27:16 +00:00
|
|
|
let result = controller.compareDate(futureDate);
|
2018-08-13 07:32:33 +00:00
|
|
|
|
2018-10-30 12:58:02 +00:00
|
|
|
expect(result).toEqual('success');
|
|
|
|
});
|
2018-08-13 07:32:33 +00:00
|
|
|
|
2018-10-30 12:58:02 +00:00
|
|
|
it('should return undefined when the date is in the past', () => {
|
|
|
|
let pastDate = new Date();
|
|
|
|
pastDate = pastDate.setDate(pastDate.getDate() - 10);
|
2018-11-06 13:27:16 +00:00
|
|
|
let result = controller.compareDate(pastDate);
|
2018-08-13 07:32:33 +00:00
|
|
|
|
2018-10-30 12:58:02 +00:00
|
|
|
expect(result).toEqual(undefined);
|
2018-08-13 07:32:33 +00:00
|
|
|
});
|
2018-10-30 12:58:02 +00:00
|
|
|
});
|
2018-08-13 07:32:33 +00:00
|
|
|
|
2019-02-15 11:39:21 +00:00
|
|
|
describe('showClientDescriptor()', () => {
|
|
|
|
it('should show the client descriptor popover', () => {
|
|
|
|
spyOn(controller.$.clientDescriptor, 'show');
|
2018-04-19 12:56:05 +00:00
|
|
|
|
2018-10-30 12:58:02 +00:00
|
|
|
let event = new MouseEvent('click', {
|
|
|
|
view: $window,
|
|
|
|
bubbles: true,
|
|
|
|
cancelable: true
|
2018-04-19 12:56:05 +00:00
|
|
|
});
|
2019-02-15 11:39:21 +00:00
|
|
|
controller.showClientDescriptor(event, tickets[0].clientFk);
|
2018-04-19 12:56:05 +00:00
|
|
|
|
2019-02-15 11:39:21 +00:00
|
|
|
expect(controller.$.clientDescriptor.show).toHaveBeenCalledWith();
|
2018-04-19 12:56:05 +00:00
|
|
|
});
|
2018-10-30 12:58:02 +00:00
|
|
|
});
|
2018-04-19 12:56:05 +00:00
|
|
|
|
2018-10-30 12:58:02 +00:00
|
|
|
describe('preview()', () => {
|
|
|
|
it('should show the dialog summary', () => {
|
2018-11-06 13:27:16 +00:00
|
|
|
spyOn(controller.$.summary, 'show');
|
2018-04-19 12:56:05 +00:00
|
|
|
|
2018-10-30 12:58:02 +00:00
|
|
|
let event = new MouseEvent('click', {
|
|
|
|
view: $window,
|
|
|
|
bubbles: true,
|
|
|
|
cancelable: true
|
2018-04-19 12:56:05 +00:00
|
|
|
});
|
2018-11-06 13:27:16 +00:00
|
|
|
controller.preview(event, tickets[0]);
|
2018-10-30 12:58:02 +00:00
|
|
|
|
2018-11-06 13:27:16 +00:00
|
|
|
expect(controller.$.summary.show).toHaveBeenCalledWith();
|
2018-04-19 12:56:05 +00:00
|
|
|
});
|
|
|
|
});
|
|
|
|
});
|