47 lines
2.3 KiB
TypeScript
47 lines
2.3 KiB
TypeScript
// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
|
|
// See LICENSE.txt for license information.
|
|
|
|
describe('EphemeralStore', () => {
|
|
afterEach(() => {
|
|
jest.resetModules();
|
|
});
|
|
|
|
it('playbooks sync', () => {
|
|
const EphemeralStore = require('./ephemeral_store').default;
|
|
|
|
// Expect false if not yet set
|
|
expect(EphemeralStore.getChannelPlaybooksSynced('server-url', 'channel-id')).toBe(false);
|
|
|
|
// Expect true if set
|
|
EphemeralStore.setChannelPlaybooksSynced('server-url', 'channel-id');
|
|
expect(EphemeralStore.getChannelPlaybooksSynced('server-url', 'channel-id')).toBe(true);
|
|
|
|
// Same id, different server
|
|
expect(EphemeralStore.getChannelPlaybooksSynced('server-url-2', 'channel-id')).toBe(false);
|
|
|
|
// Set for different server
|
|
EphemeralStore.setChannelPlaybooksSynced('server-url-2', 'channel-id');
|
|
expect(EphemeralStore.getChannelPlaybooksSynced('server-url-2', 'channel-id')).toBe(true);
|
|
|
|
// Expect false if cleared
|
|
EphemeralStore.clearChannelPlaybooksSynced('server-url');
|
|
expect(EphemeralStore.getChannelPlaybooksSynced('server-url', 'channel-id')).toBe(false);
|
|
expect(EphemeralStore.getChannelPlaybooksSynced('server-url-2', 'channel-id')).toBe(true); // The other server is not cleared
|
|
|
|
// Expect false if unset
|
|
EphemeralStore.setChannelPlaybooksSynced('server-url', 'channel-id');
|
|
EphemeralStore.setChannelPlaybooksSynced('server-url', 'channel-id-2');
|
|
EphemeralStore.setChannelPlaybooksSynced('server-url', 'channel-id-3');
|
|
|
|
EphemeralStore.unsetChannelPlaybooksSynced('server-url', 'channel-id');
|
|
expect(EphemeralStore.getChannelPlaybooksSynced('server-url', 'channel-id')).toBe(false);
|
|
expect(EphemeralStore.getChannelPlaybooksSynced('server-url', 'channel-id-2')).toBe(true);
|
|
expect(EphemeralStore.getChannelPlaybooksSynced('server-url', 'channel-id-3')).toBe(true);
|
|
|
|
// Expect false if cleared
|
|
EphemeralStore.clearChannelPlaybooksSynced('server-url');
|
|
expect(EphemeralStore.getChannelPlaybooksSynced('server-url', 'channel-id')).toBe(false);
|
|
expect(EphemeralStore.getChannelPlaybooksSynced('server-url', 'channel-id-2')).toBe(false);
|
|
expect(EphemeralStore.getChannelPlaybooksSynced('server-url', 'channel-id-3')).toBe(false);
|
|
});
|
|
});
|