1 | "use strict";
|
2 |
|
3 | var _metadata = _interopRequireDefault(require("../metadata.min"));
|
4 |
|
5 | var _PhoneNumber = _interopRequireDefault(require("./PhoneNumber"));
|
6 |
|
7 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
8 |
|
9 | describe('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 |
|
\ | No newline at end of file |