notifications tests

This commit is contained in:
Matteo Pagliazzi
2020-03-01 21:29:57 +01:00
parent a11e4d0512
commit 6deee0ffc8
3 changed files with 24 additions and 36 deletions

View File

@@ -1,7 +1,7 @@
import { model as UserNotification } from '../../../../website/server/models/userNotification';
describe('UserNotification Model', () => {
context('convertNotificationsToSafeJson', () => {
context('cleanupCorruptData', () => {
it('converts an array of notifications to a safe version', () => {
const notifications = [
null, // invalid, not an object
@@ -11,11 +11,12 @@ describe('UserNotification Model', () => {
new UserNotification({ type: 'ABC', id: 123 }), // valid
];
const notificationsToJSON = UserNotification.convertNotificationsToSafeJson(notifications);
expect(notificationsToJSON.length).to.equal(1);
expect(notificationsToJSON[0]).to.have.all.keys(['data', 'id', 'type', 'seen']);
expect(notificationsToJSON[0].type).to.equal('ABC');
expect(notificationsToJSON[0].id).to.equal('123');
const safeNotifications = UserNotification.cleanupCorruptData(notifications);
expect(safeNotifications.length).to.equal(1);
expect(safeNotifications[0].data).to.deep.equal({});
expect(safeNotifications[0].seen).to.equal(false);
expect(safeNotifications[0].type).to.equal('ABC');
expect(safeNotifications[0].id).to.equal('123');
});
});
});