< Summary

Information
Class: Elsa.Resilience.Extensions.ResilienceServiceCollectionExtensions
Assembly: Elsa.Resilience.Core
File(s): /home/runner/work/elsa-core/elsa-core/src/modules/Elsa.Resilience.Core/Extensions/ResilienceServiceCollectionExtensions.cs
Line coverage
0%
Covered lines: 0
Uncovered lines: 6
Coverable lines: 6
Total lines: 29
Line coverage: 0%
Branch coverage
0%
Covered branches: 0
Total branches: 4
Branch coverage: 0%
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
AddResilienceStrategy(...)0%620%
AddResilienceStrategies(...)0%620%

File(s)

/home/runner/work/elsa-core/elsa-core/src/modules/Elsa.Resilience.Core/Extensions/ResilienceServiceCollectionExtensions.cs

#LineLine coverage
 1using Elsa.Resilience.Options;
 2using Microsoft.Extensions.DependencyInjection;
 3
 4// ReSharper disable once CheckNamespace
 5namespace Elsa.Resilience.Extensions;
 6
 7/// <summary>
 8/// <see cref="IServiceCollection"/> extension methods for registering resilience strategy types
 9/// via <see cref="ResilienceOptions"/>.
 10/// </summary>
 11public static class ResilienceServiceCollectionExtensions
 12{
 13    /// <summary>
 14    /// Registers a resilience strategy type with <see cref="ResilienceOptions"/>.
 15    /// </summary>
 16    public static IServiceCollection AddResilienceStrategy<T>(this IServiceCollection services) =>
 017        services.Configure<ResilienceOptions>(options => options.StrategyTypes.Add(typeof(T)));
 18
 19    /// <summary>
 20    /// Registers multiple resilience strategy types with <see cref="ResilienceOptions"/>.
 21    /// </summary>
 22    public static IServiceCollection AddResilienceStrategies(this IServiceCollection services, IEnumerable<Type> types) 
 023        services.Configure<ResilienceOptions>(options =>
 024        {
 025            foreach (var type in types)
 026                options.StrategyTypes.Add(type);
 027        });
 28}
 29