< Summary

Information
Class: Spdx3.Model.Core.Classes.SpdxDocument
Assembly: Spdx3
File(s): /home/runner/work/Spdx3/Spdx3/Spdx3/Model/Core/Classes/SpdxDocument.cs
Line coverage
100%
Covered lines: 9
Uncovered lines: 0
Coverable lines: 9
Total lines: 43
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_DataLicense()100%11100%
get_Import()100%11100%
get_NamespaceMap()100%11100%
.ctor()100%11100%
.ctor(...)100%11100%
Accept(...)100%11100%

File(s)

/home/runner/work/Spdx3/Spdx3/Spdx3/Model/Core/Classes/SpdxDocument.cs

#LineLine coverage
 1using System.Diagnostics.CodeAnalysis;
 2using System.Text.Json.Serialization;
 3using Spdx3.Model.Lite;
 4using Spdx3.Model.SimpleLicensing.Classes;
 5using Spdx3.Serialization;
 6using Spdx3.Utility;
 7
 8namespace Spdx3.Model.Core.Classes;
 9
 10/// <summary>
 11///     A collection of SPDX Elements that could potentially be serialized.
 12///     See https://spdx.github.io/spdx-spec/v3.0.1/model/Core/Classes/SpdxDocument/
 13/// </summary>
 14public class SpdxDocument : ElementCollection, ILiteDomainCompliantElement
 15{
 16    [JsonPropertyName("dataLicense")]
 17    [JsonConverter(typeof(SpdxModelConverterFactory))]
 1618    public AnyLicenseInfo? DataLicense { get; set; }
 19
 20    [JsonPropertyName("import")]
 21    [JsonConverter(typeof(SpdxModelConverterFactory))]
 3222    public IList<ExternalMap> Import { get; } = new List<ExternalMap>();
 23
 24    [JsonPropertyName("namespaceMap")]
 25    [JsonConverter(typeof(SpdxModelConverterFactory))]
 3626    public IList<NamespaceMap> NamespaceMap { get; } = new List<NamespaceMap>();
 27
 28    // protected internal no-parm constructor required for deserialization
 29    // ReSharper disable once UnusedMember.Global
 530    protected internal SpdxDocument()
 31    {
 532    }
 33
 34    [SetsRequiredMembers]
 1035    public SpdxDocument(Catalog catalog, CreationInfo creationInfo) : base(catalog, creationInfo)
 36    {
 1037    }
 38
 39    public void Accept(ILiteDomainComplianceVisitor visitor)
 40    {
 341        visitor.Visit(this);
 342    }
 43}