< Summary

Information
Class: NexusLabs.Needlr.Generators.Models.DiscoveredHttpClient
Assembly: NexusLabs.Needlr.Generators
File(s): /home/runner/work/needlr/needlr/src/NexusLabs.Needlr.Generators/Models/HttpClients/DiscoveredHttpClient.cs
Line coverage
0%
Covered lines: 0
Uncovered lines: 13
Coverable lines: 13
Total lines: 39
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
.ctor(...)100%210%
get_TypeName()100%210%
get_ClientName()100%210%
get_SectionName()100%210%
get_AssemblyName()100%210%
get_Capabilities()100%210%
get_SourceFilePath()100%210%

File(s)

/home/runner/work/needlr/needlr/src/NexusLabs.Needlr.Generators/Models/HttpClients/DiscoveredHttpClient.cs

#LineLine coverage
 1namespace NexusLabs.Needlr.Generators.Models;
 2
 3/// <summary>
 4/// Information about a discovered named HttpClient options type (from [HttpClientOptions]).
 5/// </summary>
 6internal readonly struct DiscoveredHttpClient
 7{
 8    public DiscoveredHttpClient(
 9        string typeName,
 10        string clientName,
 11        string sectionName,
 12        string assemblyName,
 13        HttpClientCapabilities capabilities,
 14        string? sourceFilePath = null)
 15    {
 016        TypeName = typeName;
 017        ClientName = clientName;
 018        SectionName = sectionName;
 019        AssemblyName = assemblyName;
 020        Capabilities = capabilities;
 021        SourceFilePath = sourceFilePath;
 022    }
 23
 24    /// <summary>Fully qualified type name of the options class (e.g., "global::MyApp.WebFetchHttpClientOptions").</summ
 025    public string TypeName { get; }
 26
 27    /// <summary>The resolved HttpClient name used for <c>services.AddHttpClient("Name", ...)</c>.</summary>
 028    public string ClientName { get; }
 29
 30    /// <summary>The resolved configuration section name (e.g., "HttpClients:WebFetch").</summary>
 031    public string SectionName { get; }
 32
 033    public string AssemblyName { get; }
 34
 35    /// <summary>Which capability interfaces the type implements — drives conditional emission.</summary>
 036    public HttpClientCapabilities Capabilities { get; }
 37
 038    public string? SourceFilePath { get; }
 39}