< Summary - AsyncResponse (Release / net8.0+net10.0 / unit+integration)

Information
Class: Microsoft.Extensions.DependencyInjection.AsyncResponseRegistrationBuilder
Assembly: AsyncResponse.Core
File(s): /home/runner/work/AsyncResponse/AsyncResponse/src/AsyncResponse.Core/AsyncResponseRegistrationBuilder.cs
Line coverage
100%
Covered lines: 1
Uncovered lines: 0
Coverable lines: 1
Total lines: 24
Line coverage: 100%
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
.ctor(...)100%11100%

File(s)

/home/runner/work/AsyncResponse/AsyncResponse/src/AsyncResponse.Core/AsyncResponseRegistrationBuilder.cs

#LineLine coverage
 1namespace Microsoft.Extensions.DependencyInjection;
 2
 3/// <summary>
 4/// Fluent registration builder returned by <c>AddAsyncResponse()</c>. Chain a <em>channel</em>
 5/// (the response/recovery substrate) and a worker <em>transport</em> (background-job dispatch):
 6/// <code>
 7/// services.AddAsyncResponse()
 8///         .WithInMemoryChannel()      // or .WithRedisChannel(...)
 9///         .WithInMemoryTransport();   // or .WithGooglePubSubTransport(...)
 10/// </code>
 11/// Exactly one channel and exactly one worker transport are required — <c>AddAsyncResponse()</c>
 12/// alone registers neither, and an app that starts without either one fails fast at host startup.
 13/// Background dispatch must be an explicit host-level choice.
 14/// </summary>
 15public sealed class AsyncResponseRegistrationBuilder
 16{
 317    internal AsyncResponseRegistrationBuilder(IServiceCollection services) => Services = services;
 18
 19    /// <summary>
 20    /// The underlying service collection, exposed for backend packages' <c>With…</c> extensions
 21    /// and for advanced manual registrations.
 22    /// </summary>
 23    public IServiceCollection Services { get; }
 24}