UNPKG

parse-domain

Version:

Splits a hostname into subdomains, domain and (effective) top-level domains

57 lines 1.95 kB
import { deepStrictEqual } from "assert"; import { fromUrl, parseDomain, ParseResultType } from "./main.js"; export const runSmokeTest = () => { deepStrictEqual(parseDomain("www.example.com"), { hostname: "www.example.com", type: ParseResultType.Listed, labels: ["www", "example", "com"], subDomains: ["www"], domain: "example", topLevelDomains: ["com"], icann: { subDomains: ["www"], domain: "example", topLevelDomains: ["com"], }, }); deepStrictEqual(parseDomain("www.example.co.uk"), { hostname: "www.example.co.uk", type: ParseResultType.Listed, labels: ["www", "example", "co", "uk"], subDomains: ["www"], domain: "example", topLevelDomains: ["co", "uk"], icann: { subDomains: ["www"], domain: "example", topLevelDomains: ["co", "uk"], }, }); deepStrictEqual(parseDomain("www.example.cloudfront.net"), { hostname: "www.example.cloudfront.net", type: ParseResultType.Listed, labels: ["www", "example", "cloudfront", "net"], subDomains: ["www"], domain: "example", topLevelDomains: ["cloudfront", "net"], icann: { subDomains: ["www", "example"], domain: "cloudfront", topLevelDomains: ["net"], }, }); deepStrictEqual(parseDomain(fromUrl("www.食狮.公司.cn")), { hostname: "www.xn--85x722f.xn--55qx5d.cn", type: ParseResultType.Listed, labels: ["www", "xn--85x722f", "xn--55qx5d", "cn"], subDomains: ["www"], domain: "xn--85x722f", topLevelDomains: ["xn--55qx5d", "cn"], icann: { subDomains: ["www"], domain: "xn--85x722f", topLevelDomains: ["xn--55qx5d", "cn"], }, }); }; //# sourceMappingURL=smoke-test.js.map