1- #region Copyright notice and license
1+ #region Copyright notice and license
22
33// Copyright 2019 The gRPC Authors
44//
@@ -52,7 +52,43 @@ public async Task Refresh_HasStarted_HasResult()
5252
5353 // Assert
5454 var result = await tcs . Task . DefaultTimeout ( ) ;
55+
56+ Logger . LogInformation ( $ "Resolver result returned { result . Addresses ! . Count } addresses.") ;
57+
58+ Assert . Greater ( result . Addresses ! . Count , 0 ) ;
59+ foreach ( var address in result . Addresses )
60+ {
61+ Assert . True ( address . Attributes . TryGetValue ( ConnectionManager . HostOverrideKey , out var host ) ) ;
62+ Assert . AreEqual ( "localhost:80" , host ) ;
63+ }
64+ }
65+
66+ [ Test ]
67+ public async Task Refresh_CustomPort_InHostOverride ( )
68+ {
69+ // Arranged
70+ var tcs = new TaskCompletionSource < ResolverResult > ( TaskCreationOptions . RunContinuationsAsynchronously ) ;
71+
72+ var dnsResolver = CreateDnsResolver ( new Uri ( "dns:///localhost:5001" ) ) ;
73+ dnsResolver . Start ( r =>
74+ {
75+ tcs . SetResult ( r ) ;
76+ } ) ;
77+
78+ // Act
79+ dnsResolver . Refresh ( ) ;
80+
81+ // Assert
82+ var result = await tcs . Task . DefaultTimeout ( ) ;
83+
84+ Logger . LogInformation ( $ "Resolver result returned { result . Addresses ! . Count } addresses.") ;
85+
5586 Assert . Greater ( result . Addresses ! . Count , 0 ) ;
87+ foreach ( var address in result . Addresses )
88+ {
89+ Assert . True ( address . Attributes . TryGetValue ( ConnectionManager . HostOverrideKey , out var host ) ) ;
90+ Assert . AreEqual ( "localhost:5001" , host ) ;
91+ }
5692 }
5793
5894 [ Test ]
@@ -298,6 +334,9 @@ public async Task DNS_Port_Works()
298334
299335 Logger . LogInformation ( $ "Address: { address } ") ;
300336 Assert . AreEqual ( specifiedPort , address . EndPoint . Port ) ;
337+
338+ Assert . True ( address . Attributes . TryGetValue ( ConnectionManager . HostOverrideKey , out var host ) ) ;
339+ Assert . AreEqual ( $ "localhost:{ specifiedPort } ", host ) ;
301340 }
302341 }
303342
@@ -331,6 +370,9 @@ public async Task DefaultPort_Localhost_AddressesHaveDefaultPort()
331370
332371 Logger . LogInformation ( $ "Address: { address } ") ;
333372 Assert . AreEqual ( defaultPort , address . EndPoint . Port ) ;
373+
374+ Assert . True ( address . Attributes . TryGetValue ( ConnectionManager . HostOverrideKey , out var host ) ) ;
375+ Assert . AreEqual ( $ "localhost:{ defaultPort } ", host ) ;
334376 }
335377 }
336378
@@ -345,4 +387,4 @@ public TestSystemClock(DateTime utcNow)
345387 }
346388}
347389
348- #endif
390+ #endif
0 commit comments