Cleanup - unused files / unused exports / duplicate exports
[ProtonMail-WebClient.git] / packages / shared / test / mail / helpers.spec.ts
blob18ca6f98e197763e1693a36edd3e9ff271ea21fd
1 import type { Message } from '@proton/shared/lib/interfaces/mail/Message';
2 import { MESSAGE_FLAGS } from '@proton/shared/lib/mail/constants';
3 import { clearFlag, hasFlag, setFlag, toggleFlag } from '@proton/shared/lib/mail/messages';
5 describe('hasFlag', () => {
6     it('should detect correctly that the message has a flag', () => {
7         const message = {
8             Flags: MESSAGE_FLAGS.FLAG_SENT,
9         } as Partial<Message>;
11         expect(hasFlag(MESSAGE_FLAGS.FLAG_SENT)(message)).toBeTrue();
12     });
14     it('should detect correctly that the message has not a flag', () => {
15         const message = {
16             Flags: MESSAGE_FLAGS.FLAG_RECEIVED,
17         } as Partial<Message>;
19         expect(hasFlag(MESSAGE_FLAGS.FLAG_SENT)(message)).toBeFalsy();
20     });
21 });
23 describe('setFlag', () => {
24     it('should set the message Flag', () => {
25         const message = {
26             Flags: MESSAGE_FLAGS.FLAG_SENT,
27         } as Partial<Message>;
29         const newFlags = setFlag(MESSAGE_FLAGS.FLAG_RECEIPT_SENT)(message);
30         expect(newFlags).toEqual(MESSAGE_FLAGS.FLAG_SENT + MESSAGE_FLAGS.FLAG_RECEIPT_SENT);
31     });
32 });
34 describe('clearFlag', () => {
35     it('should clear the message flag', () => {
36         const message = {
37             Flags: MESSAGE_FLAGS.FLAG_SENT + MESSAGE_FLAGS.FLAG_RECEIPT_SENT,
38         } as Partial<Message>;
40         const newFlags = clearFlag(MESSAGE_FLAGS.FLAG_RECEIPT_SENT)(message);
41         expect(newFlags).toEqual(MESSAGE_FLAGS.FLAG_SENT);
42     });
43 });
45 describe('toggleFlag', () => {
46     it('should clear the message flag', () => {
47         const message = {
48             Flags: MESSAGE_FLAGS.FLAG_SENT + MESSAGE_FLAGS.FLAG_RECEIPT_SENT,
49         } as Partial<Message>;
51         const newFlags = toggleFlag(MESSAGE_FLAGS.FLAG_RECEIPT_SENT)(message);
52         expect(newFlags).toEqual(MESSAGE_FLAGS.FLAG_SENT);
53     });
54 });