All files proxyAgent.ts

100% Statements 11/11
100% Branches 2/2
100% Functions 1/1
100% Lines 11/11

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 251x 1x     1x     15x 5x   5x 3x     5x 3x 3x     5x          
import { HttpProxyAgent } from 'http-proxy-agent';
import { HttpsProxyAgent } from 'https-proxy-agent';
import { ProxyAgents, ProxySettings } from '.';
 
export function createProxyAgents(
  proxySettings: ProxySettings
): ProxyAgents | undefined {
  const { address, port, auth } = proxySettings;
  const proxyUrl = new URL(address);
 
  if (port) {
    proxyUrl.port = port.toString();
  }
 
  if (auth) {
    proxyUrl.username = auth.username;
    proxyUrl.password = auth.password;
  }
 
  return {
    httpAgent: new HttpProxyAgent(proxyUrl.toString()),
    httpsAgent: new HttpsProxyAgent(proxyUrl.toString()),
  };
}