37 lines
1.2 KiB
JavaScript
37 lines
1.2 KiB
JavaScript
describe('Component vnDialog', () => {
|
|
let $element;
|
|
let controller;
|
|
|
|
beforeEach(ngModule('vnCore'));
|
|
|
|
beforeEach(angular.mock.inject(($rootScope, $compile) => {
|
|
$element = $compile('<vn-dialog><tpl-body>Body</tpl-body></vn-dialog>')($rootScope);
|
|
controller = $element.controller('vnDialog');
|
|
controller.emit = jasmine.createSpy('emit');
|
|
}));
|
|
|
|
describe('hide()', () => {
|
|
describe('fireResponse()', () => {
|
|
it(`should call onResponse() if it's defined in the controller`, () => {
|
|
controller.onResponse = () => {};
|
|
spyOn(controller, 'onResponse');
|
|
controller.hide();
|
|
|
|
expect(controller.onResponse).toHaveBeenCalledWith(jasmine.any(Object));
|
|
});
|
|
|
|
it(`should call onResponse() with a response`, () => {
|
|
let responseRes;
|
|
controller.onResponse = response => {
|
|
responseRes = response;
|
|
return false;
|
|
};
|
|
let responseRet = controller.fireResponse('answer');
|
|
|
|
expect(responseRes).toEqual({response: 'answer'});
|
|
expect(responseRet).toEqual(false);
|
|
});
|
|
});
|
|
});
|
|
});
|