mirror of
https://github.com/jambonz/jambonz-api-server.git
synced 2025-12-19 05:47:46 +00:00
98 lines
2.8 KiB
JavaScript
98 lines
2.8 KiB
JavaScript
const test = require('tape') ;
|
|
const ADMIN_TOKEN = '38700987-c7a4-4685-a5bb-af378f9734de';
|
|
const authAdmin = {bearer: ADMIN_TOKEN};
|
|
const { createClient } = require('./http-client');
|
|
const request = createClient({
|
|
baseUrl: 'http://127.0.0.1:3000/v1'
|
|
});
|
|
const {createServiceProvider, deleteObjectBySid} = require('./utils');
|
|
|
|
process.on('unhandledRejection', (reason, p) => {
|
|
console.log('Unhandled Rejection at: Promise', p, 'reason:', reason);
|
|
});
|
|
|
|
test('sbc_addresses tests', async(t) => {
|
|
const app = require('../app');
|
|
let sid;
|
|
try {
|
|
let result;
|
|
const service_provider_sid = await createServiceProvider(request);
|
|
|
|
/* add service_provider user */
|
|
const sp_name = 'sbc_service_provider';
|
|
const sp_password = 'password';
|
|
result = await request.post(`/Users`, {
|
|
resolveWithFullResponse: true,
|
|
json: true,
|
|
auth: authAdmin,
|
|
body: {
|
|
name: sp_name,
|
|
email: 'sbc_sp@jambonz.com',
|
|
is_active: true,
|
|
force_change: false,
|
|
initial_password: sp_password,
|
|
service_provider_sid,
|
|
}
|
|
});
|
|
t.ok(result.statusCode === 201 && result.body.user_sid, 'SBC service_provider scope user created');
|
|
const sbc_sp_user_sid = result.body.user_sid;
|
|
|
|
result = await request.post('/login', {
|
|
resolveWithFullResponse: true,
|
|
json: true,
|
|
body: {
|
|
username: sp_name,
|
|
password: sp_password,
|
|
}
|
|
});
|
|
t.ok(result.statusCode === 200 && result.body.token, 'successfully logged in as sbc user');
|
|
const authSbcSp = {bearer: result.body.token};
|
|
|
|
|
|
/* add a service provider sbc */
|
|
result = await request.post('/Sbcs', {
|
|
resolveWithFullResponse: true,
|
|
auth: authAdmin,
|
|
json: true,
|
|
body: {
|
|
ipv4: '192.168.1.4',
|
|
service_provider_sid
|
|
}
|
|
});
|
|
t.ok(result.statusCode === 201, 'successfully created service provider sbc ');
|
|
const sid = result.body.sid;
|
|
|
|
result = await request.get(`/Sbcs?service_provider_sid=${service_provider_sid}`, {
|
|
resolveWithFullResponse: true,
|
|
auth: authAdmin,
|
|
json: true
|
|
});
|
|
//console.log(result.body)
|
|
t.ok(result.body.length === 1 && result.body[0].ipv4 === '192.168.1.4', 'successfully retrieved service provider sbc');
|
|
|
|
result = await request.get('/Sbcs', {
|
|
resolveWithFullResponse: true,
|
|
auth: authSbcSp,
|
|
json: true
|
|
});
|
|
//console.log(result.body)
|
|
t.ok(result.body.length === 1 && result.body[0].ipv4 === '192.168.1.4', 'successfully retrieved service provider sbc');
|
|
|
|
await request.delete(`/Users/${sbc_sp_user_sid}`, {
|
|
resolveWithFullResponse: true,
|
|
json: true,
|
|
auth: authAdmin,
|
|
});
|
|
|
|
await deleteObjectBySid(request, '/Sbcs', sid);
|
|
await deleteObjectBySid(request, '/ServiceProviders', service_provider_sid);
|
|
|
|
//t.end();
|
|
}
|
|
catch (err) {
|
|
console.error(err);
|
|
t.end(err);
|
|
}
|
|
});
|
|
|