'use strict'; const { readFileSync } = require('fs'); const path = require('path'); const { expect } = require('chai'); const { Ven } = require('../../client/ven'); const app = require('../../server'); const { sequelize } = require('../../db'); const { port } = require('../../config'); describe('VEN registration', function() { describe('successful self-registration', async function() { let ven; before(async () => { await sequelize.sync(); await app.start(); const clientCrtPem = readFileSync(path.join(__dirname, 'integration-client.crt'), 'utf-8'); ven = new Ven(`http://127.0.0.1:${port}`, clientCrtPem, 'aabbccddeeff', '17:32:59:FD:0E:B5:99:31:27:9C', 'ven.js1'); }); it('should successfully return a vtnId from queryRegistration', async () => { const queryResponse = await ven.queryRegistration(); expect(queryResponse.vtnId).to.be.a('string'); }); it('should successfully register and receive a vtnId and registrationId', async () => { const registrationResponse = await ven.register(); expect(registrationResponse.vtnId).to.be.a('string'); expect(registrationResponse.registrationId).to.be.a('string'); }); it('should successfully return a registrationId and venId from queryRegistration', async () => { const queryResponse = await ven.queryRegistration(); expect(queryResponse.vtnId).to.be.a('string'); expect(queryResponse.registrationId).to.be.a('string'); expect(queryResponse.venId).to.be.a('string'); }); after(async () => { await app.stop(); }); }); });