< Summary

Class:Azure.ResourceManager.Resources.Models.PolicySku
Assembly:Azure.ResourceManager.Resources
File(s):C:\Git\azure-sdk-for-net\sdk\resources\Azure.ResourceManager.Resources\src\Generated\Models\PolicySku.cs
C:\Git\azure-sdk-for-net\sdk\resources\Azure.ResourceManager.Resources\src\Generated\Models\PolicySku.Serialization.cs
Covered lines:28
Uncovered lines:1
Coverable lines:29
Total lines:93
Line coverage:96.5% (28 of 29)
Covered branches:11
Total branches:12
Branch coverage:91.6% (11 of 12)

Metrics

MethodCyclomatic complexity Line coverage Branch coverage
.ctor(...)-80%50%
.ctor(...)-100%100%
get_Name()-100%100%
get_Tier()-100%100%
Azure.Core.IUtf8JsonSerializable.Write(...)-100%100%
DeserializePolicySku(...)-100%100%

File(s)

C:\Git\azure-sdk-for-net\sdk\resources\Azure.ResourceManager.Resources\src\Generated\Models\PolicySku.cs

#LineLine coverage
 1// Copyright (c) Microsoft Corporation. All rights reserved.
 2// Licensed under the MIT License.
 3
 4// <auto-generated/>
 5
 6#nullable disable
 7
 8using System;
 9
 10namespace Azure.ResourceManager.Resources.Models
 11{
 12    /// <summary> The policy sku. This property is optional, obsolete, and will be ignored. </summary>
 13    public partial class PolicySku
 14    {
 15        /// <summary> Initializes a new instance of PolicySku. </summary>
 16        /// <param name="name"> The name of the policy sku. Possible values are A0 and A1. </param>
 617        public PolicySku(string name)
 18        {
 619            if (name == null)
 20            {
 021                throw new ArgumentNullException(nameof(name));
 22            }
 23
 624            Name = name;
 625        }
 26
 27        /// <summary> Initializes a new instance of PolicySku. </summary>
 28        /// <param name="name"> The name of the policy sku. Possible values are A0 and A1. </param>
 29        /// <param name="tier"> The policy sku tier. Possible values are Free and Standard. </param>
 8830        internal PolicySku(string name, string tier)
 31        {
 8832            Name = name;
 8833            Tier = tier;
 8834        }
 35
 36        /// <summary> The name of the policy sku. Possible values are A0 and A1. </summary>
 15837        public string Name { get; set; }
 38        /// <summary> The policy sku tier. Possible values are Free and Standard. </summary>
 19039        public string Tier { get; set; }
 40    }
 41}

C:\Git\azure-sdk-for-net\sdk\resources\Azure.ResourceManager.Resources\src\Generated\Models\PolicySku.Serialization.cs

#LineLine coverage
 1// Copyright (c) Microsoft Corporation. All rights reserved.
 2// Licensed under the MIT License.
 3
 4// <auto-generated/>
 5
 6#nullable disable
 7
 8using System.Text.Json;
 9using Azure.Core;
 10
 11namespace Azure.ResourceManager.Resources.Models
 12{
 13    public partial class PolicySku : IUtf8JsonSerializable
 14    {
 15        void IUtf8JsonSerializable.Write(Utf8JsonWriter writer)
 16        {
 3217            writer.WriteStartObject();
 3218            writer.WritePropertyName("name");
 3219            writer.WriteStringValue(Name);
 3220            if (Tier != null)
 21            {
 3222                writer.WritePropertyName("tier");
 3223                writer.WriteStringValue(Tier);
 24            }
 3225            writer.WriteEndObject();
 3226        }
 27
 28        internal static PolicySku DeserializePolicySku(JsonElement element)
 29        {
 8830            string name = default;
 8831            string tier = default;
 52832            foreach (var property in element.EnumerateObject())
 33            {
 17634                if (property.NameEquals("name"))
 35                {
 8836                    name = property.Value.GetString();
 8837                    continue;
 38                }
 8839                if (property.NameEquals("tier"))
 40                {
 8841                    if (property.Value.ValueKind == JsonValueKind.Null)
 42                    {
 43                        continue;
 44                    }
 8845                    tier = property.Value.GetString();
 46                    continue;
 47                }
 48            }
 8849            return new PolicySku(name, tier);
 50        }
 51    }
 52}