@tellescope/sdk 1.256.1 → 1.256.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/sdk.d.ts +2 -2
- package/lib/cjs/tests/api_tests/appointment_link_expiration.test.d.ts +6 -0
- package/lib/cjs/tests/api_tests/appointment_link_expiration.test.d.ts.map +1 -0
- package/lib/cjs/tests/api_tests/appointment_link_expiration.test.js +163 -0
- package/lib/cjs/tests/api_tests/appointment_link_expiration.test.js.map +1 -0
- package/lib/cjs/tests/api_tests/embeddables_auth_token.test.d.ts +6 -0
- package/lib/cjs/tests/api_tests/embeddables_auth_token.test.d.ts.map +1 -0
- package/lib/cjs/tests/api_tests/embeddables_auth_token.test.js +354 -0
- package/lib/cjs/tests/api_tests/embeddables_auth_token.test.js.map +1 -0
- package/lib/cjs/tests/tests.d.ts.map +1 -1
- package/lib/cjs/tests/tests.js +205 -193
- package/lib/cjs/tests/tests.js.map +1 -1
- package/lib/cjs/tests/unit_tests/phone_validation.test.d.ts +3 -0
- package/lib/cjs/tests/unit_tests/phone_validation.test.d.ts.map +1 -0
- package/lib/cjs/tests/unit_tests/phone_validation.test.js +96 -0
- package/lib/cjs/tests/unit_tests/phone_validation.test.js.map +1 -0
- package/lib/esm/enduser.d.ts +0 -1
- package/lib/esm/enduser.d.ts.map +1 -1
- package/lib/esm/sdk.d.ts +4 -5
- package/lib/esm/sdk.d.ts.map +1 -1
- package/lib/esm/session.d.ts +0 -1
- package/lib/esm/session.d.ts.map +1 -1
- package/lib/esm/tests/api_tests/appointment_link_expiration.test.d.ts +6 -0
- package/lib/esm/tests/api_tests/appointment_link_expiration.test.d.ts.map +1 -0
- package/lib/esm/tests/api_tests/appointment_link_expiration.test.js +156 -0
- package/lib/esm/tests/api_tests/appointment_link_expiration.test.js.map +1 -0
- package/lib/esm/tests/api_tests/embeddables_auth_token.test.d.ts +6 -0
- package/lib/esm/tests/api_tests/embeddables_auth_token.test.d.ts.map +1 -0
- package/lib/esm/tests/api_tests/embeddables_auth_token.test.js +347 -0
- package/lib/esm/tests/api_tests/embeddables_auth_token.test.js.map +1 -0
- package/lib/esm/tests/tests.d.ts.map +1 -1
- package/lib/esm/tests/tests.js +205 -193
- package/lib/esm/tests/tests.js.map +1 -1
- package/lib/esm/tests/unit_tests/phone_validation.test.d.ts +3 -0
- package/lib/esm/tests/unit_tests/phone_validation.test.d.ts.map +1 -0
- package/lib/esm/tests/unit_tests/phone_validation.test.js +93 -0
- package/lib/esm/tests/unit_tests/phone_validation.test.js.map +1 -0
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +10 -10
- package/src/tests/api_tests/appointment_link_expiration.test.ts +92 -0
- package/src/tests/api_tests/embeddables_auth_token.test.ts +417 -0
- package/src/tests/tests.ts +6 -0
- package/src/tests/unit_tests/phone_validation.test.ts +108 -0
- package/test_generated.pdf +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"phone_validation.test.d.ts","sourceRoot":"","sources":["../../../../src/tests/unit_tests/phone_validation.test.ts"],"names":[],"mappings":"AA8FA,QAAA,MAAM,OAAO,YAOZ,CAAA;AAMD,OAAO,EAAE,OAAO,IAAI,2BAA2B,EAAE,CAAA"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { parse_phone_number, phoneValidator, phoneValidatorOptional, } from "@tellescope/validation";
|
|
2
|
+
import { to_human_readable_phone_number } from "@tellescope/utilities";
|
|
3
|
+
var failures = 0;
|
|
4
|
+
var passed = 0;
|
|
5
|
+
var assert = function (name, actual, expected) {
|
|
6
|
+
if (actual === expected) {
|
|
7
|
+
passed++;
|
|
8
|
+
console.log(" \u2713 ".concat(name));
|
|
9
|
+
}
|
|
10
|
+
else {
|
|
11
|
+
failures++;
|
|
12
|
+
console.error(" \u2717 ".concat(name, " \u2014 expected ").concat(JSON.stringify(expected), ", got ").concat(JSON.stringify(actual)));
|
|
13
|
+
}
|
|
14
|
+
};
|
|
15
|
+
// validators throw on invalid input; THREW lets us assert rejection without try/catch per case
|
|
16
|
+
var THREW = 'THREW';
|
|
17
|
+
var attempt = function (validate, value) {
|
|
18
|
+
try {
|
|
19
|
+
return validate(value);
|
|
20
|
+
}
|
|
21
|
+
catch (err) {
|
|
22
|
+
return THREW;
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
// phoneValidator and phoneValidatorOptional carry identical parsing logic and differ only in
|
|
26
|
+
// their build_validator options, so every parsing case runs against both.
|
|
27
|
+
var run_validator_tests = function () {
|
|
28
|
+
console.log("\n[phoneValidator / phoneValidatorOptional]");
|
|
29
|
+
var cases = [
|
|
30
|
+
// [input, expected, description]
|
|
31
|
+
['+14155551234', '+14155551234', 'normalized E.164 passes through'],
|
|
32
|
+
['4155551234', '+14155551234', 'bare 10 digits gets a US country code'],
|
|
33
|
+
['(415) 555-1234', '+14155551234', 'formatted number is normalized'],
|
|
34
|
+
[' 415-555-1234 ', '+14155551234', 'whitespace and dashes are stripped'],
|
|
35
|
+
['311', '311', 'N11 service code passes through (pre-existing behavior)'],
|
|
36
|
+
// Short codes: valid SMS endpoints, but not E.164 — no country code, no '+'
|
|
37
|
+
['894546', '894546', '6-digit short code passes through unchanged'],
|
|
38
|
+
['89454', '89454', '5-digit short code passes through unchanged'],
|
|
39
|
+
['00000', '00000', 'leading zeroes are preserved, not normalized away'],
|
|
40
|
+
// The short-code allowance must not widen past bare 5-6 digits
|
|
41
|
+
['+1894546', THREW, 'a leading + forces the strict E.164 path'],
|
|
42
|
+
['1234', THREW, '4 digits still rejects'],
|
|
43
|
+
['1234567', THREW, '7 digits still rejects'],
|
|
44
|
+
['123456789', THREW, '9 digits still rejects'],
|
|
45
|
+
['12', THREW, 'too-few digits still rejects'],
|
|
46
|
+
['not a phone', THREW, 'junk still rejects'],
|
|
47
|
+
];
|
|
48
|
+
for (var _i = 0, cases_1 = cases; _i < cases_1.length; _i++) {
|
|
49
|
+
var _a = cases_1[_i], input = _a[0], expected = _a[1], description = _a[2];
|
|
50
|
+
assert("".concat(description, " (required)"), attempt(phoneValidator.validate(), input), expected);
|
|
51
|
+
assert("".concat(description, " (optional)"), attempt(phoneValidatorOptional.validate(), input), expected);
|
|
52
|
+
}
|
|
53
|
+
assert('optional variant accepts empty string', attempt(phoneValidatorOptional.validate(), ''), '');
|
|
54
|
+
};
|
|
55
|
+
// parse_phone_number is the non-throwing wrapper used on integration payloads, where a junk
|
|
56
|
+
// number must not fail the whole request. It inherits the short-code rule from phoneValidator.
|
|
57
|
+
var run_parse_tests = function () {
|
|
58
|
+
console.log("\n[parse_phone_number]");
|
|
59
|
+
assert('E.164 passes through', parse_phone_number('+14155551234'), '+14155551234');
|
|
60
|
+
assert('bare 10 digits normalizes', parse_phone_number('4155551234'), '+14155551234');
|
|
61
|
+
assert('short code passes through', parse_phone_number('894546'), '894546');
|
|
62
|
+
assert('7 digits returns undefined', parse_phone_number('1234567'), undefined);
|
|
63
|
+
assert('junk returns undefined', parse_phone_number('not a phone'), undefined);
|
|
64
|
+
assert('empty string returns undefined', parse_phone_number(''), undefined);
|
|
65
|
+
assert('undefined returns undefined', parse_phone_number(undefined), undefined);
|
|
66
|
+
assert('null returns undefined', parse_phone_number(null), undefined);
|
|
67
|
+
};
|
|
68
|
+
// Guards the display formatter against the negative-slice bug: before the length check,
|
|
69
|
+
// a 6-digit short code rendered as '+ (894) 546-'
|
|
70
|
+
var run_display_tests = function () {
|
|
71
|
+
console.log("\n[to_human_readable_phone_number]");
|
|
72
|
+
assert('E.164 formats with country code', to_human_readable_phone_number('+15555555555'), '+1 (555) 555-5555');
|
|
73
|
+
assert('bare 10 digits formats', to_human_readable_phone_number('5555555555'), '(555) 555-5555');
|
|
74
|
+
assert('6-digit short code is returned as-is', to_human_readable_phone_number('894546'), '894546');
|
|
75
|
+
assert('5-digit short code is returned as-is', to_human_readable_phone_number('89454'), '89454');
|
|
76
|
+
assert('311 is returned as-is', to_human_readable_phone_number('311'), '311');
|
|
77
|
+
assert('empty string returns empty string', to_human_readable_phone_number(''), '');
|
|
78
|
+
assert('undefined returns empty string', to_human_readable_phone_number(undefined), '');
|
|
79
|
+
};
|
|
80
|
+
var run_all = function () {
|
|
81
|
+
console.log("Running phone_validation unit tests");
|
|
82
|
+
run_validator_tests();
|
|
83
|
+
run_parse_tests();
|
|
84
|
+
run_display_tests();
|
|
85
|
+
console.log("\nResults: ".concat(passed, " passed, ").concat(failures, " failed"));
|
|
86
|
+
if (failures > 0)
|
|
87
|
+
process.exit(1);
|
|
88
|
+
};
|
|
89
|
+
if (require.main === module) {
|
|
90
|
+
run_all();
|
|
91
|
+
}
|
|
92
|
+
export { run_all as phone_validation_unit_tests };
|
|
93
|
+
//# sourceMappingURL=phone_validation.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"phone_validation.test.js","sourceRoot":"","sources":["../../../../src/tests/unit_tests/phone_validation.test.ts"],"names":[],"mappings":"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"}
|