Пример #1
0
        public void UseECS_returns_private_IPV4_address([Frozen] ECSContainerMetadata metadata, NetTcpEndpointAddress endpointAddress, IConfiguration configuration, Action <ECSContainerMetadataOptions> configureOptions)
        {
            AddFakeContainerMetadataFileKey();

            var newEndpoint = ECSMetadataExtensions.UseECS(endpointAddress, configuration, configureOptions);

            Assert.That(newEndpoint.Host, Is.EqualTo(metadata.HostPrivateIPv4Address));
        }
Пример #2
0
        public void AddECSContainerSupport_configuration_returns_metadata_with_same_if_no_mapping(ServiceCollection services, [Frozen] ECSContainerMetadata containerMetadata, IConfiguration configuration, ServiceEndpoint endpoint, int port, string address)
        {
            AddFakeContainerMetadataFileKey();

            var expectedAddress = new Uri($"http://{containerMetadata.HostPrivateIPv4Address}:{port}/{address}");

            endpoint.Address = new EndpointAddress($"http://localhost:{port}/{address}");

            ECSMetadataExtensions.AddECSContainerSupport(services, configuration);

            var serviceProvider = services.BuildServiceProvider();

            var options = serviceProvider.GetRequiredService <IOptions <AnnouncementServiceOptions> >();

            var result = options.Value.EndpointDiscoveryMetadata(endpoint);

            Assert.That(result.Address.Uri, Is.EqualTo(expectedAddress).IgnoreCase);
        }