TT#12857 Fix bug in error class InvalidTransactionState in janus-client

Change-Id: Iea502321fec5ac5f644e45fb445291b2cb97caee
changes/89/11989/1
Hans-Peter Herzog 10 years ago
parent 709734b1a3
commit 723f2776d8

@ -1,6 +1,6 @@
{
"name": "janus-videoroom-client",
"version": "2.0.2",
"version": "2.0.3",
"main": "src/janus.js",
"scripts": {
"test": "mocha -R spec --full-trace test/*-spec.js"
@ -27,4 +27,5 @@
"devDependencies": {
"mocha": "3.0.1"
}
}

@ -30,9 +30,9 @@ class InvalidTransactionState extends Error {
constructor(transaction) {
super();
this.name = this.constructor.name;
this.message = 'Invalid transaction state ' + this.transaction.getState();
this.transaction = transaction;
this.message = 'Invalid transaction state ' + transaction.getState();
this.state = transaction.getState();
this.transaction = transaction;
}
}

@ -2,6 +2,7 @@
var Transaction = require('../src/transaction').Transaction;
var TransactionTimeoutError = require('../src/transaction').TransactionTimeoutError;
var InvalidTransactionState = require('../src/transaction').InvalidTransactionState;
var ClientResponse = require('../src/client/response').ClientResponse;
var assert = require('chai').assert;
var validator = require('validator');
@ -141,4 +142,30 @@ describe('Transaction', function(){
done();
}).start();
});
it('should throw an error, due to multiple calls of start', function(done){
var transaction = new Transaction({
request: request,
client: clientMock
});
transaction.onSent(()=>{
}).start();
transaction.onError((err)=>{
assert.instanceOf(err, InvalidTransactionState);
done();
}).onSent(()=>{
}).start();
});
it('should throw an error, due to invalid call of response', function(done){
var transaction = new Transaction({
request: request,
client: clientMock
});
transaction.onError((err)=>{
assert.instanceOf(err, InvalidTransactionState);
done();
});
transaction.response(new ClientResponse(request, request));
});
});

Loading…
Cancel
Save