@@ -288,12 +288,70 @@ func TestServiceDiscoveryClient_GetService(t *testing.T) {
288
288
// TODO: Add unit tests
289
289
}
290
290
291
- func TestServiceDiscoveryClient_RegisterEndpoints (t * testing.T ) {
291
+ func TestServiceDiscoveryClient_GetService_CachedValues (t * testing.T ) {
292
292
// TODO: Add unit tests
293
293
}
294
294
295
+ func TestServiceDiscoveryClient_RegisterEndpoints (t * testing.T ) {
296
+ mockController := gomock .NewController (t )
297
+ defer mockController .Finish ()
298
+
299
+ sdApi := cloudmap .NewMockServiceDiscoveryApi (mockController )
300
+
301
+ sdc := getTestSdClient (t , sdApi )
302
+ sdc .namespaceCache .Add (test .NsName , test .NsId , time .Minute )
303
+ sdc .serviceIdCache .Add (fmt .Sprintf ("%s/%s" , test .NsName , test .SvcName ), test .SvcId , time .Minute )
304
+
305
+ attrs1 := map [string ]string {"AWS_INSTANCE_IPV4" : test .EndptIp1 , "AWS_INSTANCE_PORT" : test .EndptPortStr1 }
306
+ attrs2 := map [string ]string {"AWS_INSTANCE_IPV4" : test .EndptIp2 , "AWS_INSTANCE_PORT" : test .EndptPortStr2 }
307
+
308
+ sdApi .EXPECT ().RegisterInstance (context .TODO (), test .SvcId , test .EndptId1 , attrs1 ).
309
+ Return (test .OpId1 , nil )
310
+ sdApi .EXPECT ().RegisterInstance (context .TODO (), test .SvcId , test .EndptId2 , attrs2 ).
311
+ Return (test .OpId2 , nil )
312
+ sdApi .EXPECT ().ListOperations (context .TODO (), gomock .Any ()).
313
+ Return (map [string ]types.OperationStatus {
314
+ test .OpId1 : types .OperationStatusSuccess ,
315
+ test .OpId2 : types .OperationStatusSuccess }, nil )
316
+
317
+ err := sdc .RegisterEndpoints (context .TODO (), test .NsName , test .SvcName ,
318
+ []* model.Endpoint {
319
+ {
320
+ Id : test .EndptId1 ,
321
+ IP : test .EndptIp1 ,
322
+ Port : test .EndptPort1 ,
323
+ },
324
+ {
325
+ Id : test .EndptId2 ,
326
+ IP : test .EndptIp2 ,
327
+ Port : test .EndptPort2 ,
328
+ },
329
+ })
330
+
331
+ assert .Nil (t , err )
332
+ }
333
+
295
334
func TestServiceDiscoveryClient_DeleteEndpoints (t * testing.T ) {
296
- // TODO: Add unit tests
335
+ mockController := gomock .NewController (t )
336
+ defer mockController .Finish ()
337
+
338
+ sdApi := cloudmap .NewMockServiceDiscoveryApi (mockController )
339
+
340
+ sdc := getTestSdClient (t , sdApi )
341
+ sdc .namespaceCache .Add (test .NsName , test .NsId , time .Minute )
342
+ sdc .serviceIdCache .Add (fmt .Sprintf ("%s/%s" , test .NsName , test .SvcName ), test .SvcId , time .Minute )
343
+
344
+ sdApi .EXPECT ().DeregisterInstance (context .TODO (), test .SvcId , test .EndptId1 ).Return (test .OpId1 , nil )
345
+ sdApi .EXPECT ().DeregisterInstance (context .TODO (), test .SvcId , test .EndptId2 ).Return (test .OpId2 , nil )
346
+ sdApi .EXPECT ().ListOperations (context .TODO (), gomock .Any ()).
347
+ Return (map [string ]types.OperationStatus {
348
+ test .OpId1 : types .OperationStatusSuccess ,
349
+ test .OpId2 : types .OperationStatusSuccess }, nil )
350
+
351
+ err := sdc .DeleteEndpoints (context .TODO (), test .NsName , test .SvcName ,
352
+ []* model.Endpoint {{Id : test .EndptId1 }, {Id : test .EndptId2 }})
353
+
354
+ assert .Nil (t , err )
297
355
}
298
356
299
357
func TestServiceDiscoveryClient_getNamespace_HappyCase (t * testing.T ) {
0 commit comments