PATH:
opt
/
bitninja-dispatcher
/
node_modules
/
libphonenumber-js
/
build
"use strict"; var _parsePhoneNumber2 = _interopRequireDefault(require("./parsePhoneNumber.js")); var _metadataMin = _interopRequireDefault(require("../metadata.min.json")); var _metadataMax = _interopRequireDefault(require("../metadata.max.json")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } function parsePhoneNumber() { for (var _len = arguments.length, parameters = new Array(_len), _key = 0; _key < _len; _key++) { parameters[_key] = arguments[_key]; } parameters.push(_metadataMin["default"]); return _parsePhoneNumber2["default"].apply(this, parameters); } function parsePhoneNumberFull() { for (var _len2 = arguments.length, parameters = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { parameters[_key2] = arguments[_key2]; } parameters.push(_metadataMax["default"]); return _parsePhoneNumber2["default"].apply(this, parameters); } describe('parsePhoneNumber', function () { it('should parse phone numbers', function () { var phoneNumber = parsePhoneNumber('Phone: 8 (800) 555 35 35.', 'RU'); phoneNumber.country.should.equal('RU'); phoneNumber.countryCallingCode.should.equal('7'); phoneNumber.nationalNumber.should.equal('8005553535'); phoneNumber.number.should.equal('+78005553535'); phoneNumber.isPossible().should.equal(true); phoneNumber.isValid().should.equal(true); // phoneNumber.isValidForRegion('RU').should.equal(true) // Russian phone type regexps aren't included in default metadata. parsePhoneNumberFull('Phone: 8 (800) 555 35 35.', 'RU').getType().should.equal('TOLL_FREE'); }); it('shouldn\'t set country when it\'s non-derivable', function () { var phoneNumber = parsePhoneNumber('+7 111 555 35 35'); expect(phoneNumber.country).to.be.undefined; phoneNumber.countryCallingCode.should.equal('7'); phoneNumber.nationalNumber.should.equal('1115553535'); }); it('should parse carrier code', function () { var phoneNumber = parsePhoneNumber('0 15 21 5555-5555', 'BR'); phoneNumber.carrierCode.should.equal('15'); }); it('should parse phone extension', function () { var phoneNumber = parsePhoneNumber('Phone: 8 (800) 555 35 35 ext. 1234.', 'RU'); phoneNumber.ext.should.equal('1234'); }); it('should validate numbers for countries with no type regular expressions', function () { parsePhoneNumber('+380391234567').isValid().should.equal(true); parsePhoneNumber('+380191234567').isValid().should.equal(false); }); it('should format numbers', function () { var phoneNumber = parsePhoneNumber('Phone: 8 (800) 555 35 35.', 'RU'); phoneNumber.format('NATIONAL').should.equal('8 (800) 555-35-35'); phoneNumber.formatNational().should.equal('8 (800) 555-35-35'); phoneNumber.format('INTERNATIONAL').should.equal('+7 800 555 35 35'); phoneNumber.formatInternational().should.equal('+7 800 555 35 35'); }); it('should get tel: URI', function () { var phoneNumber = parsePhoneNumber('Phone: 8 (800) 555 35 35 ext. 1234.', 'RU'); phoneNumber.getURI().should.equal('tel:+78005553535;ext=1234'); }); it('should work in edge cases', function () { expect(function () { return parsePhoneNumber('+78005553535', -1, {}); }).to["throw"]('Invalid second argument'); }); it('should throw parse errors', function () { expect(function () { return parsePhoneNumber('8005553535', 'XX'); }).to["throw"]('INVALID_COUNTRY'); expect(function () { return parsePhoneNumber('+', 'RU'); }).to["throw"]('NOT_A_NUMBER'); expect(function () { return parsePhoneNumber('a', 'RU'); }).to["throw"]('NOT_A_NUMBER'); expect(function () { return parsePhoneNumber('1', 'RU'); }).to["throw"]('TOO_SHORT'); expect(function () { return parsePhoneNumber('+4'); }).to["throw"]('TOO_SHORT'); expect(function () { return parsePhoneNumber('+44'); }).to["throw"]('TOO_SHORT'); expect(function () { return parsePhoneNumber('+443'); }).to["throw"]('TOO_SHORT'); expect(function () { return parsePhoneNumber('+370'); }).to["throw"]('TOO_SHORT'); expect(function () { return parsePhoneNumber('88888888888888888888', 'RU'); }).to["throw"]('TOO_LONG'); expect(function () { return parsePhoneNumber('8 (800) 555 35 35'); }).to["throw"]('INVALID_COUNTRY'); expect(function () { return parsePhoneNumber('+9991112233'); }).to["throw"]('INVALID_COUNTRY'); expect(function () { return parsePhoneNumber('+9991112233', 'US'); }).to["throw"]('INVALID_COUNTRY'); expect(function () { return parsePhoneNumber('8005553535 ', 'RU'); }).to["throw"]('TOO_LONG'); }); it('should parse incorrect international phone numbers', function () { // Parsing national prefixes and carrier codes // is only required for local phone numbers // but some people don't understand that // and sometimes write international phone numbers // with national prefixes (or maybe even carrier codes). // http://ucken.blogspot.ru/2016/03/trunk-prefixes-in-skype4b.html // Google's original library forgives such mistakes // and so does this library, because it has been requested: // https://github.com/catamphetamine/libphonenumber-js/issues/127 var phoneNumber; // For complete numbers it should strip national prefix. phoneNumber = parsePhoneNumber('+1 1877 215 5230'); phoneNumber.nationalNumber.should.equal('8772155230'); phoneNumber.country.should.equal('US'); // For complete numbers it should strip national prefix. phoneNumber = parsePhoneNumber('+7 8800 555 3535'); phoneNumber.nationalNumber.should.equal('8005553535'); phoneNumber.country.should.equal('RU'); // For incomplete numbers it shouldn't strip national prefix. phoneNumber = parsePhoneNumber('+7 8800 555 353'); phoneNumber.nationalNumber.should.equal('8800555353'); phoneNumber.country.should.equal('RU'); }); }); //# sourceMappingURL=parsePhoneNumber.test.js.map
[+]
..
[-] parsePhoneNumberFromString.test.js
[edit]
[-] AsYouTypeFormatter.PatternMatcher.js.map
[edit]
[-] parseIncompletePhoneNumber.js.map
[edit]
[-] metadata.js
[edit]
[-] isPossibleNumber_.js.map
[edit]
[-] PhoneNumber.js
[edit]
[-] findNumbers.js.map
[edit]
[-] parsePhoneNumber.js
[edit]
[-] isPossibleNumber.test.js.map
[edit]
[-] isPossiblePhoneNumber.test.js
[edit]
[-] findNumbers.js
[edit]
[-] isPossibleNumber.js
[edit]
[-] getNumberType.js
[edit]
[-] getNumberType.js.map
[edit]
[-] AsYouTypeFormatter.PatternMatcher.js
[edit]
[-] parseIncompletePhoneNumber.test.js.map
[edit]
[-] parse_.js
[edit]
[-] getExampleNumber.js.map
[edit]
[-] format.test.js.map
[edit]
[-] parsePhoneNumber_.js.map
[edit]
[-] getExampleNumber.test.js
[edit]
[-] AsYouTypeState.js.map
[edit]
[-] formatNumberForMobileDialing.js.map
[edit]
[-] formatIncompletePhoneNumber.test.js.map
[edit]
[-] AsYouTypeParser.js
[edit]
[-] getExampleNumber.test.js.map
[edit]
[-] validate_.js
[edit]
[-] PhoneNumberMatcher.js.map
[edit]
[-] parsePhoneNumberFromString_.js
[edit]
[-] getNumberType.test.js.map
[edit]
[-] getCountryCallingCode.js.map
[edit]
[-] AsYouTypeFormatter.PatternMatcher.test.js.map
[edit]
[-] searchPhoneNumbersInText.test.js
[edit]
[-] isValidPhoneNumber.test.js.map
[edit]
[-] format_.js.map
[edit]
[-] constants.js.map
[edit]
[-] parse.js.map
[edit]
[-] AsYouTypeFormatter.js.map
[edit]
[-] getCountries.test.js
[edit]
[-] searchPhoneNumbersInText.js
[edit]
[-] AsYouTypeFormatter.PatternParser.test.js
[edit]
[-] isPossiblePhoneNumber.test.js.map
[edit]
[-] PhoneNumber.test.js.map
[edit]
[-] parsePhoneNumber.test.js.map
[edit]
[-] formatNumberForMobileDialing.js
[edit]
[-] AsYouTypeFormatter.util.test.js.map
[edit]
[-] getCountryCallingCode.js
[edit]
[-] searchNumbers.test.js.map
[edit]
[-] findPhoneNumbers.test.js
[edit]
[-] package.json
[edit]
[-] isPossibleNumber.js.map
[edit]
[-] parsePhoneNumber.test.js
[edit]
[-] isValidPhoneNumber.test.js
[edit]
[-] metadata.test.js.map
[edit]
[-] searchPhoneNumbersInText.test.js.map
[edit]
[-] AsYouTypeFormatter.PatternParser.test.js.map
[edit]
[-] AsYouType.test.js
[edit]
[-] isPossiblePhoneNumber.js.map
[edit]
[-] getCountries.js
[edit]
[-] validate.test.js
[edit]
[-] getCountryCallingCode.test.js.map
[edit]
[-] AsYouTypeFormatter.js
[edit]
[-] PhoneNumberMatcher.js
[edit]
[-] validate.test.js.map
[edit]
[-] findNumbers_.js
[edit]
[-] getCountries.js.map
[edit]
[-] formatIncompletePhoneNumber.test.js
[edit]
[-] format.test.js
[edit]
[-] findPhoneNumbers.js
[edit]
[-] searchNumbers.js
[edit]
[-] findPhoneNumbersInText.test.js.map
[edit]
[-] findPhoneNumbersInText.js
[edit]
[-] findPhoneNumbersInText.test.js
[edit]
[-] metadata.test.js
[edit]
[-] validatePhoneNumberLength.test.js.map
[edit]
[-] parse.js
[edit]
[-] validate_.js.map
[edit]
[-] validatePhoneNumberLength.test.js
[edit]
[-] format.js.map
[edit]
[-] findNumbers.test.js
[edit]
[-] AsYouTypeFormatter.complete.js.map
[edit]
[+]
tools
[-] AsYouTypeParser.js.map
[edit]
[-] parsePhoneNumberFromString.js
[edit]
[-] getCountryCallingCode.test.js
[edit]
[-] isPossibleNumber.test.js
[edit]
[-] findPhoneNumbers.test.js.map
[edit]
[-] AsYouTypeFormatter.PatternParser.js.map
[edit]
[-] parse.test.js
[edit]
[-] parsePhoneNumber_.js
[edit]
[-] parsePhoneNumberFromString_.js.map
[edit]
[-] ParseError.js
[edit]
[-] searchNumbers.js.map
[edit]
[-] PhoneNumber.test.js
[edit]
[-] AsYouTypeFormatter.PatternMatcher.test.js
[edit]
[-] getNumberType.test.js
[edit]
[-] AsYouTypeFormatter.PatternParser.js
[edit]
[-] validatePhoneNumberLength.js
[edit]
[-] isValidPhoneNumber.js
[edit]
[-] PhoneNumber.js.map
[edit]
[-] parsePhoneNumberFromString.js.map
[edit]
[-] isValidNumberForRegion.js.map
[edit]
[+]
helpers
[-] parseIncompletePhoneNumber.test.js
[edit]
[-] formatNumberForMobileDialing.test.js
[edit]
[-] isValidNumberForRegion_.js.map
[edit]
[-] parse.test.js.map
[edit]
[-] isValidNumberForRegion_.js
[edit]
[-] PhoneNumberMatcher.test.js
[edit]
[-] isPossibleNumber_.js
[edit]
[-] AsYouTypeFormatter.util.js
[edit]
[-] format.js
[edit]
[-] isValidNumberForRegion.test.js
[edit]
[-] AsYouType.js
[edit]
[-] AsYouTypeFormatter.complete.js
[edit]
[-] formatNumberForMobileDialing.test.js.map
[edit]
[+]
findNumbers
[-] findNumbers_.js.map
[edit]
[-] getExampleNumber.js
[edit]
[-] format_.js
[edit]
[-] isPossiblePhoneNumber.js
[edit]
[-] findPhoneNumbers_.js
[edit]
[-] isValidNumberForRegion.test.js.map
[edit]
[-] AsYouType.test.js.map
[edit]
[-] isValidNumberForRegion.js
[edit]
[-] ParseError.js.map
[edit]
[-] parsePhoneNumberFromString.test.js.map
[edit]
[-] findPhoneNumbersInText.js.map
[edit]
[-] findPhoneNumbers.js.map
[edit]
[-] getCountries.test.js.map
[edit]
[-] validate.js
[edit]
[-] AsYouTypeState.js
[edit]
[-] parsePhoneNumber.js.map
[edit]
[-] formatIncompletePhoneNumber.js
[edit]
[-] AsYouTypeFormatter.util.js.map
[edit]
[-] constants.js
[edit]
[-] validate.js.map
[edit]
[-] PhoneNumberMatcher.test.js.map
[edit]
[-] parse_.js.map
[edit]
[-] findNumbers.test.js.map
[edit]
[-] findPhoneNumbers_.js.map
[edit]
[-] metadata.js.map
[edit]
[-] parseIncompletePhoneNumber.js
[edit]
[-] searchNumbers.test.js
[edit]
[-] AsYouType.js.map
[edit]
[-] searchPhoneNumbersInText.js.map
[edit]
[-] validatePhoneNumberLength.js.map
[edit]
[-] AsYouTypeFormatter.util.test.js
[edit]
[-] formatIncompletePhoneNumber.js.map
[edit]
[-] isValidPhoneNumber.js.map
[edit]