@@ -21,6 +21,7 @@ var duplexify = require('duplexify');
2121var extend = require ( 'extend' ) ;
2222var googleProtoFiles = require ( 'google-proto-files' ) ;
2323var grpc = require ( 'grpc' ) ;
24+ var grpcVersion = require ( 'grpc/package.json' ) . version ;
2425var is = require ( 'is' ) ;
2526var path = require ( 'path' ) ;
2627var proxyquire = require ( 'proxyquire' ) ;
@@ -273,33 +274,40 @@ describe('GrpcService', function() {
273274 } ) ;
274275
275276 it ( 'should default grpcMetadata to empty metadata' , function ( ) {
276- var fakeGrpcMetadata = { } ;
277+ var fakeGrpcMetadata = {
278+ 'x-goog-api-client' : [
279+ 'gl-node/' + process . versions . node ,
280+ 'gccl/' + CONFIG . packageJson . version ,
281+ 'grpc/' + grpcVersion ] . join ( ' ' )
282+ } ;
277283
278- GrpcMetadataOverride = function ( ) {
279- return fakeGrpcMetadata ;
284+ GrpcMetadataOverride = function ( ) { } ;
285+ GrpcMetadataOverride . prototype . add = function ( prop , val ) {
286+ this [ prop ] = val ;
280287 } ;
281288
282289 var config = extend ( { } , CONFIG ) ;
283290 delete config . grpcMetadata ;
284291
285292 var grpcService = new GrpcService ( config , OPTIONS ) ;
286- assert . strictEqual ( grpcService . grpcMetadata , fakeGrpcMetadata ) ;
293+ assert . deepEqual ( grpcService . grpcMetadata , fakeGrpcMetadata ) ;
287294 } ) ;
288295
289296 it ( 'should create and localize grpcMetadata' , function ( ) {
290- var fakeGrpcMetadata = {
291- add : function ( prop , value ) {
292- assert . strictEqual ( prop , Object . keys ( CONFIG . grpcMetadata ) [ 0 ] ) ;
293- assert . strictEqual ( value , CONFIG . grpcMetadata [ prop ] ) ;
294- }
295- } ;
297+ var fakeGrpcMetadata = extend ( {
298+ 'x-goog-api-client' : [
299+ 'gl-node/' + process . versions . node ,
300+ 'gccl/' + CONFIG . packageJson . version ,
301+ 'grpc/' + grpcVersion ] . join ( ' ' )
302+ } , CONFIG . grpcMetadata ) ;
296303
297- GrpcMetadataOverride = function ( ) {
298- return fakeGrpcMetadata ;
304+ GrpcMetadataOverride = function ( ) { } ;
305+ GrpcMetadataOverride . prototype . add = function ( prop , val ) {
306+ this [ prop ] = val ;
299307 } ;
300308
301309 var grpcService = new GrpcService ( CONFIG , OPTIONS ) ;
302- assert . strictEqual ( grpcService . grpcMetadata , fakeGrpcMetadata ) ;
310+ assert . deepEqual ( grpcService . grpcMetadata , fakeGrpcMetadata ) ;
303311 } ) ;
304312
305313 it ( 'should localize maxRetries' , function ( ) {
0 commit comments