< Summary - Kestrun — Combined Coverage

Information
Class: Kestrun.Certificates.SelfSignedOptions
Assembly: Kestrun
File(s): /home/runner/work/Kestrun/Kestrun/src/CSharp/Kestrun/Certificates/SelfSignedOptions.cs
Tag: Kestrun/Kestrun@0d738bf294e6281b936d031e1979d928007495ff
Line coverage
100%
Covered lines: 9
Uncovered lines: 0
Coverable lines: 9
Total lines: 26
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

Coverage history

Coverage history 0 25 50 75 100 11/19/2025 - 02:25:56 Line coverage: 100% (9/9) Total lines: 26 Tag: Kestrun/Kestrun@98ff905e5605a920343154665980a71211a03c6d

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
.ctor(...)100%11100%
get_DnsNames()100%11100%
get_KeyType()100%11100%
get_KeyLength()100%11100%
get_Purposes()100%11100%
get_ValidDays()100%11100%
get_Ephemeral()100%11100%
get_Exportable()100%11100%

File(s)

/home/runner/work/Kestrun/Kestrun/src/CSharp/Kestrun/Certificates/SelfSignedOptions.cs

#LineLine coverage
 1using Org.BouncyCastle.Asn1.X509;
 2
 3namespace Kestrun.Certificates;
 4
 5/// <summary>
 6/// Options for creating a self-signed certificate.
 7/// </summary>
 8/// <param name="DnsNames">The DNS names to include in the certificate's Subject Alternative Name (SAN) extension.</para
 9/// <param name="KeyType">The type of cryptographic key to use (RSA or ECDSA).</param>
 10/// <param name="KeyLength">The length of the cryptographic key in bits.</param>
 11/// <param name="Purposes">The key purposes (Extended Key Usage) for the certificate.</param>
 12/// <param name="ValidDays">The number of days the certificate will be valid.</param>
 13/// <param name="Ephemeral">If true, the certificate will not be stored in the Windows certificate store.</param>
 14/// <param name="Exportable">If true, the private key can be exported from the certificate.</param>
 15/// <remarks>
 16/// This record is used to specify options for creating a self-signed certificate.
 17/// </remarks>
 1218public record SelfSignedOptions(
 2419    IEnumerable<string> DnsNames,
 2420    KeyType KeyType = KeyType.Rsa,
 1221    int KeyLength = 2048,
 1222    IEnumerable<KeyPurposeID>? Purposes = null,
 1223    int ValidDays = 365,
 1224    bool Ephemeral = false,
 1225    bool Exportable = false
 1226    );