コード例 #1
0
        public static JobHost GetJobHost(ILoggerFactory loggerFactory, string taskHub = "CommonTestHub", string eventGridKeySettingName = null, string eventGridKeyValue = null, string eventGridTopicEndpoint = null)
        {
            var config = new JobHostConfiguration {
                HostId = "durable-task-host"
            };

            config.ConfigureDurableFunctionTypeLocator(typeof(TestOrchestrations), typeof(TestActivities));
            config.UseDurableTask(new DurableTaskExtension
            {
                HubName = taskHub.Replace("_", ""),
                TraceInputsAndOutputs   = true,
                EventGridKeySettingName = eventGridKeySettingName,
                EventGridTopicEndpoint  = eventGridTopicEndpoint,
            });

            // Mock INameResolver for not setting EnvironmentVariables.
            if (eventGridKeyValue != null)
            {
                config.AddService <INameResolver>(new MockNameResolver(eventGridKeyValue));
            }

            // Performance is *significantly* worse when dashboard logging is enabled, at least
            // when running in the storage emulator. Disabling to keep tests running quickly.
            config.DashboardConnectionString = null;

            // Add test logger
            config.LoggerFactory = loggerFactory;

            var host = new JobHost(config);

            return(host);
        }
        static JobHost GetJobHost(string taskHub = "CommonTestHub")
        {
            var config = new JobHostConfiguration {
                HostId = "durable-task-host"
            };

            config.ConfigureDurableFunctionTypeLocator(typeof(Orchestrations), typeof(Activities));
            config.UseDurableTask(new DurableTaskConfiguration
            {
                HubName = taskHub,
                TraceInputsAndOutputs = true
            });

            var host = new JobHost(config);

            return(host);
        }
コード例 #3
0
        public static JobHost GetJobHost(ILoggerFactory loggerFactory, string taskHub = "CommonTestHub")
        {
            var config = new JobHostConfiguration {
                HostId = "durable-task-host"
            };

            config.ConfigureDurableFunctionTypeLocator(typeof(TestOrchestrations), typeof(TestActivities));
            config.UseDurableTask(new DurableTaskExtension
            {
                HubName = taskHub.Replace("_", ""),
                TraceInputsAndOutputs = true
            });

            // Performance is *significantly* worse when dashboard logging is enabled, at least
            // when running in the storage emulator. Disabling to keep tests running quickly.
            config.DashboardConnectionString = null;

            // Add test logger
            config.LoggerFactory = loggerFactory;

            var host = new JobHost(config);

            return(host);
        }
コード例 #4
0
        public static JobHost GetJobHost(
            ILoggerFactory loggerFactory,
            string taskHub,
            bool enableExtendedSessions,
            string eventGridKeySettingName  = null,
            INameResolver nameResolver      = null,
            string eventGridTopicEndpoint   = null,
            int?eventGridRetryCount         = null,
            TimeSpan?eventGridRetryInterval = null,
            int[] eventGridRetryHttpStatus  = null,
            bool logReplayEvents            = true,
            Uri notificationUrl             = null)
        {
            var config = new JobHostConfiguration {
                HostId = "durable-task-host"
            };

            config.ConfigureDurableFunctionTypeLocator(typeof(TestOrchestrations), typeof(TestActivities));
            var durableTaskExtension = new DurableTaskExtension
            {
                HubName = taskHub.Replace("_", "") + (enableExtendedSessions ? "EX" : ""),
                TraceInputsAndOutputs              = true,
                EventGridKeySettingName            = eventGridKeySettingName,
                EventGridTopicEndpoint             = eventGridTopicEndpoint,
                ExtendedSessionsEnabled            = enableExtendedSessions,
                MaxConcurrentOrchestratorFunctions = 200,
                MaxConcurrentActivityFunctions     = 200,
                LogReplayEvents = logReplayEvents,
                NotificationUrl = notificationUrl,
            };

            if (eventGridRetryCount.HasValue)
            {
                durableTaskExtension.EventGridPublishRetryCount = eventGridRetryCount.Value;
            }

            if (eventGridRetryInterval.HasValue)
            {
                durableTaskExtension.EventGridPublishRetryInterval = eventGridRetryInterval.Value;
            }

            if (eventGridRetryHttpStatus != null)
            {
                durableTaskExtension.EventGridPublishRetryHttpStatus = eventGridRetryHttpStatus;
            }

            config.UseDurableTask(durableTaskExtension);

            // Mock INameResolver for not setting EnvironmentVariables.
            if (nameResolver != null)
            {
                config.AddService <INameResolver>(nameResolver);
            }

            // Performance is *significantly* worse when dashboard logging is enabled, at least
            // when running in the storage emulator. Disabling to keep tests running quickly.
            config.DashboardConnectionString = null;

            // Add test logger
            config.LoggerFactory = loggerFactory;

            var host = new JobHost(config);

            return(host);
        }