feat: add SMS Bower phone SMS provider
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
const test = require('node:test');
|
||||
const assert = require('node:assert/strict');
|
||||
const fs = require('node:fs');
|
||||
const vm = require('node:vm');
|
||||
|
||||
function loadRegistry() {
|
||||
const sandbox = { globalThis: {} };
|
||||
sandbox.self = sandbox.globalThis;
|
||||
vm.runInNewContext(fs.readFileSync('phone-sms/providers/sms-bower.js', 'utf8'), sandbox);
|
||||
vm.runInNewContext(fs.readFileSync('phone-sms/providers/registry.js', 'utf8'), sandbox);
|
||||
return sandbox.globalThis.PhoneSmsProviderRegistry;
|
||||
}
|
||||
|
||||
test('SMS Bower is registered as a known phone SMS provider', () => {
|
||||
const registry = loadRegistry();
|
||||
assert.equal(registry.normalizeProviderId('sms-bower'), 'sms-bower');
|
||||
assert.equal(registry.getProviderLabel('sms-bower'), 'SMS Bower');
|
||||
assert.ok(registry.getProviderIds().includes('sms-bower'));
|
||||
assert.deepEqual(
|
||||
Array.from(registry.normalizeProviderOrder(['sms-bower', 'hero-sms'])),
|
||||
['sms-bower', 'hero-sms']
|
||||
);
|
||||
const provider = registry.createProvider('sms-bower', { fetchImpl: async () => ({ ok: true, text: async () => 'ACCESS_BALANCE:1.23' }) });
|
||||
assert.equal(provider.id, 'sms-bower');
|
||||
});
|
||||
Reference in New Issue
Block a user