< Summary

Information
Class: Spdx3.Model.Security.Classes.ExploitCatalogVulnAssessmentRelationship
Assembly: Spdx3
File(s): /home/runner/work/Spdx3/Spdx3/Spdx3/Model/Security/Classes/ExploitCatalogVulnAssessmentRelationship.cs
Line coverage
100%
Covered lines: 11
Uncovered lines: 0
Coverable lines: 11
Total lines: 45
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
get_CatalogType()100%11100%
get_Exploited()100%11100%
get_Locator()100%11100%
.ctor()100%11100%
.ctor(...)100%11100%

File(s)

/home/runner/work/Spdx3/Spdx3/Spdx3/Model/Security/Classes/ExploitCatalogVulnAssessmentRelationship.cs

#LineLine coverage
 1using System.Diagnostics.CodeAnalysis;
 2using System.Text.Json.Serialization;
 3using Spdx3.Model.Core.Classes;
 4using Spdx3.Model.Core.Enums;
 5using Spdx3.Model.Security.Enums;
 6using Spdx3.Serialization;
 7using Spdx3.Utility;
 8
 9namespace Spdx3.Model.Security.Classes;
 10
 11/// <summary>
 12/// Provides an exploit assessment of a vulnerability.
 13/// See https://spdx.github.io/spdx-spec/v3.0.1/model/Security/Classes/ExploitCatalogVulnAssessmentRelationship/
 14/// </summary>
 15public class ExploitCatalogVulnAssessmentRelationship : VulnAssessmentRelationship
 16{
 17    [JsonPropertyName("security_catalogType")]
 18    [JsonConverter(typeof(SpdxModelConverterFactory))]
 819    public required ExploitCatalogType? CatalogType { get; set; }
 20
 21    [JsonPropertyName("security_exploited")]
 22    [JsonConverter(typeof(SpdxModelConverterFactory))]
 723    public required bool? Exploited { get; set; }
 24
 25    [JsonPropertyName("security_locator")]
 26    [JsonConverter(typeof(SpdxModelConverterFactory))]
 727    public required Uri? Locator { get; set; }
 28
 29    // protected internal no-parm constructor required for deserialization
 30#pragma warning disable CS8618, CS9264
 131    internal ExploitCatalogVulnAssessmentRelationship()
 32    {
 133    }
 34#pragma warning restore CS8618, CS9264
 35
 36    [SetsRequiredMembers]
 37    public ExploitCatalogVulnAssessmentRelationship(Catalog catalog, CreationInfo creationInfo, Element from,
 238        List<Element> to, ExploitCatalogType catalogType, bool exploited, Uri locator) : base(catalog, creationInfo,
 239        RelationshipType.hasAssessmentFor, from, to)
 40    {
 241        CatalogType = catalogType;
 242        Exploited = exploited;
 243        Locator = locator;
 244    }
 45}