function domainType(domains) {
const types = new Map([
['org', 'organization'],
['com', 'commercial'],
['net', 'network'],
['info', 'information'],
]);
return domains.map((domain) => {
const tld = domain.split('.').pop().toLowerCase();
return types.has(tld) ? types.get(tld) : 'unknown';
});
}
/**
* Test Suite
*/
describe('domainType()', () => {
it('returns list of domain types', () => {
// arrange
const domains = ["en.wiki.org", "codefights.com", "happy.net", "code.info"];
// act
const result = domainType(domains);
// log
console.log("result: ", result);
// assert
expect(result).toEqual(["organization", "commercial", "network", "information"]);
});
});