< Summary

Information
Class: Api.ServiceExtension.ApiVersioningServiceCollectionExtensions
Assembly: Api
File(s): /home/runner/work/CleanArchitectureTemplate/CleanArchitectureTemplate/src/Api/ServiceExtension/ApiVersioning.cs
Line coverage
87%
Covered lines: 14
Uncovered lines: 2
Coverable lines: 16
Total lines: 25
Line coverage: 87.5%
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
AddDefaultApiVersioning(...)100%1187.5%

File(s)

/home/runner/work/CleanArchitectureTemplate/CleanArchitectureTemplate/src/Api/ServiceExtension/ApiVersioning.cs

#LineLine coverage
 1using Microsoft.AspNetCore.Mvc;
 2using Microsoft.AspNetCore.Mvc.Versioning;
 3
 4namespace Api.ServiceExtension;
 5
 6public static class ApiVersioningServiceCollectionExtensions {
 17  public static IServiceCollection AddDefaultApiVersioning(this IServiceCollection services) {
 28    services.AddApiVersioning(options => {
 19      options.AssumeDefaultVersionWhenUnspecified = true;
 110      options.DefaultApiVersion = ApiVersion.Default;
 111      options.ApiVersionReader = ApiVersionReader.Combine(
 112          new MediaTypeApiVersionReader("version"),
 113          new HeaderApiVersionReader("X-Version")
 114      );
 115      options.ReportApiVersions = true;
 216    });
 17
 118    services.AddVersionedApiExplorer(setup => {
 019      setup.GroupNameFormat = "'v'VVV";
 020      setup.SubstituteApiVersionInUrl = true;
 121    });
 22
 123    return services;
 124  }
 25}