< Summary

Information
Line coverage
0%
Covered lines: 0
Uncovered lines: 8
Coverable lines: 8
Total lines: 19
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
<Main>$(...)100%210%

File(s)

/home/runner/work/needlr/needlr/src/Examples/MultiProjectApp/MultiProjectApp.ConsoleApp/Program.cs

#LineLine coverage
 1using Microsoft.Extensions.DependencyInjection;
 2using NexusLabs.Needlr.Injection;
 3using NexusLabs.Needlr.Injection.SourceGen;
 4using MultiProjectApp.Features.Notifications;
 5using MultiProjectApp.Features.Reporting;
 6
 7// All plugins from Bootstrap and the feature projects are discovered via the source-generated
 8// TypeRegistry. Each referenced assembly's module initializer registers its types at startup.
 09var provider = new Syringe()
 010    .UsingSourceGen()
 011    .BuildServiceProvider();
 12
 013var notifier = provider.GetRequiredService<INotificationService>();
 014var reporter = provider.GetRequiredService<IReportService>();
 15
 016notifier.Send("team@example.com", "MultiProjectApp is running.");
 17
 018var report = reporter.Generate("Startup Report", ["Notifications: OK", "Reporting: OK"]);
 019Console.WriteLine(report);

Methods/Properties

<Main>$(System.String[])