< Summary

Information
Class: Spdx3.Model.Software.Classes.SoftwareArtifact
Assembly: Spdx3
File(s): /home/runner/work/Spdx3/Spdx3/Spdx3/Model/Software/Classes/SoftwareArtifact.cs
Line coverage
100%
Covered lines: 8
Uncovered lines: 0
Coverable lines: 8
Total lines: 40
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_AdditionalPurpose()100%11100%
get_ContentIdentifier()100%11100%
get_PrimaryPurpose()100%11100%
get_AttributionText()100%11100%
.ctor()100%11100%
.ctor(...)100%11100%

File(s)

/home/runner/work/Spdx3/Spdx3/Spdx3/Model/Software/Classes/SoftwareArtifact.cs

#LineLine coverage
 1using System.Diagnostics.CodeAnalysis;
 2using System.Text.Json.Serialization;
 3using Spdx3.Model.Core.Classes;
 4using Spdx3.Model.Software.Enums;
 5using Spdx3.Serialization;
 6using Spdx3.Utility;
 7
 8namespace Spdx3.Model.Software.Classes;
 9
 10public abstract class SoftwareArtifact : Artifact
 11{
 12    [JsonPropertyName("software_copyrightText")] [JsonConverter(typeof(SpdxModelConverterFactory))]
 13    public string? CopyrightText;
 14
 15    [JsonPropertyName("software_additionalPurpose")]
 16    [JsonConverter(typeof(SpdxModelConverterFactory))]
 11317    public IList<SoftwarePurpose> AdditionalPurpose { get; } = new List<SoftwarePurpose>();
 18
 19    [JsonPropertyName("software_contentIdentifier")]
 20    [JsonConverter(typeof(SpdxModelConverterFactory))]
 11021    public IList<ContentIdentifier> ContentIdentifier { get; } = new List<ContentIdentifier>();
 22
 23    [JsonPropertyName("software_primaryPurpose")]
 24    [JsonConverter(typeof(SpdxModelConverterFactory))]
 3025    public SoftwarePurpose? PrimaryPurpose { get; set; }
 26
 27    [JsonPropertyName("software_attributionText")]
 28    [JsonConverter(typeof(SpdxModelConverterFactory))]
 11329    public IList<string> AttributionText { get; } = new List<string>();
 30
 31    // protected internal no-parm constructor required for deserialization
 1932    protected internal SoftwareArtifact()
 33    {
 1934    }
 35
 36    [SetsRequiredMembers]
 5237    protected SoftwareArtifact(Catalog catalog, CreationInfo creationInfo) : base(catalog, creationInfo)
 38    {
 5239    }
 40}