< Summary

Information
Class: Spdx3.Model.ExpandedLicensing.Classes.License
Assembly: Spdx3
File(s): /home/runner/work/Spdx3/Spdx3/Spdx3/Model/ExpandedLicensing/Classes/License.cs
Line coverage
100%
Covered lines: 17
Uncovered lines: 0
Coverable lines: 17
Total lines: 68
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_LicenseText()100%11100%
get_IsDeprecatedLicenseId()100%11100%
get_IsFsfLibre()100%11100%
get_IsOsiApproved()100%11100%
get_LicenseXml()100%11100%
get_ObsoletedBy()100%11100%
get_SeeAlso()100%11100%
get_StandardLicenseHeader()100%11100%
get_StandardLicenseTemplate()100%11100%
.ctor()100%11100%
.ctor(...)100%11100%
Validate()100%11100%

File(s)

/home/runner/work/Spdx3/Spdx3/Spdx3/Model/ExpandedLicensing/Classes/License.cs

#LineLine coverage
 1using System.Diagnostics.CodeAnalysis;
 2using System.Text.Json.Serialization;
 3using Spdx3.Model.Core.Classes;
 4using Spdx3.Serialization;
 5using Spdx3.Utility;
 6
 7namespace Spdx3.Model.ExpandedLicensing.Classes;
 8
 9/// <summary>
 10/// Abstract class for the portion of an AnyLicenseInfo representing a license.
 11/// </summary>
 12public abstract class License : ExtendableLicense
 13{
 14    [JsonPropertyName("simplelicensing_licenseText")]
 15    [JsonConverter(typeof(SpdxModelConverterFactory))]
 74216    public required string LicenseText { get; set; }
 17
 18    [JsonPropertyName("expandedlicensing_isDeprecatedLicenseId")]
 19    [JsonConverter(typeof(SpdxModelConverterFactory))]
 4620    public bool? IsDeprecatedLicenseId { get; set; }
 21
 22    [JsonPropertyName("expandedlicensing_isFsfLibre")]
 23    [JsonConverter(typeof(SpdxModelConverterFactory))]
 14124    public bool? IsFsfLibre { get; set; }
 25
 26    [JsonPropertyName("expandedlicensing_isOsiApproved")]
 27    [JsonConverter(typeof(SpdxModelConverterFactory))]
 14128    public bool? IsOsiApproved { get; set; }
 29
 30    [JsonPropertyName("expandedlicensing_licenseXml")]
 31    [JsonConverter(typeof(SpdxModelConverterFactory))]
 1432    public string? LicenseXml { get; set; }
 33
 34    [JsonPropertyName("expandedlicensing_obsoletedBy")]
 35    [JsonConverter(typeof(SpdxModelConverterFactory))]
 1436    public string? ObsoletedBy { get; set; }
 37
 38    [JsonPropertyName("expandedlicensing_seeAlso")]
 39    [JsonConverter(typeof(SpdxModelConverterFactory))]
 143840    public List<Uri> SeeAlso { get; set; } = [];
 41
 42    [JsonPropertyName("expandedlicensing_standardLicenseHeader")]
 43    [JsonConverter(typeof(SpdxModelConverterFactory))]
 10644    public string? StandardLicenseHeader { get; set; }
 45
 46    [JsonPropertyName("expandedlicensing_standardLicenseTemplate")]
 47    [JsonConverter(typeof(SpdxModelConverterFactory))]
 70748    public string? StandardLicenseTemplate { get; set; }
 49
 50    /// <summary>
 51    /// No-arg constructor required for serialization/deserialization
 52    /// </summary>
 69553    protected internal License()
 54    {
 69555    }
 56
 57    [SetsRequiredMembers]
 2858    protected License(Catalog catalog, CreationInfo creationInfo, string licenseText) : base(catalog, creationInfo)
 59    {
 2860        LicenseText = licenseText;
 2861    }
 62
 63    public override void Validate()
 64    {
 665        base.Validate();
 666        ValidateRequiredProperty(nameof(LicenseText));
 667    }
 68}