// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved. // See LICENSE.txt for license information. /* eslint-disable max-nested-callbacks */ import assert from 'assert'; import {ViewTypes} from 'app/constants'; import {messageRetention} from 'app/store/middleware'; describe('store/middleware', () => { describe('messageRetention', () => { describe('should chain the same incoming action type', () => { const actions = [ { type: 'persist/REHYDRATE', payload: { views: { team: { }, }, }, }, { type: ViewTypes.DATA_CLEANUP, payload: { entities: { channels: { }, posts: { }, }, views: { team: { }, }, }, }, { type: 'other', }, ]; actions.forEach((action) => { it(`for action type ${action.type}`, () => { const store = {}; const next = (a) => a; const nextAction = messageRetention(store)(next)(action); assert.equal(action.type, nextAction.type); }); }); }); }); });