import { isPrivateAddress } from '@/common/util/net';

describe('outbound URL guard', () => {
  it('classifies private, loopback and link-local addresses', () => {
    for (const ip of ['10.0.0.1', '172.16.5.5', '172.31.255.1', '192.168.1.1', '127.0.0.1', '169.254.169.254', '0.0.0.0', '100.64.0.1', '::1', 'fd00::1', 'fe80::1', '::ffff:10.0.0.1']) {
      expect(isPrivateAddress(ip)).toBe(true);
    }
    for (const ip of ['8.8.8.8', '172.32.0.1', '192.169.1.1', '2606:4700::1111']) {
      expect(isPrivateAddress(ip)).toBe(false);
    }
  });
});
