mirror of
https://github.com/jambonz/jambonz-api-server.git
synced 2026-07-20 11:01:56 +00:00
ed51d8b13f
major merge of features from the hosted branch that was created temporarily during the initial launch of jambonz.org
85 lines
2.3 KiB
JavaScript
85 lines
2.3 KiB
JavaScript
const test = require('tape') ;
|
|
const ADMIN_TOKEN = '38700987-c7a4-4685-a5bb-af378f9734de';
|
|
const authAdmin = {bearer: ADMIN_TOKEN};
|
|
const request = require('request-promise-native').defaults({
|
|
baseUrl: 'http://127.0.0.1:3000/v1'
|
|
});
|
|
const {createVoipCarrier, deleteObjectBySid} = require('./utils');
|
|
|
|
process.on('unhandledRejection', (reason, p) => {
|
|
console.log('Unhandled Rejection at: Promise', p, 'reason:', reason);
|
|
});
|
|
|
|
test('phone number tests', async(t) => {
|
|
const app = require('../app');
|
|
let sid;
|
|
try {
|
|
let result;
|
|
|
|
/* add service provider, phone number, and voip carrier */
|
|
const voip_carrier_sid = await createVoipCarrier(request);
|
|
|
|
/* provision phone number - failure case: digits only */
|
|
result = await request.post('/PhoneNumbers', {
|
|
resolveWithFullResponse: true,
|
|
simple: false,
|
|
auth: authAdmin,
|
|
json: true,
|
|
body: {
|
|
number: '+15083084809',
|
|
voip_carrier_sid
|
|
}
|
|
});
|
|
t.ok(result.statusCode === 201,
|
|
'accepts E.164 format');
|
|
const sid = result.body.sid;
|
|
|
|
/* add a phone number */
|
|
result = await request.post('/PhoneNumbers', {
|
|
resolveWithFullResponse: true,
|
|
auth: authAdmin,
|
|
json: true,
|
|
body: {
|
|
number: '16173333456',
|
|
voip_carrier_sid
|
|
}
|
|
});
|
|
t.ok(result.statusCode === 201, 'successfully created phone number');
|
|
const sid2 = result.body.sid;
|
|
|
|
/* query all phone numbers */
|
|
result = await request.get('/PhoneNumbers', {
|
|
auth: authAdmin,
|
|
json: true,
|
|
});
|
|
t.ok(result.length === 2, 'successfully queried all phone numbers');
|
|
|
|
/* query one phone numbers */
|
|
result = await request.get(`/PhoneNumbers/${sid2}`, {
|
|
auth: authAdmin,
|
|
json: true,
|
|
});
|
|
t.ok(result.number === '16173333456' , 'successfully retrieved phone number by sid');
|
|
|
|
/* delete phone number */
|
|
result = await request.delete(`/PhoneNumbers/${sid}`, {
|
|
auth: authAdmin,
|
|
resolveWithFullResponse: true,
|
|
});
|
|
t.ok(result.statusCode === 204, 'successfully deleted phone number');
|
|
result = await request.delete(`/PhoneNumbers/${sid2}`, {
|
|
auth: authAdmin,
|
|
resolveWithFullResponse: true,
|
|
});
|
|
|
|
await deleteObjectBySid(request, '/VoipCarriers', voip_carrier_sid);
|
|
|
|
//t.end();
|
|
}
|
|
catch (err) {
|
|
console.error(err);
|
|
t.end(err);
|
|
}
|
|
});
|
|
|