public ServiceModelDiscoveryService(IServiceModelDiscoveryClientWrapper discoveryClient, IChannelFactoryWrapper channelFactory, IBindingFactory bindingFactory, IOptions <ServiceModelDiscoveryOptions> options, ILogger <ServiceModelDiscoveryService> logger)
 {
     _discoveryClient = discoveryClient ?? throw new ArgumentNullException(nameof(discoveryClient));
     _channelFactory  = channelFactory ?? throw new ArgumentNullException(nameof(channelFactory));
     _bindingFactory  = bindingFactory ?? throw new ArgumentNullException(nameof(bindingFactory));
     _logger          = logger ?? throw new ArgumentNullException(nameof(logger));
     _options         = options?.Value ?? throw new ArgumentNullException(nameof(options));
 }
Exemple #2
0
        public void Initialize()
        {
            _fixture               = new Fixture().Customize(new AutoNSubstituteCustomization());
            _teamDatabase          = _fixture.Freeze <ITeamDatabase>();
            _channelFactoryWrapper = _fixture.Freeze <IChannelFactoryWrapper>();
            _personService         = _fixture.Freeze <IPersonService>();

            _sut = _fixture.Create <TeamService>();
        }
Exemple #3
0
        public void Probe_endpoint_cant_be_null([Frozen] IChannelFactoryWrapper channelFactory, [Frozen] NetTcpDiscoveryOptions options, NetTcpDiscoveryAdapterService sut, NetTcpBinding serviceBinding, ITestService testService, IDiscoveryAdapter discoveryAdapter)
        {
            Mock.Get(channelFactory).Setup(p => p.CreateChannel <IDiscoveryAdapter>(It.IsAny <Binding>(), It.IsAny <EndpointAddress>())).Returns(discoveryAdapter);

            Mock.Get(channelFactory).Setup(p => p.CreateChannel <ITestService>(It.IsAny <NetTcpBinding>(), It.IsAny <EndpointAddress>())).Returns(testService);

            options.ProbeEndpoint = null;

            Assert.Throws <ArgumentNullException>(() => sut.Discover <ITestService>(serviceBinding));
        }
Exemple #4
0
        public void No_service_is_discovered_if_adapter_throws([Frozen] IChannelFactoryWrapper channelFactory, NetTcpDiscoveryAdapterService sut, NetTcpBinding serviceBinding, IDiscoveryAdapter discoveryAdapter, Exception error)
        {
            Mock.Get(channelFactory).Setup(p => p.CreateChannel <IDiscoveryAdapter>(It.IsAny <Binding>(), It.IsAny <EndpointAddress>())).Returns(discoveryAdapter);

            Mock.Get(discoveryAdapter).Setup(p => p.Discover(It.IsAny <XmlQualifiedName>())).Throws(error);

            var service = sut.Discover <ITestService>(serviceBinding);

            Assert.That(service, Is.Null);
        }
Exemple #5
0
        public void Discover_uses_channel_factory_wrapper_to_access_adapter([Frozen] IChannelFactoryWrapper channelFactory, [Frozen] NetTcpDiscoveryOptions options, NetTcpDiscoveryAdapterService sut, NetTcpBinding serviceBinding, ITestService testService, IDiscoveryAdapter discoveryAdapter)
        {
            Mock.Get(channelFactory).Setup(p => p.CreateChannel <IDiscoveryAdapter>(It.IsAny <Binding>(), It.IsAny <EndpointAddress>())).Returns(discoveryAdapter);

            Mock.Get(channelFactory).Setup(p => p.CreateChannel <ITestService>(It.IsAny <NetTcpBinding>(), It.IsAny <EndpointAddress>())).Returns(testService);

            _ = sut.Discover <ITestService>(serviceBinding);

            Mock.Get(channelFactory).Verify(p => p.CreateChannel <IDiscoveryAdapter>(It.IsAny <NetTcpBinding>(), It.Is <EndpointAddress>(ea => ea.Uri == options.ProbeEndpoint)));
        }
Exemple #6
0
        public void Discover_returns_a_service_proxy([Frozen] IChannelFactoryWrapper channelFactory, NetTcpDiscoveryAdapterService sut, NetTcpBinding serviceBinding, ITestService testService, IDiscoveryAdapter discoveryAdapter)
        {
            Mock.Get(channelFactory).Setup(p => p.CreateChannel <IDiscoveryAdapter>(It.IsAny <Binding>(), It.IsAny <EndpointAddress>())).Returns(discoveryAdapter);

            Mock.Get(channelFactory).Setup(p => p.CreateChannel <ITestService>(It.IsAny <NetTcpBinding>(), It.IsAny <EndpointAddress>())).Returns(testService);

            var service = sut.Discover <ITestService>(serviceBinding);

            Assert.That(service, Is.Not.Null);
        }
 public TeamService(ITeamDatabase teamDatabase, IChannelFactoryWrapper channelFactoryWrapper)
 {
     _teamDatabase          = teamDatabase;
     _channelFactoryWrapper = channelFactoryWrapper;
 }
Exemple #8
0
        public void Discover_uses_channel_factory_wrapper_to_create_connection_to_service([Frozen] IChannelFactoryWrapper channelFactory, NetTcpDiscoveryAdapterService sut, NetTcpBinding serviceBinding, ITestService testService, IDiscoveryAdapter discoveryAdapter, Uri serviceAddress)
        {
            Mock.Get(channelFactory).Setup(p => p.CreateChannel <IDiscoveryAdapter>(It.IsAny <Binding>(), It.IsAny <EndpointAddress>())).Returns(discoveryAdapter);

            Mock.Get(channelFactory).Setup(p => p.CreateChannel <ITestService>(It.IsAny <NetTcpBinding>(), It.IsAny <EndpointAddress>())).Returns(testService);

            Mock.Get(discoveryAdapter).Setup(p => p.Discover(It.IsAny <XmlQualifiedName>())).Returns(serviceAddress);

            _ = sut.Discover <ITestService>(serviceBinding);

            Mock.Get(channelFactory).Setup(p => p.CreateChannel <ITestService>(serviceBinding, It.Is <EndpointAddress>(ea => ea.Uri == serviceAddress))).Returns(testService);
        }
Exemple #9
0
 public NetTcpDiscoveryAdapterService(IChannelFactoryWrapper channelFactory, IOptions <NetTcpDiscoveryOptions> options, ILogger <NetTcpDiscoveryAdapterService> logger)
 {
     _channelFactory = channelFactory ?? throw new ArgumentNullException(nameof(channelFactory));
     _logger         = logger ?? throw new ArgumentNullException(nameof(logger));
     _options        = options?.Value ?? throw new ArgumentNullException(nameof(options));
 }