Path: blob/main/plugins/default-browser-emulator/test/publicIp.test.ts
1029 views
import { Helpers } from '@secret-agent/testing';1import CorePlugins from '@secret-agent/core/lib/CorePlugins';2import { IBoundLog } from '@secret-agent/interfaces/ILog';3import Log from '@secret-agent/commons/Logger';4import RequestSession from '@secret-agent/mitm/handlers/RequestSession';5import MitmServer from '@secret-agent/mitm/lib/MitmProxy';6import lookupPublicIp, { IpLookupServices } from '../lib/helpers/lookupPublicIp';7import BrowserEmulator from '../index';89const { log } = Log(module);10const browserEmulatorId = BrowserEmulator.id;11const selectBrowserMeta = BrowserEmulator.selectBrowserMeta();1213afterAll(Helpers.afterAll);14afterEach(Helpers.afterEach);1516test('can resolve a v4 address', async () => {17await expect(lookupPublicIp()).resolves.toBeTruthy();18});1920test('can resolve an ip address with a mitm socket', async () => {21const mitmServer = await MitmServer.start();22Helpers.needsClosing.push(mitmServer);2324const plugins = new CorePlugins({ browserEmulatorId, selectBrowserMeta }, log as IBoundLog);25const session = new RequestSession(`1`, plugins);26mitmServer.registerSession(session, false);27Helpers.needsClosing.push(session);2829await expect(lookupPublicIp(IpLookupServices.aws, session.requestAgent)).resolves.toBeTruthy();30});313233