UNPKG

7.09 kBSource Map (JSON)View Raw
1{"version":3,"sources":["../source/metadata.test.js"],"names":["describe","it","FR","Metadata","metadata","country","type","should","equal","thrower","getNumberingPlanMetadata","nationalPrefixForParsing","chooseCountryByCountryCallingCode","meta","numberingPlan","formats","nationalPrefixIsMandatoryWhenFormattingInNationalFormat","a","b","countries","country_calling_codes","something"],"mappings":"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","sourcesContent":["import metadata from '../metadata.min.json'\r\n\r\nimport Metadata, { validateMetadata, getExtPrefix, isSupportedCountry } from './metadata'\r\n\r\ndescribe('metadata', () => {\r\n\tit('should return undefined for non-defined types', () => {\r\n\t\tconst FR = new Metadata(metadata).country('FR')\r\n\t\ttype(FR.type('FIXED_LINE')).should.equal('undefined')\r\n\t})\r\n\r\n\tit('should validate country', () => {\r\n\t\tconst thrower = () => new Metadata(metadata).country('RUS')\r\n\t\tthrower.should.throw('Unknown country')\r\n\t})\r\n\r\n\tit('should tell if a country is supported', () => {\r\n\t\tisSupportedCountry('RU', metadata).should.equal(true)\r\n\t\tisSupportedCountry('XX', metadata).should.equal(false)\r\n\t})\r\n\r\n\tit('should return ext prefix for a country', () => {\r\n\t\tgetExtPrefix('US', metadata).should.equal(' ext. ')\r\n\t\tgetExtPrefix('CA', metadata).should.equal(' ext. ')\r\n\t\tgetExtPrefix('GB', metadata).should.equal(' x')\r\n\t\t// expect(getExtPrefix('XX', metadata)).to.equal(undefined)\r\n\t\tgetExtPrefix('XX', metadata).should.equal(' ext. ')\r\n\t})\r\n\r\n\tit('should cover non-occuring edge cases', () => {\r\n\t\tnew Metadata(metadata).getNumberingPlanMetadata('999')\r\n\t})\r\n\r\n\tit('should support deprecated methods', () => {\r\n\t\tnew Metadata(metadata).country('US').nationalPrefixForParsing().should.equal('1')\r\n\t\tnew Metadata(metadata).chooseCountryByCountryCallingCode('1').nationalPrefixForParsing().should.equal('1')\r\n\t})\r\n\r\n\tit('should tell if a national prefix is mandatory when formatting a national number', () => {\r\n\t\tconst meta = new Metadata(metadata)\r\n\t\t// No \"national_prefix_formatting_rule\".\r\n\t\t// \"national_prefix_is_optional_when_formatting\": true\r\n\t\tmeta.country('US')\r\n\t\tmeta.numberingPlan.formats()[0].nationalPrefixIsMandatoryWhenFormattingInNationalFormat().should.equal(false)\r\n\t\t// \"national_prefix_formatting_rule\": \"8 ($1)\"\r\n\t\t// \"national_prefix_is_optional_when_formatting\": true\r\n\t\tmeta.country('RU')\r\n\t\tmeta.numberingPlan.formats()[0].nationalPrefixIsMandatoryWhenFormattingInNationalFormat().should.equal(false)\r\n\t\t// \"national_prefix\": \"0\"\r\n\t\t// \"national_prefix_formatting_rule\": \"0 $1\"\r\n\t\tmeta.country('FR')\r\n\t\tmeta.numberingPlan.formats()[0].nationalPrefixIsMandatoryWhenFormattingInNationalFormat().should.equal(true)\r\n\t})\r\n\r\n\tit('should validate metadata', () => {\r\n\t\tlet thrower = () => validateMetadata()\r\n\t\tthrower.should.throw('`metadata` argument not passed')\r\n\r\n\t\tthrower = () => validateMetadata(123)\r\n\t\tthrower.should.throw('Got a number: 123.')\r\n\r\n\t\tthrower = () => validateMetadata('abc')\r\n\t\tthrower.should.throw('Got a string: abc.')\r\n\r\n\t\tthrower = () => validateMetadata({ a: true, b: 2 })\r\n\t\tthrower.should.throw('Got an object of shape: { a, b }.')\r\n\r\n\t\tthrower = () => validateMetadata({ a: true, countries: 2 })\r\n\t\tthrower.should.throw('Got an object of shape: { a, countries }.')\r\n\r\n\t\tthrower = () => validateMetadata({ country_calling_codes: true, countries: 2 })\r\n\t\tthrower.should.throw('Got an object of shape')\r\n\r\n\t\tthrower = () => validateMetadata({ country_calling_codes: {}, countries: 2 })\r\n\t\tthrower.should.throw('Got an object of shape')\r\n\r\n\t\tvalidateMetadata({ country_calling_codes: {}, countries: {}, b: 3 })\r\n\t})\r\n})\r\n\r\nfunction type(something) {\r\n\treturn typeof something\r\n}"],"file":"metadata.test.js"}
\No newline at end of file