mirror of https://github.com/grpc/grpc-node.git
56 lines
1.6 KiB
JavaScript
56 lines
1.6 KiB
JavaScript
var assert = require('assert');
|
|
var grpc = require('bindings')('grpc.node');
|
|
|
|
describe('channel', function() {
|
|
describe('constructor', function() {
|
|
it('should require a string for the first argument', function() {
|
|
assert.doesNotThrow(function() {
|
|
new grpc.Channel('hostname');
|
|
});
|
|
assert.throws(function() {
|
|
new grpc.Channel();
|
|
}, TypeError);
|
|
assert.throws(function() {
|
|
new grpc.Channel(5);
|
|
});
|
|
});
|
|
it('should accept an object for the second parameter', function() {
|
|
assert.doesNotThrow(function() {
|
|
new grpc.Channel('hostname', {});
|
|
});
|
|
assert.throws(function() {
|
|
new grpc.Channel('hostname', 5);
|
|
});
|
|
});
|
|
it('should only accept objects with string or int values', function() {
|
|
assert.doesNotThrow(function() {
|
|
new grpc.Channel('hostname', {'key' : 'value'});
|
|
});
|
|
assert.doesNotThrow(function() {
|
|
new grpc.Channel('hostname', {'key' : 5});
|
|
});
|
|
assert.throws(function() {
|
|
new grpc.Channel('hostname', {'key' : null});
|
|
});
|
|
assert.throws(function() {
|
|
new grpc.Channel('hostname', {'key' : new Date()});
|
|
});
|
|
});
|
|
});
|
|
describe('close', function() {
|
|
it('should succeed silently', function() {
|
|
var channel = new grpc.Channel('hostname', {});
|
|
assert.doesNotThrow(function() {
|
|
channel.close();
|
|
});
|
|
});
|
|
it('should be idempotent', function() {
|
|
var channel = new grpc.Channel('hostname', {});
|
|
assert.doesNotThrow(function() {
|
|
channel.close();
|
|
channel.close();
|
|
});
|
|
});
|
|
});
|
|
});
|