import { expect, expectAsync, tap } from '@push.rocks/tapbundle'; import { tapNodeTools } from '@push.rocks/tapbundle/node'; import * as smartimap from '../ts/index.js'; let testSmartImap: smartimap.ImapClient; tap.test('smartimap', async () => { testSmartImap = new smartimap.ImapClient({ host: await tapNodeTools.getEnvVarOnDemand('IMAP_URL'), port: 993, secure: true, auth: { user: await tapNodeTools.getEnvVarOnDemand('IMAP_USER'), pass: await tapNodeTools.getEnvVarOnDemand('IMAP_PASSWORD'), }, mailbox: 'INBOX', filter: { seen: true, to: await tapNodeTools.getEnvVarOnDemand('IMAP_USER'), }, }); await testSmartImap.connect(); testSmartImap.on('message', (message: smartimap.SmartImapMessage) => { console.log(message.subject); }); testSmartImap.on('error', (error) => { console.error(error); }); testSmartImap.on('connected', () => { console.log('Connected'); }); testSmartImap.on('disconnected', () => { console.log('Disconnected'); }); }); tap.start();