UNPKG

2.26 kBJavaScriptView Raw
1"use strict";
2
3var _metadata = _interopRequireDefault(require("../metadata.min"));
4
5var _PhoneNumber = _interopRequireDefault(require("./PhoneNumber"));
6
7function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
8
9describe('PhoneNumber', function () {
10 it('should validate constructor arguments', function () {
11 expect(function () {
12 return new _PhoneNumber["default"]();
13 }).to["throw"]('`countryCallingCode` not passed');
14 expect(function () {
15 return new _PhoneNumber["default"]('7');
16 }).to["throw"]('`nationalNumber` not passed');
17 });
18 it('should accept country code argument', function () {
19 var phoneNumber = new _PhoneNumber["default"]('RU', '8005553535', _metadata["default"]);
20 phoneNumber.countryCallingCode.should.equal('7');
21 phoneNumber.country.should.equal('RU');
22 phoneNumber.number.should.equal('+78005553535');
23 });
24 it('should format number with options', function () {
25 var phoneNumber = new _PhoneNumber["default"]('7', '8005553535', _metadata["default"]);
26 phoneNumber.ext = '123';
27 phoneNumber.format('NATIONAL', {
28 formatExtension: function formatExtension(number, extension) {
29 return "".concat(number, " \u0434\u043E\u0431. ").concat(extension);
30 }
31 }).should.equal('8 (800) 555-35-35 доб. 123');
32 });
33 it('should compare phone numbers', function () {
34 new _PhoneNumber["default"]('RU', '8005553535', _metadata["default"]).isEqual(new _PhoneNumber["default"]('RU', '8005553535', _metadata["default"])).should.equal(true);
35 new _PhoneNumber["default"]('RU', '8005553535', _metadata["default"]).isEqual(new _PhoneNumber["default"]('7', '8005553535', _metadata["default"])).should.equal(true);
36 new _PhoneNumber["default"]('RU', '8005553535', _metadata["default"]).isEqual(new _PhoneNumber["default"]('RU', '8005553536', _metadata["default"])).should.equal(false);
37 });
38 it('should tell if a number is non-geographic', function () {
39 new _PhoneNumber["default"]('7', '8005553535', _metadata["default"]).isNonGeographic().should.equal(false);
40 new _PhoneNumber["default"]('870', '773111632', _metadata["default"]).isNonGeographic().should.equal(true);
41 });
42});
43//# sourceMappingURL=PhoneNumber.test.js.map
\No newline at end of file