import { getLacuna } from '../__utils__/get-lacuna'; import { expectMatchesApiSchema } from '../__utils__/validate-schema'; import Lacuna from '../lacuna'; let lacuna: Lacuna; beforeAll(async () => { lacuna = await getLacuna(); }); test('viewInbox', async () => { const { result } = await lacuna.inbox.viewInbox({}); expect(result?.messages).toBeDefined(); expect(result?.message_count).toBeDefined(); expectMatchesApiSchema('inbox', 'view_inbox', result); }); test('viewArchived', async () => { const { result } = await lacuna.inbox.viewArchived({}); expect(result?.messages).toBeDefined(); expect(result?.message_count).toBeDefined(); expectMatchesApiSchema('inbox', 'view_archived', result); }); test('viewTrashed', async () => { const { result } = await lacuna.inbox.viewTrashed({}); expect(result?.messages).toBeDefined(); expect(result?.message_count).toBeDefined(); expectMatchesApiSchema('inbox', 'view_trashed', result); }); test('viewSent', async () => { const { result } = await lacuna.inbox.viewSent({}); expect(result?.messages).toBeDefined(); expect(result?.message_count).toBeDefined(); expectMatchesApiSchema('inbox', 'view_sent', result); }); test('viewUnread', async () => { const { result } = await lacuna.inbox.viewUnread({}); expect(result?.messages).toBeDefined(); expect(result?.message_count).toBeDefined(); expectMatchesApiSchema('inbox', 'view_unread', result); }); test('trashMessagesWhere', async () => { // A subject no message has, so nothing is actually trashed. const { result } = await lacuna.inbox.trashMessagesWhere({ spec: [{ subject: 'A Subject Nobody Has Used%' }], save_ids: true, }); expect(result?.deleted_count).toBe(0); expect(result?.deleted).toEqual([]); expectMatchesApiSchema('inbox', 'trash_messages_where', result); });