< Summary

Information
Class: Api.ServiceExtension.ProblemDetailsServiceCollectionExtensions
Assembly: Api
File(s): /home/runner/work/Northwind-Api/Northwind-Api/src/Api/ServiceExtension/ErrorHandling.cs
Line coverage
50%
Covered lines: 12
Uncovered lines: 12
Coverable lines: 24
Total lines: 34
Line coverage: 50%
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
AddDefaultProblemDetails(...)0%6450%

File(s)

/home/runner/work/Northwind-Api/Northwind-Api/src/Api/ServiceExtension/ErrorHandling.cs

#LineLine coverage
 1using Api.Middleware;
 2using Microsoft.AspNetCore.Http.Features;
 3
 4namespace Api.ServiceExtension;
 5
 6public static class ProblemDetailsServiceCollectionExtensions {
 7  //TODO use Hellang
 18  public static IServiceCollection AddDefaultProblemDetails(this IServiceCollection services) {
 29    services.AddProblemDetails(options => {
 110      options.CustomizeProblemDetails = context => {
 011        context.ProblemDetails.Instance =
 012            $"{context.HttpContext.Request.Method} {context.HttpContext.Request.Path}";
 113
 014        context.ProblemDetails.Extensions.TryAdd(
 015            "requestId",
 016            context.HttpContext.TraceIdentifier);
 117
 018        var activity = context.HttpContext
 019            .Features
 020            .Get<IHttpActivityFeature>()?
 021            .Activity;
 122
 023        context.ProblemDetails.Extensions.TryAdd(
 024            "traceId",
 025            activity?.Id);
 126      };
 227    });
 28
 129    services.AddExceptionHandler<GlobalExceptionHandler>();
 130    services.AddProblemDetails();
 31
 132    return services;
 133  }
 34}