コード例 #1
0
 internal async Task IsServiceHealthy_ReturnTrue_Test()
 {
     var context = new ServiceManagerContext
     {
         ServiceEndpoints = new ServiceEndpoint[] { new ServiceEndpoint(_testConnectionString) }
     };
     var factory        = new TestRestClientFactory(UserAgent, HttpStatusCode.OK);
     var serviceManager = new ServiceManager(context, factory);
     var actual         = await serviceManager.IsServiceHealthy(default);
コード例 #2
0
        internal void GenerateClientEndpointTest(string appName, string expectedClientEndpoint)
        {
            var context = new ServiceManagerContext
            {
                ApplicationName  = appName,
                ServiceEndpoints = new ServiceEndpoint[] { new ServiceEndpoint(_testConnectionString) }
            };
            var manager        = new ServiceManager(context, new RestClientFactory(UserAgent));
            var clientEndpoint = manager.GetClientEndpoint(HubName);

            Assert.Equal(expectedClientEndpoint, clientEndpoint);
        }
コード例 #3
0
        internal void GenerateClientEndpointTestWithClientEndpoint()
        {
            var options = new ServiceManagerOptions
            {
                ConnectionString = $"Endpoint=http://localhost;AccessKey=ABC;Version=1.0;ClientEndpoint=https://remote"
            };

            var context = new ServiceManagerContext();

            context.SetValueFromOptions(options);
            var manager        = new ServiceManager(context, new RestClientFactory(UserAgent));
            var clientEndpoint = manager.GetClientEndpoint(HubName);

            Assert.Equal("https://remote/client/?hub=signalrbench", clientEndpoint);
        }
コード例 #4
0
        internal void GenerateClientAccessTokenTest(string userId, Claim[] claims, string appName)
        {
            var context = new ServiceManagerContext
            {
                ApplicationName  = appName,
                ServiceEndpoints = new ServiceEndpoint[] { new ServiceEndpoint(_testConnectionString) }
            };
            var manager     = new ServiceManager(context, new RestClientFactory(UserAgent));
            var tokenString = manager.GenerateClientAccessToken(HubName, userId, claims, _tokenLifeTime);
            var token       = JwtTokenHelper.JwtHandler.ReadJwtToken(tokenString);

            string expectedToken = JwtTokenHelper.GenerateExpectedAccessToken(token, GetExpectedClientEndpoint(appName), AccessKey, claims);

            Assert.Equal(expectedToken, tokenString);
        }
コード例 #5
0
        internal async Task CreateServiceHubContextTest(ServiceTransportType serviceTransportType, bool useLoggerFacory, string appName, int connectionCount)
        {
            var context = new ServiceManagerContext
            {
                ServiceTransportType = serviceTransportType,
                ApplicationName      = appName,
                ConnectionCount      = connectionCount,
                ServiceEndpoints     = new ServiceEndpoint[] { new ServiceEndpoint(_testConnectionString) }
            };
            var serviceManager = new ServiceManager(context, new RestClientFactory(UserAgent));

            using (var loggerFactory = useLoggerFacory ? (ILoggerFactory) new LoggerFactory() : NullLoggerFactory.Instance)
            {
                var hubContext = await serviceManager.CreateHubContextAsync(HubName, loggerFactory);
            }
        }