示例#1
0
        public void FindPathUriByServiceTypeAndPathName(TestServiceType serviceType, string pathName, string expectedUri)
        {
            var provider = new ServiceDiscoveryProvider(GetConfiguration(), ServiceDiscoveryOptions.Default);

            Uri uri = provider.GetPath(serviceType, pathName);

            uri.ToString().Should().Be(expectedUri);
        }
示例#2
0
        public void ThrowExceptionIfServiceOrPathDoesntExist(string serviceName, string pathName)
        {
            var provider = new ServiceDiscoveryProvider(GetConfiguration(), ServiceDiscoveryOptions.Default);

            Action action = () => provider.GetPath(serviceName, pathName);

            action.Should().Throw <ArgumentException>();
        }
示例#3
0
        public void FindServiceUriByType(TestServiceType serviceType, string expectedUri)
        {
            var provider = new ServiceDiscoveryProvider(GetConfiguration(), ServiceDiscoveryOptions.Default);

            Uri uri = provider.GetService(serviceType);

            uri.AbsoluteUri.Should().Be(expectedUri);
        }
示例#4
0
        public void ThrowExceptionIfServiceDoesntExist()
        {
            var provider = new ServiceDiscoveryProvider(GetConfiguration(), ServiceDiscoveryOptions.Default);

            Action action = () => provider.GetService("doesntExist");

            action.Should().Throw <ArgumentException>();
        }
示例#5
0
        public void ThrowExceptionIfServiceTypeWithoutAttribute()
        {
            var provider = new ServiceDiscoveryProvider(GetConfiguration(), ServiceDiscoveryOptions.Default);

            Action action = () => provider.GetService(TestServiceType.WithtoutParameter);

            action.Should().Throw <ArgumentException>();
        }
示例#6
0
        public void FindPathUriByServiceAndPathName(string serviceName, string pathName, string expectedUri, bool allowHost)
        {
            var provider = new ServiceDiscoveryProvider(GetConfiguration(), new ServiceDiscoveryOptions()
            {
                AllowServiceNameAsHost = allowHost
            });

            Uri uri = provider.GetPath(serviceName, pathName);

            uri.ToString().Should().Be(expectedUri);
        }
示例#7
0
        public void FindServiceUriByNameInAnotherSection()
        {
            var provider = new ServiceDiscoveryProvider(
                GetConfiguration(),
                new ServiceDiscoveryOptions()
            {
                SectionName = "ApiServices"
            });

            Uri uri = provider.GetService("ToDos");

            uri.AbsoluteUri.Should().Be("http://localhost:9004/");
        }
示例#8
0
        public void AllowServiceNameAsHost(string serviceName)
        {
            var provider = new ServiceDiscoveryProvider(GetConfiguration(),
                                                        new ServiceDiscoveryOptions()
            {
                AllowServiceNameAsHost = true
            });

            Uri uri = provider.GetService(serviceName);

            uri.Scheme.Should().Be("http");
            uri.Host.Should().Be(serviceName);
            uri.Port.Should().Be(80);
        }