From 0a772968350cf1a39e00d710841584b0a3cd9589 Mon Sep 17 00:00:00 2001 From: David Garcia Quintas Date: Tue, 30 May 2017 14:11:38 -0700 Subject: [PATCH 1/3] 1.4.x branch cut, version bump PR --- health_check/package.json | 4 ++-- tools/package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/health_check/package.json b/health_check/package.json index 37c9b7a5..238547c1 100644 --- a/health_check/package.json +++ b/health_check/package.json @@ -1,6 +1,6 @@ { "name": "grpc-health-check", - "version": "1.4.0-dev", + "version": "1.4.0-pre1", "author": "Google Inc.", "description": "Health check service for use with gRPC", "repository": { @@ -15,7 +15,7 @@ } ], "dependencies": { - "grpc": "^1.4.0-dev", + "grpc": "^1.4.0-pre1", "lodash": "^3.9.3", "google-protobuf": "^3.0.0" }, diff --git a/tools/package.json b/tools/package.json index a81aa87f..f4f72a4d 100644 --- a/tools/package.json +++ b/tools/package.json @@ -1,6 +1,6 @@ { "name": "grpc-tools", - "version": "1.4.0-dev", + "version": "1.4.0-pre1", "author": "Google Inc.", "description": "Tools for developing with gRPC on Node.js", "homepage": "http://www.grpc.io/", From 44f1e26763ef40df9b5d96c92ecfd7f4e7157587 Mon Sep 17 00:00:00 2001 From: murgatroid99 Date: Mon, 5 Jun 2017 13:46:22 -0700 Subject: [PATCH 2/3] Fix minor error in Node generated documentation --- src/grpc_extension.js | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/grpc_extension.js b/src/grpc_extension.js index 864da973..8c374e50 100644 --- a/src/grpc_extension.js +++ b/src/grpc_extension.js @@ -31,6 +31,13 @@ * */ +/** + * @module + * @private + */ + +'use strict'; + var binary = require('node-pre-gyp/lib/pre-binding'); var path = require('path'); var binding_path = From faae84a8cda264295c8bd4586061dbfce3c77c24 Mon Sep 17 00:00:00 2001 From: murgatroid99 Date: Fri, 9 Jun 2017 13:04:28 -0700 Subject: [PATCH 3/3] Node: add test for reconnecting client after server restart --- test/surface_test.js | 47 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) diff --git a/test/surface_test.js b/test/surface_test.js index f8eaf62a..11577e79 100644 --- a/test/surface_test.js +++ b/test/surface_test.js @@ -1378,3 +1378,50 @@ describe('Cancelling surface client', function() { call.cancel(); }); }); +describe('Client reconnect', function() { + var server; + var Client; + var client; + var port; + beforeEach(function() { + var test_proto = ProtoBuf.loadProtoFile(__dirname + '/echo_service.proto'); + var echo_service = test_proto.lookup('EchoService'); + Client = grpc.loadObject(echo_service); + server = new grpc.Server(); + server.addService(Client.service, { + echo: function(call, callback) { + callback(null, call.request); + } + }); + port = server.bind('localhost:0', server_insecure_creds); + client = new Client('localhost:' + port, grpc.credentials.createInsecure()); + server.start(); + }); + afterEach(function() { + server.forceShutdown(); + }); + it('should reconnect after server restart', function(done) { + client.echo({value: 'test value', value2: 3}, function(error, response) { + assert.ifError(error); + assert.deepEqual(response, {value: 'test value', value2: 3}); + server.tryShutdown(function() { + server = new grpc.Server(); + server.addService(Client.service, { + echo: function(call, callback) { + callback(null, call.request); + } + }); + server.bind('localhost:' + port, server_insecure_creds); + server.start(); + client.echo(undefined, function(error, response) { + if (error) { + console.log(error); + } + assert.ifError(error); + assert.deepEqual(response, {value: '', value2: 0}); + done(); + }); + }); + }); + }); +});