< Summary

Information
Class: Intentum.Distributed.DistributedRedisExtensions
Assembly: Intentum.Distributed.Redis
File(s): /home/runner/work/Intentum/Intentum/src/Intentum.Distributed.Redis/DistributedRedisExtensions.cs
Line coverage
0%
Covered lines: 0
Uncovered lines: 13
Coverable lines: 13
Total lines: 31
Line coverage: 0%
Branch coverage
N/A
Covered branches: 0
Total branches: 0
Branch coverage: N/A
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Cyclomatic complexity NPath complexity Sequence coverage
AddIntentumDistributedRedis(...)100%110%
AddIntentumDistributedRedis(...)100%110%

File(s)

/home/runner/work/Intentum/Intentum/src/Intentum.Distributed.Redis/DistributedRedisExtensions.cs

#LineLine coverage
 1using Intentum.Distributed.Locking;
 2using Intentum.Distributed.RateLimiting;
 3using Intentum.Distributed.Redis;
 4using Microsoft.Extensions.DependencyInjection;
 5using StackExchange.Redis;
 6
 7namespace Intentum.Distributed;
 8
 9public static class DistributedRedisExtensions
 10{
 11    public static IServiceCollection AddIntentumDistributedRedis(
 12        this IServiceCollection services,
 13        string connectionString)
 014    {
 015        var multiplexer = ConnectionMultiplexer.Connect(connectionString);
 016        services.AddSingleton<IConnectionMultiplexer>(multiplexer);
 017        services.AddSingleton<IDistributedLock, RedisDistributedLock>();
 018        services.AddSingleton<IDistributedRateLimiter, RedisDistributedRateLimiter>();
 019        return services;
 020    }
 21
 22    public static IServiceCollection AddIntentumDistributedRedis(
 23        this IServiceCollection services,
 24        IConnectionMultiplexer multiplexer)
 025    {
 026        services.AddSingleton(multiplexer);
 027        services.AddSingleton<IDistributedLock, RedisDistributedLock>();
 028        services.AddSingleton<IDistributedRateLimiter, RedisDistributedRateLimiter>();
 029        return services;
 030    }
 31}