2021-02-23 14:34:28 -06:00
|
|
|
// Copyright 2021 Signal Messenger, LLC
|
|
|
|
// SPDX-License-Identifier: AGPL-3.0-only
|
|
|
|
|
|
|
|
import { assert } from 'chai';
|
|
|
|
|
|
|
|
import { isConversationUnregistered } from '../../util/isConversationUnregistered';
|
|
|
|
|
|
|
|
describe('isConversationUnregistered', () => {
|
|
|
|
it('returns false if passed an undefined discoveredUnregisteredAt', () => {
|
|
|
|
assert.isFalse(isConversationUnregistered({}));
|
|
|
|
assert.isFalse(
|
|
|
|
isConversationUnregistered({ discoveredUnregisteredAt: undefined })
|
|
|
|
);
|
|
|
|
});
|
|
|
|
|
2021-03-15 16:44:43 -07:00
|
|
|
it('returns true if passed a time fewer than 6 hours ago', () => {
|
|
|
|
assert.isTrue(
|
2021-02-23 14:34:28 -06:00
|
|
|
isConversationUnregistered({ discoveredUnregisteredAt: Date.now() })
|
|
|
|
);
|
|
|
|
|
|
|
|
const fiveHours = 1000 * 60 * 60 * 5;
|
2021-03-15 16:44:43 -07:00
|
|
|
assert.isTrue(
|
2021-02-23 14:34:28 -06:00
|
|
|
isConversationUnregistered({
|
|
|
|
discoveredUnregisteredAt: Date.now() - fiveHours,
|
|
|
|
})
|
|
|
|
);
|
|
|
|
});
|
|
|
|
|
2021-03-15 16:44:43 -07:00
|
|
|
it('returns true if passed a time in the future', () => {
|
|
|
|
assert.isTrue(
|
2021-02-23 14:34:28 -06:00
|
|
|
isConversationUnregistered({ discoveredUnregisteredAt: Date.now() + 123 })
|
|
|
|
);
|
|
|
|
});
|
|
|
|
|
2021-03-15 16:44:43 -07:00
|
|
|
it('returns false if passed a time more than 6 hours ago', () => {
|
2021-02-23 14:34:28 -06:00
|
|
|
const oneMinute = 1000 * 60;
|
|
|
|
const sixHours = 1000 * 60 * 60 * 6;
|
|
|
|
|
2021-03-15 16:44:43 -07:00
|
|
|
assert.isFalse(
|
2021-02-23 14:34:28 -06:00
|
|
|
isConversationUnregistered({
|
|
|
|
discoveredUnregisteredAt: Date.now() - sixHours - oneMinute,
|
|
|
|
})
|
|
|
|
);
|
2021-03-15 16:44:43 -07:00
|
|
|
assert.isFalse(
|
2021-02-23 14:34:28 -06:00
|
|
|
isConversationUnregistered({
|
|
|
|
discoveredUnregisteredAt: new Date(1999, 3, 20).getTime(),
|
|
|
|
})
|
|
|
|
);
|
|
|
|
});
|
|
|
|
});
|