1818
1919var assert = require ( 'assert' ) ;
2020var extend = require ( 'extend' ) ;
21+ var proxyquire = require ( 'proxyquire' ) ;
2122
22- var Metadata = require ( '../src/metadata.js' ) ;
23+ var instanceValueOverride ;
24+ var fakeGcpMetadata = {
25+ instance : function ( path , cb ) {
26+ setImmediate ( function ( ) {
27+ cb ( null , null , instanceValueOverride || 'fake-instance-value' ) ;
28+ } ) ;
29+ }
30+ } ;
31+
32+ var Metadata = proxyquire ( '../src/metadata.js' , {
33+ 'gcp-metadata' : fakeGcpMetadata
34+ } ) ;
2335
2436describe ( 'metadata' , function ( ) {
2537 var MetadataCached ;
@@ -40,6 +52,7 @@ describe('metadata', function() {
4052 } ;
4153 extend ( Metadata , MetadataCached ) ;
4254 metadata = new Metadata ( LOGGING ) ;
55+ instanceValueOverride = null ;
4356 } ) ;
4457
4558 afterEach ( function ( ) {
@@ -104,10 +117,13 @@ describe('metadata', function() {
104117 } ) ;
105118
106119 describe ( 'getGKEDescriptor' , function ( ) {
120+ var CLUSTER_NAME = 'gke-cluster-name' ;
121+
107122 it ( 'should return the correct descriptor' , function ( ) {
108- assert . deepEqual ( Metadata . getGKEDescriptor ( PROJECT_ID ) , {
123+ assert . deepEqual ( Metadata . getGKEDescriptor ( PROJECT_ID , CLUSTER_NAME ) , {
109124 type : 'container' ,
110125 labels : {
126+ cluster_name : CLUSTER_NAME ,
111127 project_id : PROJECT_ID
112128 }
113129 } ) ;
@@ -246,10 +262,14 @@ describe('metadata', function() {
246262
247263 describe ( 'container engine' , function ( ) {
248264 it ( 'should return correct descriptor' , function ( done ) {
265+ var RETURNED_CLUSTER_NAME = 'fake-cluster-name' ;
249266 var DESCRIPTOR = { } ;
250267
251- Metadata . getGKEDescriptor = function ( projectId ) {
268+ instanceValueOverride = RETURNED_CLUSTER_NAME ;
269+
270+ Metadata . getGKEDescriptor = function ( projectId , clusterName ) {
252271 assert . strictEqual ( projectId , RETURNED_PROJECT_ID ) ;
272+ assert . strictEqual ( clusterName , RETURNED_CLUSTER_NAME ) ;
253273 return DESCRIPTOR ;
254274 } ;
255275
0 commit comments