@@ -20,11 +20,12 @@ var assert = require('assert');
2020var extend = require ( 'extend' ) ;
2121var proxyquire = require ( 'proxyquire' ) ;
2222
23- var instanceValueOverride ;
23+ var instanceArgsOverride ;
2424var fakeGcpMetadata = {
2525 instance : function ( path , cb ) {
2626 setImmediate ( function ( ) {
27- cb ( null , null , instanceValueOverride || 'fake-instance-value' ) ;
27+ var args = instanceArgsOverride || [ null , null , 'fake-instance-value' ] ;
28+ cb . apply ( fakeGcpMetadata , args ) ;
2829 } ) ;
2930 }
3031} ;
@@ -53,7 +54,7 @@ describe('metadata', function() {
5354 } ;
5455 extend ( Metadata , MetadataCached ) ;
5556 metadata = new Metadata ( LOGGING ) ;
56- instanceValueOverride = null ;
57+ instanceArgsOverride = null ;
5758 } ) ;
5859
5960 afterEach ( function ( ) {
@@ -121,7 +122,7 @@ describe('metadata', function() {
121122 var CLUSTER_NAME = 'gke-cluster-name' ;
122123
123124 it ( 'should return the correct descriptor' , function ( done ) {
124- instanceValueOverride = CLUSTER_NAME ;
125+ instanceArgsOverride = [ null , null , CLUSTER_NAME ] ;
125126
126127 Metadata . getGKEDescriptor ( PROJECT_ID , function ( err , descriptor ) {
127128 assert . ifError ( err ) ;
@@ -135,6 +136,16 @@ describe('metadata', function() {
135136 done ( ) ;
136137 } ) ;
137138 } ) ;
139+
140+ it ( 'should return error on failure to acquire metadata' , function ( done ) {
141+ var FAKE_ERROR = new Error ( ) ;
142+ instanceArgsOverride = [ FAKE_ERROR ] ;
143+
144+ Metadata . getGKEDescriptor ( PROJECT_ID , function ( err ) {
145+ assert . strictEqual ( err , FAKE_ERROR ) ;
146+ done ( ) ;
147+ } ) ;
148+ } ) ;
138149 } ) ;
139150
140151 describe ( 'getGCEDescriptor' , function ( ) {
@@ -271,7 +282,8 @@ describe('metadata', function() {
271282
272283 describe ( 'container engine' , function ( ) {
273284 it ( 'should return correct descriptor' , function ( done ) {
274- instanceValueOverride = 'overridden-value' ;
285+ var CLUSTER_NAME = 'overridden-value' ;
286+ instanceArgsOverride = [ null , null , CLUSTER_NAME ] ;
275287
276288 metadata . logging . auth . getEnvironment = function ( callback ) {
277289 callback ( null , {
@@ -285,7 +297,7 @@ describe('metadata', function() {
285297 assert . deepStrictEqual ( defaultResource , {
286298 type : 'container' ,
287299 labels : {
288- cluster_name : instanceValueOverride ,
300+ cluster_name : CLUSTER_NAME ,
289301 project_id : RETURNED_PROJECT_ID
290302 }
291303 } ) ;
0 commit comments