< Summary - Combined Code Coverage

Information
Class: NLightning.Infrastructure.DependencyInjection
Assembly: NLightning.Infrastructure
File(s): /home/runner/work/nlightning/nlightning/src/NLightning.Infrastructure/DependencyInjection.cs
Tag: 36_15743069263
Line coverage
0%
Covered lines: 0
Uncovered lines: 8
Coverable lines: 8
Total lines: 33
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 Crap Score Cyclomatic complexity Line coverage
AddInfrastructureServices(...)100%210%

File(s)

/home/runner/work/nlightning/nlightning/src/NLightning.Infrastructure/DependencyInjection.cs

#LineLine coverage
 1using Microsoft.Extensions.DependencyInjection;
 2
 3namespace NLightning.Infrastructure;
 4
 5using Crypto.Hashes;
 6using Domain.Crypto.Hashes;
 7using Domain.Node.Interfaces;
 8using Domain.Protocol.Interfaces;
 9using Node.Factories;
 10using Protocol.Factories;
 11using Protocol.Services;
 12using Transport.Factories;
 13using Transport.Interfaces;
 14using Transport.Services;
 15
 16public static class DependencyInjection
 17{
 18    public static IServiceCollection AddInfrastructureServices(this IServiceCollection services)
 19    {
 20        // Singleton services (one instance throughout the application)
 021        services.AddSingleton<IChannelIdFactory, ChannelIdFactory>();
 022        services.AddSingleton<IMessageServiceFactory, MessageServiceFactory>();
 023        services.AddSingleton<IPeerServiceFactory, PeerServiceFactory>();
 024        services.AddSingleton<ITcpService, TcpService>();
 025        services.AddSingleton<ISha256, Sha256>();
 026        services.AddSingleton<ITransportServiceFactory, TransportServiceFactory>();
 27
 28        // Transient services (new instance each time requested)
 029        services.AddTransient<IPingPongService, PingPongService>();
 30
 031        return services;
 32    }
 33}