diff options
| author | shpuld <shp@cock.li> | 2018-12-28 21:39:54 +0200 |
|---|---|---|
| committer | shpuld <shp@cock.li> | 2018-12-28 21:39:54 +0200 |
| commit | 85c058e95c04245dacf3ffb6b45a6eceb3253e7b (patch) | |
| tree | e4a60a67ead56c8d4bdf675bfcb3a1fe914dc7b9 /test/unit/specs/services/notification_utils/notification_utils.spec.js | |
| parent | 47520818180eb9f0eb8d98fbed716ce8c72a46c1 (diff) | |
New routes, notifications, other impovements in side drwaer
Diffstat (limited to 'test/unit/specs/services/notification_utils/notification_utils.spec.js')
| -rw-r--r-- | test/unit/specs/services/notification_utils/notification_utils.spec.js | 88 |
1 files changed, 88 insertions, 0 deletions
diff --git a/test/unit/specs/services/notification_utils/notification_utils.spec.js b/test/unit/specs/services/notification_utils/notification_utils.spec.js new file mode 100644 index 00000000..c44b8c9e --- /dev/null +++ b/test/unit/specs/services/notification_utils/notification_utils.spec.js @@ -0,0 +1,88 @@ +import * as NotificationUtils from 'src/services/notification_utils/notification_utils.js' + +describe('NotificationUtils', () => { + describe('visibleNotificationsFromStore', () => { + it('should return sorted notifications with configured types', () => { + const store = { + state: { + statuses: { + notifications: { + data: [ + { + action: { id: 1 }, + type: 'like' + }, + { + action: { id: 2 }, + type: 'mention' + }, + { + action: { id: 3 }, + type: 'repeat' + } + ] + } + }, + config: { + notificationVisibility: { + likes: true, + repeats: true, + mentions: false + } + } + } + } + const expected = [ + { + action: { id: 3 }, + type: 'repeat' + }, + { + action: { id: 1 }, + type: 'like' + } + ] + expect(NotificationUtils.visibleNotificationsFromStore(store)).to.eql(expected) + }) + }) + + describe('unseenNotificationsFromStore', () => { + it('should return only notifications not marked as seen', () => { + const store = { + state: { + statuses: { + notifications: { + data: [ + { + action: { id: 1 }, + type: 'like', + seen: false + }, + { + action: { id: 2 }, + type: 'mention', + seen: true + } + ] + } + }, + config: { + notificationVisibility: { + likes: true, + repeats: true, + mentions: false + } + } + } + } + const expected = [ + { + action: { id: 1 }, + type: 'like', + seen: false + } + ] + expect(NotificationUtils.unseenNotificationsFromStore(store)).to.eql(expected) + }) + }) +}) |
