46 lines
1.5 KiB
TypeScript
46 lines
1.5 KiB
TypeScript
// Copyright 2021 Signal Messenger, LLC
|
|
// SPDX-License-Identifier: AGPL-3.0-only
|
|
|
|
import { assert } from 'chai';
|
|
|
|
import { isConversationUnread } from '../../util/isConversationUnread';
|
|
|
|
describe('isConversationUnread', () => {
|
|
it('returns false if both markedUnread and unreadCount are undefined', () => {
|
|
assert.isFalse(isConversationUnread({}));
|
|
assert.isFalse(
|
|
isConversationUnread({
|
|
markedUnread: undefined,
|
|
unreadCount: undefined,
|
|
})
|
|
);
|
|
});
|
|
|
|
it('returns false if markedUnread is false', () => {
|
|
assert.isFalse(isConversationUnread({ markedUnread: false }));
|
|
});
|
|
|
|
it('returns false if unreadCount is 0', () => {
|
|
assert.isFalse(isConversationUnread({ unreadCount: 0 }));
|
|
});
|
|
|
|
it('returns true if markedUnread is true, regardless of unreadCount', () => {
|
|
assert.isTrue(isConversationUnread({ markedUnread: true }));
|
|
assert.isTrue(isConversationUnread({ markedUnread: true, unreadCount: 0 }));
|
|
assert.isTrue(
|
|
isConversationUnread({ markedUnread: true, unreadCount: 100 })
|
|
);
|
|
});
|
|
|
|
it('returns true if unreadCount is positive, regardless of markedUnread', () => {
|
|
assert.isTrue(isConversationUnread({ unreadCount: 1 }));
|
|
assert.isTrue(isConversationUnread({ unreadCount: 99 }));
|
|
assert.isTrue(
|
|
isConversationUnread({ markedUnread: false, unreadCount: 2 })
|
|
);
|
|
});
|
|
|
|
it('returns true if both markedUnread is true and unreadCount is positive', () => {
|
|
assert.isTrue(isConversationUnread({ markedUnread: true, unreadCount: 1 }));
|
|
});
|
|
});
|