You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
janus-client/test/session-spec.js

73 lines
1.8 KiB

'use strict';
var config = require('./config').config;
var JanusServerMock = require('../src/mock/janus-server').JanusServer;
var Client = require('../src/client').Client;
var Session = require('../src/session').Session;
var VideoRoomHandle = require('../src/plugins/videoroom/handle').VideoRoomHandle;
var assert = require('chai').assert;
var mockServerPort = config.janus.server.port;
var mockServerUrl = config.janus.server.url;
describe('Session', function() {
var janusServerMock;
before(function(done){
janusServerMock = new JanusServerMock({
port: mockServerPort
});
janusServerMock.init().then(()=>{
done();
}).catch(()=>{
done(err);
});
});
after(function(){
janusServerMock.close();
});
var client;
var session;
beforeEach(function(done){
client = new Client({
url: mockServerUrl
});
client.onConnected(()=>{
client.createSession().then((newSession)=>{
session = newSession;
done();
}).catch((err)=>{
done(err);
});
});
client.connect();
});
it('should send keep alive', function(done){
session.keepAlive().then(()=>{
done();
}).catch((err)=>{
done(err);
});
});
it('should create video room handle', function(done){
session.videoRoom().createVideoRoomHandle().then((handle)=>{
assert.instanceOf(handle, VideoRoomHandle);
done();
}).catch((err)=>{
done(err);
});
});
it('should destroy itself', function(done){
session.destroy().then(()=>{
done();
}).catch((err)=>{
done(err);
});
});
});