Fix notifyjs
This commit is contained in:
parent
983b9829d3
commit
cdc16aac19
10 changed files with 0 additions and 0 deletions
97
js/plugins/notifyjs/test/tests.js
Normal file
97
js/plugins/notifyjs/test/tests.js
Normal file
|
|
@ -0,0 +1,97 @@
|
|||
describe('instantiation', function () {
|
||||
|
||||
it('should create a new Notify instance', function () {
|
||||
var notification = new Notify('foo');
|
||||
expect(notification instanceof window.Notify).toBeTruthy();
|
||||
});
|
||||
|
||||
it('should throw an exception if has no title', function () {
|
||||
expect(function () {
|
||||
var notification = new Notify();
|
||||
}).toThrow();
|
||||
});
|
||||
});
|
||||
|
||||
describe('permission', function () {
|
||||
|
||||
it('should check if permission is needed', function () {
|
||||
expect(Notify.needsPermission()).toBeTruthy();
|
||||
});
|
||||
|
||||
it('should request permission from the user', function () {
|
||||
spyOn(window.Notification, 'requestPermission');
|
||||
Notify.requestPermission();
|
||||
expect(window.Notification.requestPermission).toHaveBeenCalled();
|
||||
});
|
||||
});
|
||||
|
||||
describe('callbacks', function () {
|
||||
|
||||
var callback;
|
||||
|
||||
beforeEach(function() {
|
||||
callback = jasmine.createSpy();
|
||||
});
|
||||
|
||||
it('should fire show callback', function () {
|
||||
var notification = new Notify('foo', {
|
||||
notifyShow: callback
|
||||
});
|
||||
notification.onShowNotification();
|
||||
expect(callback).toHaveBeenCalled();
|
||||
});
|
||||
|
||||
it('should fire close callback', function () {
|
||||
var notification = new Notify('foo', {
|
||||
notifyClose: callback
|
||||
});
|
||||
notification.show();
|
||||
notification.onCloseNotification();
|
||||
expect(callback).toHaveBeenCalled();
|
||||
});
|
||||
|
||||
it('should fire click callback', function () {
|
||||
var notification = new Notify('foo', {
|
||||
notifyClick: callback
|
||||
});
|
||||
notification.onClickNotification();
|
||||
expect(callback).toHaveBeenCalled();
|
||||
});
|
||||
|
||||
it('should fire error callback', function () {
|
||||
var notification = new Notify('foo', {
|
||||
notifyError: callback
|
||||
});
|
||||
notification.show();
|
||||
notification.onErrorNotification();
|
||||
expect(callback).toHaveBeenCalled();
|
||||
});
|
||||
|
||||
it('should destroy a notification once closed', function () {
|
||||
var notification = new Notify('foo', {
|
||||
notifyClose: callback
|
||||
});
|
||||
spyOn(notification, 'destroy');
|
||||
notification.onCloseNotification();
|
||||
expect(notification.destroy).toHaveBeenCalled();
|
||||
|
||||
});
|
||||
});
|
||||
|
||||
describe('timeout', function () {
|
||||
|
||||
beforeEach(function () {
|
||||
jasmine.Clock.useMock();
|
||||
});
|
||||
|
||||
it('should close a notification automatically', function () {
|
||||
var notification = new Notify('foo', {
|
||||
timeout: 1
|
||||
});
|
||||
spyOn(window.Notification.prototype, 'close');
|
||||
notification.show();
|
||||
expect(window.Notification.prototype.close).not.toHaveBeenCalled();
|
||||
jasmine.Clock.tick(1000);
|
||||
expect(window.Notification.prototype.close).toHaveBeenCalled();
|
||||
});
|
||||
});
|
||||
Loading…
Add table
Add a link
Reference in a new issue